для чего нужен wireshark

Wireshark для всех. Лайфхаки на каждый день

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark
Пакет с сертификатами от Хабра

Практические варианты использования

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

Расшифровка трафика SSL/TLS

Chrome и Firefox могут записывать логи сессионных ключей, которые используются для шифрования трафика SSL/TLS. Наша задача — включить запись этих логов, а потом загрузить их в Wireshark для анализа. Предполагается, что у нас есть физический доступ к компьютеру пользователя, трафик которого мы хотим расшифровать. Или к серверу, который устанавливает зашифрованное соединение с пользователем.

Сначала включаем запись ключей.

Старые билды Windows 10

В старых билдах Windows 10 работает старый метод. Заходим в Панель управленияСистема и безопасностьСистема. На вкладке «Дополнительные параметры системы» нажимаем кнопку «Переменные среды».

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Добавляем для пользователя новую переменную SSLKEYLOGFILE и указываем путь до файла.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

В результате получаем логи с ключами, начало файла:

Новые билды Windows 10

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

[Environment]::SetEnvironmentVariable(«PATH», «C:\TestPath», «User»)

Первый параметр — это имя переменной, второй — значение, третий — для какого уровня переменная (пользовательский или системный).

[Environment]::SetEnvironmentVariable(«SSLKEYLOGFILE», «D:\wireshark», «User»)

Linux и Mac OS X

Под Linux и Mac OS X можно использовать такую команду для изменения переменной окружения и ведения логов — с запуском браузера из того же терминального окна, поскольку переменные окружения всегда работают в пределах одной сессии.

После накопления лога запускаем Wireshark.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Заходим в «Параметры», там на вкладке «Протоколы» (Protocols) находим раздел TLS (раньше он назывался SSL) — и указываем путь к файлу с логами и ключом, который использовался в сессии симметричного шифрования: (Pre)-Master-Secret log filename.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Например, при заходе пользователя на сервер Gmail в окне инспектирования пакетов QUIC мы видим обычные пакеты QUIC, зашифрованные ключом TLS.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Но в нижней части экрана появляется новая вкладка Decrypted QUIC, которая показывает расшифрованное содержимое этих пакетов.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Такой метод расшифровки трафика клиента не требует установки Wireshark на его компьютер, достаточно только скачать дамп с ключами, а потом использовать его вместе с дампом трафика.

Примечание. Этот способ не ограничен только HTTP. Точно так же можно перехватывать и расшифровывать трафик SSL/TLS в других потоках. Например, зашифрованный трафик от сервера MySQL.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Анализируем трафик с другого компьютера

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

Записываем пакеты на сервере с помощью сниффера пакетов tcpdump, который входит в стандартный комплект *nix:

Затем копируем файлы к себе на компьютер:

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

Есть вариант отслеживать серверный трафик в реальном времени со своего домашнего/рабочего компьютера. Например, весь трафик, кроме портов 22 и 53:

Примерно то же самое с компьютера под Windows:

Ищем проблемы

Чтобы выделить конкретное TCP-соединение, находим любой интересующий пакет, щёлкаем по нему правой кнопкой мыши — и применяем фильтр диалога.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Теперь из всего записанного трафика остались только пакеты, принадлежащие конкретно этому соединению.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

На скриншоте мы видим пакеты с начала установки соединения TLS: пакет с приветствием клиента, ответный пакет с приветствием сервера, предъявленный сертификат, список шифров и так далее. Содержимое каждого пакета можно изучить отдельно. Очень удобно.

Типичный паттерн — использовать Wireshark для диагностики конкретных проблем. Например, в случае разрыва TLS-соединения мы можем зайти и посмотреть, кто его разорвал (клиент или сервер), на каком этапе это произошло и по какой причине.

Содержимое пакетов

Побайтовое содержимое каждого пакета — это настоящая магия. Конкретно эта функциональность Wireshark позволяет выявить самые серьёзные баги. Например, несколько лет назад выяснилось, что гигабитные Ethernet-контроллеры Intel 82574L отключаются, если отправить на них специально сконструированный пакет с определённой последовательностью байтов — так называемый «пакет смерти». Именно благодаря Wireshark выяснилось, какие конкретно байты в пакете приводят к гарантированному отключению сетевой карты.

