The Apple Geek

Чему ты научился сегодня?

Готовимся анализировать сетевой трафик при помощи Wireshark

Одним из полезнейших инструментов для исследования сетевого трафика является Wireshark. Это кроссплатформенная программа, доступная для MacOS X в частности и для Unix в общем, для Windows. Консольную часть я даже видел на сетевом оборудовании под управлением какого-то проприетарного диалекта Unix. Кроссплатформенность - это огромное достоинство, но для MacOS оно же является и недостатком - для запуска GUI требуется X Window (я его ставлю всегда, но некоторым придётся доставать диски с дистрибутивом MacOS X и его доставлять), и интерфейс программы вызывает отнюдь не самые тёплые эмоции (с внешним видом можно смириться, но есть проблемы с копированием, отработкой клавиатурных комбинаций и прочие мелочи, не дающие нормально работать). Поэтому для MacOS (да и для других Unix) я использую консольную часть, в основном это tshark.

Wireshark даёт много возможностей, перечислю их без перевода:

  • Deep inspection of hundreds of protocols, with more being added all the time
  • Live capture and offline analysis
  • Standard three-pane packet browser
  • Multi-platform: Runs on Windows, Linux, OS X, Solaris, FreeBSD, NetBSD, and many others
  • Captured network data can be browsed via a GUI, or via the TTY-mode TShark utility
  • The most powerful display filters in the industry
  • Rich VoIP analysis
  • Read/write many different capture file formats: tcpdump (libpcap), Pcap NG, Catapult DCT2000, Cisco Secure IDS iplog, Microsoft Network Monitor, Network General Sniffer® (compressed and uncompressed), Sniffer® Pro, and NetXray®, Network Instruments Observer, NetScreen snoop, Novell LANalyzer, RADCOM WAN/LAN Analyzer, Shomiti/Finisar Surveyor, Tektronix K12xx, Visual Networks Visual UpTime, WildPackets EtherPeek/TokenPeek/AiroPeek, and many others
  • Capture files compressed with gzip can be decompressed on the fly
  • Live data can be read from Ethernet, IEEE 802.11, PPP/HDLC, ATM, Bluetooth, USB, Token Ring, Frame Relay, FDDI, and others (depending on your platform)
  • Decryption support for many protocols, including IPsec, ISAKMP, Kerberos, SNMPv3, SSL/TLS, WEP, and WPA/WPA2
  • Coloring rules can be applied to the packet list for quick, intuitive analysis
  • Output can be exported to XML, PostScript®, CSV, or plain text

Например, с помощью Wireshark параноики могут убедиться, что Adium при работе с Google Talk по протоколу Jabber не передаёт пароли в открытом виде и для обмена использует шифрование xmpp-tls, а именно TLSv1 TLS_RSA_WITH_RC4_128_SHA:

Jabber XML Messaging    to='gmail.com'    xmlns='jabber:client'    xmlns:stream='http://etherx.jabber.org/streams'    version='1.0'        from="gmail.com"        id="..."        version="1.0"        xmlns:stream="http://etherx.jabber.org/streams"        xmlns="jabber:client"xmlns="urn:ietf:params:xml:ns:xmpp-tls"xmlns="urn:ietf:params:xml:ns:xmpp-sasl"X-GOOGLE-TOKENxmlns='urn:ietf:params:xml:ns:xmpp-tls'xmlns="urn:ietf:params:xml:ns:xmpp-tls"Secure Socket LayerVersion: TLS 1.0 (0x0301)Handshake Protocol: Client Hello    Handshake Type: Client Hello (1)    Version: TLS 1.0 (0x0301)Handshake Protocol: Server HelloHandshake Type: Server Hello (2)    Version: TLS 1.0 (0x0301)    Cipher Suite: TLS_RSA_WITH_RC4_128_SHA (0x0005)    Compression Method: null (0)

Я планирую написать несколько статей о детальном исследовании трафика, но для начала расскажу, как установить Wireshark (с другой стороны, если Вы добрались до этой фразы, то поставить Wireshark можете без малейшей моей помощи ;-).

Списать установочный образ можно списать с сайта Wireshark. Берём образ “OS X 10.5 (Leopard) Intel.dmg” (40 MB)

Как я сказал выше, нужно обязательно иметь установленную поддержку подсистемы X Window (это XQuartz или же X11.app). Она может уже у вас стоять, но если Wireshark не будет запускаться, то нужно будет поставить X11 с дистрибутива MacOS X.

  1. Перетаскиваем Wireshark в Applications.
  2. Открывем Utility, в нём будут такие файлы:

  3. Перетащить содержимое каталога “Command Line” в $HOME/bin, /usr/local/bin, /usr/sbin или же в другой каталог, который есть в $PATH. Я расположил утилиты в /usr/sbin. Этот каталог недоступен через Finder, в него нужно явно перейти, используя меню Finder “Go/Go to Folder…”.

  4. Для решения вопроса с доступом к устройствам захвата трафика /dev/bpf* перетащить каталог ChmodBPF на алиас StartupItems.
  5. Программа установлена. Это только начало серии. В следующих статьях я приведу примеры захвата и анализа сетевого трафика на Вашем Маке.

    Сайт программы: Wireshark.

Comments