Программное обеспечение Wireshark представляет собой довольно известный и продвинутый инструмент для отслеживания сетевого трафика.

Программа одинаково корректно работает в среде многих операционных систем, включая Windows, UNIX, Linux, Mac OS, Free BSD, Solaris, Open BSD, Net BSD и т. д. Сами по себе приложения такого типа иногда называют снифферами.

Данная программа позволяет достаточно легко отследить трафик с использованием множества сетевых протоколов типа DNS, FDDI, FTP, HTTP, ICQ, IPV6, IPX, IRC, MAPI, MOUNT, NETBIOS, NFS, NNTP, POP, PPP, TCP, TELNET, X25 и т. п.

Для того, чтобы использовать программу наиболее полно, особыми знаниями, как думаю многие пользователи, обладать совершенно не нужно. Но обо всем по порядку.

Начнем с того, что большинство локальных сетей домашнего или офисного типа построены на использовании устройств, называемых хабами или концентраторов.

В то же время, некоторые сети подразумевают использование свитчей или маршрутизаторов. Данное программное обеспечение предназначено именно для первого случая, поскольку во втором случае эффективности вы просто не добьетесь.

Как пользоваться Wireshark

Итак, для запуска программы потребуются права доступа типа ROOT, ибо только с такими правами можно получить полный доступ ко всем сетевым интерфейсам. Сам старт программы можно произвести как в обычном режиме, так и из командной строки.

После этого можно запускать основное приложение.

После старта программы появится окно, в котором необходимо ввести логин и пароль с подтверждением доступа.

Сам процесс работы с программой довольно прост

Для запуска перехвата сетевых пакетов нужно просто зайти в главное меню, а именно Menu/Capture Options, а затем в поле Interface выбрать необходимый интерфейс и нажать кнопку Start.

Вот собственно и все.

Естественно, можно воспользоваться и дополнительными настройками, представленными в этом окне.

К примеру, можно воспользоваться опциями задержки, лимитированием пакетов, имеющих определенный размер, который не может быть превышен при анализе. Однако, если вы не уверены в необходимости использования тех или иных настроек, лучше оставить все, как есть.

Многим пользователям это подойдет наилучшим образом, поскольку, настройки по умолчания представлены таким образом, чтобы обеспечить наиболее приемлемый режим работы для каждого сетевого интерфейса.

Для окончания процесса отслеживания приема и передачи сетевых пакетов достаточно нажать кнопку Stop, после чего на экране отобразится полная информация о проведенном процессе, причем отображение производится с использованием графического режима, что является довольно удобным.

По большому счету, по окончании всего процесса файл отчета можно сохранить для последующего анализа или обработки.

Уникальность этого программного продукта заключается еще и в том, что он, хоть он и имеет собственный протокол, однако, может отслеживать данные с использованием отличных от основного протоколов. Это касается не только обмена пакетами внутри самой локальной сети, но и применяется для контроля Интернет-трафика. Естественно, имеется довольно гибкая система сортировки полученных данных с поиском необходимого элемента. Достаточно, просто воспользоваться этими функциями в результатах отчета.

Собственно, ничего сложного в этом нет. Напоследок заметим, что формирования графического интерфейса используется универсальная библиотека GTK+, что и позволяет быстро и удобно обрабатывать входные данные множества форматов.

Wireshark - это достаточно известный инструмент для захвата и , фактически стандарт как для образования, так и для траблшутинга.Wireshark работает с подавляющим большинством известных протоколов, имеет понятный и логичный графический интерфейс на основе GTK+ и мощнейшую систему фильтров. Кроссплатформенный, работает в таких ОС как Linux, Solaris, FreeBSD, NetBSD, OpenBSD, Mac OS X, и, естественно, Windows. Распространяется под лицензией GNU GPL v2. Доступен бесплатно на сайтеwireshark.org .

Установка в системе Windows тривиальна - next, next, next. Самая свежая на момент написания статьи версия – 1.10.3, она и будет участвовать в обзоре.

Зачем вообще нужны анализаторы пакетов?