Вот запись конкретных пакетов: pod-http-post.pcap и pod-icmp-ping.pcap. Можем их скачать, открыть в Wireshark и посмотреть своими глазами.

Отключение сетевого интерфейса Intel происходит, если по адресу 0x47f находится значение 2 или 3, то есть 32 HEX или 33 HEX. Если там 4, то всё нормально.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Для атаки подходил любой пакет: HTTP POST, ICMP echo-request и проч. Например, на веб-сервере можно сконфигурировать ответ 200 таким образом, что «убивает» сетевые интерфейсы на клиентских машинах. Довольно любопытная ситуация.

Поиск пакетов по содержанию

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

Трафик с мобильного телефона

Аналогичным образом можно проанализировать трафик с фитнес-часов по Bluetooth или трафик любого мобильного приложения под Android. Для этого нужно записать пакеты PCAP на мобильном устройстве — и передать их для анализа в Wireshark на рабочем ПК.

Есть несколько мобильных программ для записи PCAP. Например, приложение
PCAPdroid для Android:

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark
PCAPdroid

В принципе, можно не передавать записанные файлы PCAP, а анализировать их прямо на мобильном устройстве. В некоторых мобильных снифферах есть и зачаточные функции анализатора пакетов, см. Packet Capture и Termux (о нём ниже).

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark
Packet Capture

Wireshark имеет и прямой интерфейс Androiddump, чтобы снимать данные с телефона напрямую через Android SDK.

Трафик с телевизора и других бытовых приборов

Чтобы изучить трафик с телевизора, смартфона жены или других бытовых приборов, которые подключены в домашнюю сеть по Ethernet и WiFi, придётся записывать PCAP на маршрутизаторе. Иногда достаточно встроенных инструментов. Если у вас маршрутизатор с прошивкой DD-WRT, то можно прямо на устройстве запустить tcpdump :

Для прошивки OpenWrt есть вариант зеркалировать трафик с помощью iptables-mod-tee.

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Другой способ — перехватить беспроводной трафик WiFi с помощью утилиты Airodump-ng без подключения к маршрутизатору. Но это больше подходит для анализа трафика на чужих хотспотах.

Далее всё по накатанной — загружаем файлы в Wireshark, запускаем фильтры.

Кстати, Wireshark поддерживает также анализ трафика USB: встроенный сниффер USBPcap и импорт пакетов из сторонних снифферов, таких как Npcap и RawCap.

Termshark

Если вы анализируете объёмные логи на удалённом сервере, но не хотите копировать всё на свою машину, может пригодиться Termshark — удобный пользовательский интерфейс в консоли для анализатора TShark, по внешнему виду напоминающий Wireshark.

Функции

Вот как выглядит версия под Android:

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Wireshark как веб-приложение

Если по каким-то причинам вы не можете запустить Wireshark на локальной машине, можно воспользоваться облачным сервисом CloudShark, который сделан на удивление качественно.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Основная функция — совместная работа и публикация разборов пакетов по URL. Например, cloudshark.org/captures/05aae7c1b941. Файлы загружаются в облако и анализируются в браузере. Это нужно, если вы хотите спросить совета на форуме, поделиться информацией с коллегами или опубликовать разбор пакетов для широкой аудитории. Кстати, удобно использовать с мобильного телефона, ведь под Android есть приложения для захвата пакетов, а вот хорошего анализатора нет.

Сервис платный, есть 30-дневный пробный период.

В общем, Wireshark — просто фантастическая программа на все случаи жизни.

Кроме реальной практической пользы, анализатор даёт примерное представление о том, как работает фильтрация DPI у российских провайдеров. Там всё устроено примерно так же. Система в реальном времени сканирует трафик, фильтрует конкретно пакеты от Twitter — и замедляет их доставку пользователям на территории России. В частности, этим непотребством занимается Роскомнадзор с 10 марта 2021 года.

На правах рекламы

Если для работы необходим сервер в аренду на Linux или Windows, то вам однозначно к нам — активация услуги через минуту после оплаты!