Для того чтобы проводить исследования сетевых приложений и протоколов, а также, чтобы находить проблемы в работе сети, и, что важно, выяснять причины этих проблем.

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

Начинаем плаванье

Для начала захвата достаточно выбрать свой сетевой интерфейс и нажать Start.

После чего и начнется процесс захвата, причем прилетевшие пакеты будут появляться в реальном времени. В процессе рассмотрения и изучения пакетов бывают ситуации, когда нужно вернуться предыдущему пакету. Для этого есть две кнопки (см скриншот).

А следующая за ними кнопка позволяет сделать быстрый переход к пакету, указав его номер.

В случае если колонки перекрываются и наползают друг на друга, можно кликнуть по такой колонке правой кнопкой мыши и выбрать“Resize Column” . Произойдет автоматическая подгонка размеров под текущую ситуацию. И кроме того, есть кнопка“Resize all Columns” , которая приведет в порядок все колонки.

Используя менюView – Time Display Format , можно, например, настроить, чтобы отсчет времени шел не с начала захвата, а с момента получения предыдущего пакета (Since Previous Captured Packet ). Самое важное в каждой программе (Help – About Wireshark ) покажет не только версию и список авторов, но и содержит закладкуFolders , которая покажет пути размещения каталогов с конфигурациями.

Изучая интерфейс, можно выбрать, например, пакет http , и увидеть, что HTTP инкапсулируется в TCP (транспортный уровень) , TCP инкапсулируется в IP (сетевой уровень) , а IP в свою очередь инкапсулируется в Ethernet (перед этим даже мелькает 802.1Q).

И на самом верху идет нечто вроде небольшого обзора собранной информации о кадре.

Про фильтры мы поговорим дальше, а на данном этапе, если нужно быстро отфильтровать лишние пакеты, достаточно сделать правый клик на пакете, выбрать менюApply as Filter – Not selected и изменения сразу же вступят в силу. Если нужно еще что-то убрать, то в следующий раз выбирать“and not Selected” , и новое правило просто добавится к фильтру.

Убираем заусенцы

Довольно часто при работе с Wireshark возникает ошибкаIP checksum offload – ошибка контрольной суммы заголовка IP пакета.

Современные сетевые карты насколько умные, что сами считают контрольную сумму, зачем это делать на уровне стека TCP/IP программно, если можно делать хардварно. А Wireshark натурально перехватывает пакеты, до того как они попадают в сеть. И до того как эта сумма была просчитана и была добавлена в заголовок пакета. Соответственно есть два пути решения этой проблемы - выключать функцию offload в настройках сетевой карты или в настройках сниффера указать, чтобы он не обращал внимание на это значение.

Хардваные функции зачастую лучше софтварных, в основном из-за скорости обработки (в железе обычно выше) поэтому лучше изменить настройки самого сниффера. Для этого нужно зайти в настройки (Edit - Preferences ), затем Protocols – IPv4 – и снять флаг с“Validate IPv4 checksum if possible” .

Перед тем как захватывать трафик нужно определиться с тем, что, собственно, нужно захватывать. Разместить анализатор трафика можно в нескольких местах:

  • Локально на своем хосте;
  • Организовать зеркалирование трафика на коммутаторе;
  • Подключаться непосредственно в интересующие места;
  • или же отравление протокола ARP (еще более незаконно, чем пассивное прослушивание трафика)

Фильтруем поток

Wireshark содержит два вида фильтров – захвата (Capture Filters ) и отображения (Display Filters ).
Вначале рассмотримCapture Filters .
Как можно догадаться по названию, они служат для фильтрации еще на этапе захвата трафика. Но в таком случае, безусловно, можно безвозвратно потерять часть нужного трафика.

Фильтр представляет собой выражение, состоящее из встроенных значений, которые при необходимости могут объединяться логическими функциями (and, or, not). Для того, чтобы его задействовать, нужно зайти в менюСapture , затемOptions , и в полеCapture Filter набрать, например,host 8.8.8.8 (или, например,net 192.168.0.0./24 )

Так же, конечно, можно выбрать и заранее созданный фильтр (за это отвечает кнопка Capture Filter ). В любом из вариантов фильтр появится возле интерфейса, можно жать Start. Теперь перейдем кDisplay Filters . Они фильтруют исключительно уже захваченный трафик.

Что можно фильтровать?

Практически все - протоколы, адреса, специфические поля в протоколах.
Операции, которые можно использовать при построении фильтров:

Как вы, наверное, заметили, в таблице в качестве примеров были разнообразные выражения, достаточно понятные и зачастую говорящие сами за себя. Например, ip.dst – это поле протокола IP.

Чтобы увидеть это поле, можно просто посмотреть на пакет, и в нижней части окна можно увидеть его значение, которое потом можно применять в любом фильтре. Например, нас интересует, как создать фильтр, где будет проверяться значение TTL.
Для этого раскрываем L3 часть и становимся на соответствующее поле:

И видим, что для построения фильтра, нужно использовать выражение ip.ttl. Если начать набирать фильтр, то после точки автоматически появится список возможных значений:

Чтобы применить фильтр, достаточно нажать enter или кнопку Apply. Само поле для ввода фильтра может менять цвет в зависимости от того, что было набрано.

Зеленый цвет означает, что все в порядке. Красный - допущена ошибка, желтый - получен неожиданный результат, потому что существуют другие варианты написания фильтра (например можно написатьip.dst != 8.8.8.8 или же!ip.dst == 8.8.8.8 , именно второй вариант более предпочтительный). Фильтры можно сохранять для дальнейшего использования, нажав кнопку Save, затем ввести произвольное название

и после нажатия на кнопку ОК фильтр появится как кнопка на панели.

А если кликнуть на расположенную неподалеку кнопку «Expression…», то откроется достаточно мощный конструктор выражений, по которому можно чуть ли не изучать сетевые протоколы. Количество поддерживаемых протоколов постоянно увеличивается.

Как уже упоминалось ранее, можно выделить любой пакет и в контекстном меню выбратьApply as Filter и в подменю выбрать режим -selected илиnot selected и соответственно сразу же появится фильтр, который будет показывать только выбранное или наоборот уберет выбранное с экрана. Таким образом можно гибко выбирать, что видеть на экране, а что - нет. Это может быть определенный ip-адрес, ttl, порт, dns ответ и многое другое. Кроме того, есть два варианта для таких быстрых фильтров - Prepare as Filter и Apply as Filter.

Как можно догадаться по названию - разница заключается в том, что в первом случае только появится в поле для ввода Display Filter, но не применится (удобно, если например, добавлять таким способом несколько фильтров, а затем сразу применить готовый результат), а во втором - сразу же и применится.

Фильтры можно объединять, используя знакомые по булевой алгебре логические операции: (dns) && (http) логическое и (dns) || (http) это логическое или.

Таким образом можно строить большие и сложные фильтры вроде: (tcp.flags.syn==1) && (ip.src == 172.16.10.2) && (ip.dst == 172.16.10.1) Здесь видим, что выбираются только TCP SYN сегменты, только с определенным адресом отправителя и получателя. При составлении больших фильтров нужно помнить, что фильтр по сути - логическое выражение, и если оно истинно, то пакет отобразится на экране, если ложно - нет.

Ныряем глубже

Достаточно частая ситуация, когда возникают жалобы на медленную работу сети, причин этого может быть множество. Попробуем разобраться, в чем может быть причина, и рассмотрим два способа. Первый состоит в добавлении колонкиTCP delta .

Открываем пакет, находим полеTime since previous frame in this TCP frame , правый клик и выбираемApply as Column . Появится новая колонка. На ней можно кликнуть правой кнопкой мыши и выбрать режим сортировки, например,Sort Descending .

И сразу же рассмотрим второй способ.

Относительно недавно (в версии 1.10.0) появился фильтр tcp.time_delta, который, собственно, учитывает время с момента последнего запроса.

Если клиент делает запрос и получает ответ через 10 миллисекунд, и клиент говорит, что у него все медленно работает, то, возможно, проблема у самого клиента.
Если же клиент делает запрос и получает ответ через 2-3 секунды, тут уже, возможно, проблема кроется в сети.

Еще глубже

Если посмотреть в TCP пакет (или сегмент если быть точным), то можно увидеть тамStream index , который начинается обычно с нуля. Само поле будет называться tcp.stream.

По нему можно сделать правый клик и создать фильтр.

Таким образом можно фильтровать нужные соединения.

Еще один способ – сделать правый клик на самом пакете, выбратьConversation Filter и создать фильтр для l2 l3 l4 уровня соответственно.

В итоге мы опять увидим взаимодействие двух хостов.

И третий вариант - это одна из самых интересных фич -Follow TCP Stream . Для того чтобы его задействовать, нужно опять таки кликнуть правой кнопкой мыши на пакете и выбрать“Follow TCP Stream” . Появится окно, где будет наглядно продемонстрирован весь обмен между двумя узлами.

Если же зайти в менюStatistics – Conversations , то, выбирая закладки, можно увидеть статистику по таким “разговорам” и различные сессии, при этом можно отсортировать их по различным колонкам, например, по количеству переданных данных.

И прямо в этом окне можно правой кнопкой взывать контекстное меню и опять же применить как фильтр.

Со временем приходит опыт

После некоторого времени, проведенного за захватом разнообразного трафика, можно заметить какую-то шарообразную кнопку в нижнем левом углу, которая еще иногда меняет цвет.

Нажатие на эту кнопку приведет к открытию окнаExpert Infos . Того же результата можно добиться, пройдя в менюAnalyze – Expert Info .

В этом окне будет содержаться информация по найденным пакетам, разбитая на группы Errors, Warnings, Notes и Chats. Цветовая раскраска для этих групп выглядит следующим образом:
Ошибки - красный цвет
Предупреждения - желтый
Примечания - сине-зелёный (cyan)
Чат - серый

Wireshark содержит в себе мощный анализатор и умеет автоматически обнаруживать большое количество проблем, возникающих в сети. Как вы уже могли заметить, буквально везде можно использовать фильтры и Expert Info не является исключением. Для того чтобы создать такой фильтр, нужно использовать конструкциюexpert.severity . Например,expert.severity==error .

Грабим трафик!

Можно ли с помощью Wireshark узнать, что было скачано?

Да, можно. И сейчас это увидим. Вначале возьмем HTTP трафик. Сделаем правый клик по HTTP пакету -Protocol Preferences – и видим тут массу опций, которые непосредственно влияют на извлечение файлов из веб трафика. Для того чтобы увидеть, что можно извлечь из текущего дампа нужно перейти в менюFile – Export Objects – HTTP .

Появится окно, которое покажет все захваченные http объекты - текстовые файлы, картинки и т.д. Для того чтобы вытащить любой файл из этого списка, достаточно просто выделить его и нажать Save As.

Как можно заметить, рисунок был извлечен без каких-либо проблем.

Таким же способом, можно извлекать и потоковое видео/аудио.

Но на этом возможности Wireshark не заканчиваются!

Он умеет вытаскивать файлы и с протокола FTP. Для этого можно использовать знакомый уже Follow TCP Stream. В итоге отобразится только обмен по протоколу FTP, в котором нужно будет найти строку RETR, что собственно и будет означать передачу файла.

VoIP

Wireshark имеет несколько встроенных функций для работы с этой технологией. Он поддерживает массу голосовых протоколов - SIP, SDP, RTSP, H.323, RTCP, SRTP и другие. И, конечно же, умеет перехватывать и сохранять голосовой трафик для дальнейшего прослушивания.

Этот функционал как нельзя лучше подойдет для траблшутинга в сетях Voice over IP. МенюStatistics - Flow Graph покажет наглядную картину, как происходил весь обмен пакетами.

А вообще целое менюTelephony отведено для работы с голосовым трафиком. Например,Telephony – RTP – Show All Streams покажет подробно, что происходило с RTP, в частности jitter (параметр, который, вероятно, самый важный в голосе), что иногда сразу скажет о наличии проблем.

Нажав на кнопку “Analyze” , можно открыть окноRTP stream Analysis – и, выбрав там поток, можно его даже проиграть, используя кнопку player. Сначала отроется окно проигрывателя, в котором вначале нужно установить подходящее значение jitter и использовать кнопку decode.

Появится нечто похожее на анализатор спектра, в котором можно отметить требуемый разговор, и после этого кнопка Play станет активной.

Так же существует еще один способ прослушивания голосовых звонков - можно зайти в менюTelephony – VoIP Calls .

Откроется окно со списком совершенных звонков, где опять же можно нажать кнопку player, отменить нужные разговоры флажками и нажать play. Для того чтобы добиться приемлемого качества звучания, потребуется проиграться со значением поля jitter buffer, меняя его значение.

Небольшое отступление

Некоторое время назад появился сайтCloudShark.org .

Это тот самый сниффер Wireshark, но реализованный в виде онлайн-сервиса. Очевидно, что с его помощью не удастся захватывать сетевой трафик, но выполнять анализ дампа трафика – вполне. Загрузив туда через форму PCAP-файл на анализ, можно будет получить четкую последовательность пакетов, в которой всё данные будут разбиты на понятные поля в зависимости от протокола. В общем, тот же Wireshark, но немного облегченный и доступный из любого браузера.

Финальная битва

Напоследок рассмотрим как выглядит сканирование портов. Смотрим на дамп и видим, что вначале происходит ARP запрос и затем непосредственно начинается сканирование. Адрес нашего маршрутизатора 192.168.10.11, сканирование идет с адреса 192.168.10.101

Это, так называемое, SYN сканирование, когда идут SYN-пакеты на указанный диапазон портов. Так как большинство портов закрыто, маршрутизатор отвечает пакетами RST, ACK. Пролистав чуть ниже видим, что открыт telnet (tcp 23).

На это указывает то, что маршрутизатор ответил пакетом SYN, ACK. К слову, для фильтрации портов в сниффере можно использовать конструкции вида: tcp.srcport, tcp.dstport и tcp.port. Для протокола UDP всё аналогично - udp.srcport, udp.dstport, udp.port.

Итоги

Мы пробежались по самым основным частям функционала лучшего анализатора пакетов. Получилось несколько сумбурно, вероятно, потому что хотелось затронуть как можно больше его возможностей и не упустить ничего важного. Оказалось, что анализатор пакетов, как отладчик и дизассемблер, демонстрирует мельчайшие подробности работы сети и сетевых протоколов.
Используя Wireshark и обладая необходимыми знаниями можно достаточно эффективно находить и диагностировать разнообразные проблемы, возникающие в сети.

В процессе написания использовались материалы сайтаwiki.wireshark.org/ Дампы с трафиком брались из разных источников, больше всего с сайта

Какой наиболее мощный инструмент для захвата и анализа интернет трафика на сегодняшний день? Ответ прост - программа Wireshark. Она способна перехватывать не только исходящие TCP пакеты, но и входящие. Такой инструмент состоит на вооружении многих профессионалов. Да и хакеры не гнушаются его использовать. Возможности программы безграничны. С ее помощью можно вытащить любой файл из пакета, просмотреть его и проверить. Главный вопрос состоит в том, как это сделать. В этом мы и попробуем разобраться.

Что такое Wireshark

Сия утилита предназначена для контроля интернет трафика. Она перехватывает TCP пакеты, которые были приняты компьютером или посланы с него. Функционал программы настолько богат, что простым перехватом дело не ограничивается. Можно просматривать содержимое пакетов, искать ошибки и так далее. Кроме того, с помощью WS можно вытащить из пакетов практически любой файл и просмотреть его. Чтобы лучше понять, что это за программа, нужно выделить ее основные преимущества. Итак, плюсы:

  • кроссплатформенность (есть версии для Linux, Mac, Unix);
  • утилита совершенно бесплатна;
  • обладает широким функционалом;
  • гибкость настройки;
  • возможность фильтрации трафика;
  • создание собственных фильтров;
  • перехват пакетов в реальном времени.

Преимуществ у данной утилиты действительно много. А вот недостатков как таковых нет вообще. Недаром Wireshark считается лучшей в своем роде для захвата и анализа TCP пакетов. Теперь нужно немного разобраться в самой программе.

Установка и настройка

Скачать Wireshark можно с официального сайта разработчика. Программа совершенно бесплатна. Стоит обратить внимание на то, что последняя версия (2.0.5) не работает с Wi-Fi адаптерами. Поэтому, если вам нужно анализировать трафик беспроводного соединения, следует скачать более старую версию.

Установка утилиты стандартна и не вызовет никаких проблем даже у новичков. В инсталляторе все понятно, хоть он и на английском. Кстати, Wireshark на русском языке в природе не существует, поэтому для того, чтобы успешно справляться с этим софтом придется напрячь память и вспомнить английский. В принципе, для простого захвата и просмотра TCP пакетов ничего сверхъестественного не понадобится. Хватит и школьного уровня английского.

Итак, первое, что мы видим после запуска установленной программы - главное окно. Для неподготовленного пользователя оно может показаться непонятным и страшным.

Ничего страшного в нем нет. В этом вы сейчас убедитесь. Для начала работы нужно сначала выбрать источник, из которого будет производиться захват TCP пакетов. Перехват может осуществляться как с Ethernet подключения, так и с WLAN адаптера. В качестве примера рассмотрим вариант с WLAN. Для настройки нужно зайти в пункт «Capture», подпункт «Options». В открывшемся окне следует выбрать ваш беспроводной адаптер и отметить его галочкой. Для начала захвата трафика достаточно нажать кнопку «Start».

После нажатия «Start» начнется анализ и захват пакетов. В окне появится много непонятных букв и цифр. Некоторые из пакетов имеют собственную цветовую маркировку. Для того, чтобы хоть что-то понять, нужно определить какой цвет к чему относится. Зеленый - TCP трафик, темно-синий - DNS, светло-синий - UDP и черный - пакеты TCP с ошибками. Теперь разобраться в этой горе данных проще.

Для остановки процесса перехвата достаточно нажать кнопку «Stop», которая помечена красным прямоугольником. Теперь можно выбрать интересующий вас пакет и просмотреть его. Для этого нужно щелкнуть по пакету правой клавишей мыши и в появившемся меню выбрать пункт «Show packet in new window». Тут же появится куча непонятных букв и цифр.

Но при углубленном изучении представленной информации можно понять, откуда и куда шел пакет и из чего он состоял. Для того чтобы просмотреть данные о TCP пакетах позднее, нужно использовать функцию сохранения захваченной информации. Она находится в пункте меню «File», подпункт «Save as». Потом можно будет загрузить информацию из файла и спокойно просмотреть ее.

Использование фильтров

Для отображения только той информации, которая вас интересует можно заставить Wireshark использовать фильтры и отсекать ненужный трафик. Инструкция по тонкой настройке фильтров находится в Сети, а мы пока рассмотрим только один пример. Допустим, вас интересуют только TCP пакеты. Для того, чтобы программа отображала только их, следует зайти в пункт меню «Capture», подпункт «Capture filters», выбрать пункт «TCP Only» и нажать кнопку «OK».

Таким образом можно заставить утилиту отображать только тот трафик, который вас интересует. Подробнее о том, как пользоваться фильтрами, написано на просторах интернета. Можно даже создать свой собственный шаблон для фильтра. Но это уже совсем другая история.

Заключение

Среди программ для захвата и анализа трафика Wireshark зарекомендовала себя как наиболее достойная утилита для решения подобных задач. Многие профессионалы с успехом используют ее. Конечно, для того, чтобы работать в ней на профессиональном уровне придется подтянуть свои знания в английском и изучить некоторые принципы передачи данных. Но это того стоит. Теперь ни одна программа на вашем компьютере не сможет отсылать тонны ненужной информации незнамо куда без вашего ведома. Wireshark как перехватчик и анализатор не имеет себе равных.

Видео

На этой странице вы найдете ответы на самые популярные вопросы по снифферу WireShark:
⦁ где скачать WireShark бесплатно;
⦁ почему не надо скачивать Wireshark с торрентов;
⦁ где взять WireShark на русском (русификатор);
⦁ где взять инструкции для WireShark на русском,
⦁ руководство по работе с WireShark.

Wireshark - это очень мощный и один из лучших в мире сниффер для захвата и декодирования сетевого трафика. Предоставляет возможность декодировать более 500 различных протоколов сетей передачи данных и телекоммуникационных протоколов, включая протоколы сотовой связи. Он является де-факто (и часто де-юре) стандартом во многих отраслях промышленности и образовательных учреждениях во всем мире. Многие производители коммерческих продуктов используют его в своих решениях как декодировщик.
Программа WireShark абсолютно бесплатна и постоянно дорабатывается несколькими авторами на пожертвования от спонсоров с далекого 1998 года.

Где бесплатно скачать WireShark?

Скачивайте программу только с этой страницы!

Где cкачать WireShark на русском?

WireShark разрабатывается международным коллективом фанатов и, к сожалению, доступен только на английском языке. Искать русификатор или версию на русском языке бесполезно.

Где взять инструкции для работы с WireShark?

Если вы хотите постичь все возможности и стать профессиональным пользователем WireShark, то это можно сделать двумя способами.
⦁ Способ первый.
Метод проб и ошибок. Захватывайте трафик, пытайтесь анализировать его, общайтесь с коллегами на различных форумах и группах. Например, тут: https://ask.wireshark.org/
⦁ Способ второй.
Можно окончить официальные курсы и получить сертификат пользователя или инструктора. Подготовится к курсам можно, освоив данное руководство: http://www.wiresharkbook.com/epg.html
Эта книга является идеальным ресурсом для подготовки к экзамену!

Руководство пользователя

Официальное руководство пользователя сниффера Wireshark доступно на английском языке (русского нет) в различных версиях:
⦁ онлайн руководство: https://www.wireshark.org/docs/wsug_html_chunked
⦁ скачать руководство в архиве.

Иногда при использовании интернета возникают ситуации, при которых происходит утечка трафика или непредвиденный расход системных ресурсов. Чтобы быстро провести анализ и обнаружить источник проблемы, используют специальные сетевые инструменты. Об одном из них, WireShark, пойдёт речь в статье.

Общая информация

Перед тем, как пользоваться WireShark, нужно ознакомиться с областью её применения, функционалом и возможностями. Вкратце: программа позволяет перехватывать пакеты в режиме реального времени в проводных и беспроводных сетевых подключениях. Применяется в протоколах Ethernet, IEEE 802.11, PPP и аналогичных. Можно использовать и перехват трафика звонков VoIP.

Программа распространяется под лицензией GNU GPL, что означает - бесплатно и с открытым исходным кодом. Можно запустить её на многих дистрибутивах Linux, MacOS, и есть также версия для операционной системы Windows.

Как пользоваться WireShark?

Во-первых, сначала стоит установить её в систему. Так как одним из наиболее часто используемых Linux дистрибутивов является Ubuntu, то и все примеры будут показаны именно в нем.

Для установки достаточно набрать в консоли команду:

sudo apt-get install wireshark

После этого программа появится в главном меню. Можно запустить её оттуда. Но лучше делать это из терминала, так как ей нужны права суперпользователя. Это можно сделать так:

Внешний вид

Программа имеет удобный графический интерфейс. Перед пользователем предстанет дружелюбное окно, разбитое на 3 части. Непосредственно с захватом связано первое, второе относится к открытию файлов и сэмплов, а третье — помощь и поддержка.

Блок Capture содержит список доступных для захвата сетевых интерфейсов. При выборе, например, eth0 и нажатии кнопки Start запустится процесс перехвата.

Окно с перехватываемыми данными также разделено логически на несколько частей. Сверху находится панель управления с различными элементами. Следом за ним идёт список пакетов. Он представлен в виде таблицы. Здесь можно увидеть порядковый номер пакета, время его перехвата, адрес отправления и получения. Также можно изъять данные об используемых протоколах, длине и других полезных сведений.

Ниже списка расположено окно с содержимым технических данных выбранного пакета. А ещё ниже имеется отображение в шестнадцатеричном виде.

Каждое представление можно развернуть в большом окне для более удобного чтения данных.

Применение фильтров

В процессе работы программы перед пользователем всегда будут пробегать десятки, а то и сотни пакетов. Отсеивать их вручную довольно трудно и долго. Поэтому официальная инструкция WireShark рекомендует использовать фильтры.

Для них есть специальное поле в окне программы — Filter. Чтобы сконфигурировать фильтр более точно, имеется кнопка Expression.

Но для большинства случаев хватит и стандартного набора фильтров:

  • ip.dst — ip адрес назначения пакета;
  • ip.src — адрес отправителя;
  • ip.addr — просто любой ip;
  • ip.proto — протокол.

Использование фильтров в WireShark — инструкция

Чтобы попробовать, как работает программа с фильтрами, нужно в ввести определённую команду. Например, такой набор — ip.dst == 172.217.23.131 - покажет все летящие пакеты на сайт "Гугл". Чтобы просмотреть весь трафик — и входящий и исходящий, - можно объединить две формулы — ip.dst == 172.217.23.131 || ip.src == 172.217.23.131. Таким образом, получилось использовать в одной строке сразу два условия.

Можно использовать и другие условия, например ip.ttl < 10. Данная команда выведет все пакеты с длительностью жизни меньше 10. Чтобы выбрать данные по их размеру, можно применить такой подход — http.content_length > 5000.

Дополнительные возможности

Для удобства в WireShark есть способ быстро выбрать в качестве анализируемого поля параметры пакета. Например, в поле с техническими данными можно щёлкнуть правой кнопкой на нужном объекте и выбрать Apply as Column. Что означает его перевод в область поля в качестве колонки.

Аналогично можно выбрать любой параметр и как фильтр. Для этого в контекстном меню есть пункт Apply as Filter.

Отдельный сеанс

Можно пользоваться WireShark как монитором между двумя узлами сети, например, пользователем и сервером. Для этого нужно выбрать интересующий пакет, вызвать контекстное меню и нажать Follow TCP Stream. В новом окне отобразится весь лог обмена между двумя узлами.

Диагностика

WireShark обладает отдельным инструментом для анализа проблем сети. Он называется Expert Tools. Найти его можно в левом нижнем углу, в виде круглой иконки. По нажатию на ней откроется новое окно с несколькими вкладками — Errors, Warnings и другие. С их помощью можно проанализировать, в каких узлах происходят сбои, не доходят пакеты, и обнаружить прочие проблемы с сетью.

Голосовой трафик

Как уже было сказано, WireShark умеет перехватывать и голосовой трафик. Для этого отведено целое меню Telephony. Это можно использовать для нахождения проблем в VoIP и их оперативного устранения.

Пункт VoIP Calls в меню Telephony позволит просмотреть совершенные звонки и прослушать их.

Экспорт объектов

Это, наверное, самый интересный функционал программы. Он позволяет пользоваться WireShark как перехватчиком файлов, которые передавались по сети. Для этого нужно остановить процесс перехвата и выполнить экспорт HTTP объектов в меню File. В открывшемся окне будет представлен список всех переданных за сессию файлов, которые можно сохранить в удобное место.

В заключение

К сожалению, актуальную версию WireShark на русском языке в сети найти будет трудно. Наиболее доступная и часто используемая есть на английском.

Также обстоят дела и с подробной инструкцией по WireShark на русском. Официальная от разработчика представлена на английском. В сети есть много небольших и кратких руководств по WireShark для начинающих.

Однако тем, кто давно работает в IT сфере, разобраться с программой не представит особых сложностей. А большие возможности и богатый функционал скрасит все трудности при изучении.

Стоит отметить, что в некоторых странах использование сниффера, каковым и является WireShark, может быть противозаконным.