Источник

Как использовать Wireshark: полное руководство

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Инструкции в этой статье относятся к Wireshark 3.0.3 для Windows и Mac.

Что такое Wireshark?

Как скачать и установить Wireshark

Wireshark можно бесплатно загрузить с веб-сайта Wireshark Foundation для MacOS и Windows. Вы увидите последний стабильный выпуск и текущий выпуск для разработчиков. Если вы не являетесь опытным пользователем, загрузите стабильную версию.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

В процессе установки Windows выберите установку WinPcap или Npcap, если это будет предложено, поскольку они включают библиотеки, необходимые для сбора данных в реальном времени.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Приложение также доступно для Linux и других UNIX-подобных платформ, включая Red Hat, Solaris и FreeBSD. Двоичные файлы, необходимые для этих операционных систем, можно найти в нижней части страницы загрузки Wireshark в разделе « Сторонние пакеты ». Вы также можете скачать исходный код Wireshark с этой страницы.

Как захватить пакеты данных с Wireshark

Когда вы запускаете Wireshark, на экране приветствия перечисляются доступные сетевые подключения на вашем текущем устройстве. Справа от каждого из них представлен линейный график в стиле ЭКГ, представляющий живой трафик в этой сети.

Чтобы начать захват пакетов с помощью Wireshark:

Чтобы выбрать несколько сетей, удерживайте клавишу Shift во время выбора.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Выберите « Файл» > « Сохранить как» или выберите опцию « Экспорт» для записи записи.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Как просмотреть и проанализировать содержимое пакета

Интерфейс захваченных данных содержит три основных раздела:

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Список пакетов

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Детали пакета

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Пакетные байты

Внизу находится панель байтов пакетов, которая отображает необработанные данные выбранного пакета в шестнадцатеричном представлении. Этот шестнадцатеричный дамп содержит 16 шестнадцатеричных байтов и 16 ASCII-байтов вместе со смещением данных.

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Цветовые правила Wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Wireshark содержит около 20 правил раскраски по умолчанию, каждое из которых можно редактировать, отключать или удалять. Выберите View > Coloring Rules для обзора того, что означает каждый цвет. Вы также можете добавить свои собственные фильтры на основе цвета.

Выберите « Просмотр» > « Colorize Packet List», чтобы включить или выключить раскраску пакетов.

Статистика в Wireshark

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Wireshark Расширенные возможности

Wireshark также поддерживает расширенные функции, включая возможность написания протоколов диссекторов на языке программирования Lua.

Источник

Wireshark — приручение акулы

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

А следующая за ними кнопка позволяет сделать быстрый переход к пакету, указав его номер.
В случае если колонки перекрываются и наползают друг на друга, можно кликнуть по такой колонке правой кнопкой мыши и выбрать “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).

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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)

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

Теперь перейдем к Display Filters.
Они фильтруют исключительно уже захваченный трафик.
Что можно фильтровать?
— Практически все — протоколы, адреса, специфические поля в протоколах.
Операции, которые можно использовать при построении фильтров:

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Как уже упоминалось ранее, можно выделить любой пакет и в контекстном меню выбрать 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.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

Еще глубже

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

В этом окне будет содержаться информация по найденным пакетам, разбитая на группы 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. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Затем опускаемся дальше, находим пакеты уже непосредственно с файлом (FTP-DATA) и опять выбираем Follow TCP Stream, видим содержимое файла, жмем Save As и сохраняем.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

Wireshark имеет несколько встроенных функций для работы с этой технологией.
Он поддерживает массу голосовых протоколов — SIP, SDP, RTSP, H.323, RTCP, SRTP и другие.
И, конечно же, умеет перехватывать и сохранять голосовой трафик для дальнейшего прослушивания.
Этот функционал как нельзя лучше подойдет для траблшутинга в сетях Voice over IP.
Меню Statistics — Flow Graph покажет наглядную картину, как происходил весь обмен пакетами.

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

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

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

для чего нужен wireshark. Смотреть фото для чего нужен wireshark. Смотреть картинку для чего нужен wireshark. Картинка про для чего нужен wireshark. Фото для чего нужен wireshark

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *