Специальная компьютерная программа для перехвата пакетных данных их декодирования и анализа

Обновлено: 05.07.2024

Снифферы – программное или аппаратное решение, которое предназначено для перехвата сетевого трафика и его последующего анализа для определенных протоколов. Анализаторы трафика могут работать в локальной сети или через Wi-Fi, подключение к каналу для перехвата трафика может осуществляться разными способами:

  • Прослушка сетевого интерфейса;
  • Подключение через существующий разрыв канала;
  • Разветвление исходящего и входящего трафика с последующим перенаправлением данных на сниффер и пр.

В основном снифферы используются в шпионских целях. За счет доступа к трафику они открывают злоумышленникам доступ к паролям, переписке и другой информации, которая не проходит шифровку. Среди программистов подобные программы используются и в благих целях, они позволяют выявлять различные проблемы в сетевой безопасности на Windows, Linux и других ОС.

Анализаторы трафика используются для:

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

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

Лучшие WiFi снифферы

Intercepter-NG

Nmap

Tcpdump

XSpider

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

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

Новые снифферы

Nmap

Программа с открытым исходным кодом для проверки доступности портов в локальной сети. Работает через терминал. Используется для администрирования LAN-сетей и их проверки устойчивости ко взлому.

TCPDUMP

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

AirSlax

Linux-дистрибутив с возможностью запуска в live-режиме. Используется для проверки устойчивости ко взлому беспроводных точек доступа. Является форком Kali Linux, все атаки можно запускать через графический GUI.

IP-Tools

Сканер сетевой активности для Windows. Запрашивает статус предоставленных прав от всех устройств в локальной сети, исследует движение трафика без его перехвата. Используется для администрирования LAN.

XSpider

Сканер локальной сети на наличие уязвимостей. Выполняет попытку взлома ИТ-инфраструктуры с использованием всех известных эксплоитов, на основе этого генерирует отчет безопасности.

LANScope

Сетевой сканер для Windows. Определяет имеющиеся у пользователя права доступа ко всем сетевым ресурсам. Используется для администрирования LAN, для быстрого подключения к NAS, дисковым хранилищам.

Принципы работы пакетных снифферов

Рис. 1. Схема работы сниффера

Рис. 1. Схема работы сниффера

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

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

Ограничения использования снифферов

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

Рис. 2. При использовании концентраторов сниффер способен перехватывать все пакеты сетевого сегмента

Рис. 2. При использовании концентраторов сниффер способен перехватывать все пакеты сетевого сегмента

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

Рис. 3. При использовании коммутаторов сниффер способен перехватывать только входящие и исходящие пакеты одного узла сети

Рис. 3. При использовании коммутаторов сниффер способен перехватывать только входящие и исходящие пакеты одного узла сети

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

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

Другая причина, по которой снифферы перестали быть настолько опасными, как раньше, заключается в том, что в настоящее время наиболее важные данные передаются в зашифрованном виде. Открытые, незашифрованные службы быстро исчезают из Интернета. К примеру, при посещении web-сайтов все чаще используется протокол SSL (Secure Sockets Layer); вместо открытого FTP используется SFTP (Secure FTP), а для других служб, которые не применяют шифрование по умолчанию, все чаще используются виртуальные частные сети (VPN).

Итак, те, кто беспокоится о возможности злонамеренного применения пакетных снифферов, должны иметь в виду следующее. Во-первых, чтобы представлять серьезную угрозу для вашей сети, снифферы должны находиться внутри самой сети. Во-вторых, сегодняшние стандарты шифрования чрезвычайно затрудняют процесс перехвата конфиденциальной информации. Поэтому в настоящее время пакетные снифферы постепенно утрачивают свою актуальность в качестве инструментов хакеров, но в то же время остаются действенным и мощным средством для диагностирования сетей. Более того, снифферы могут с успехом использоваться не только для диагностики и локализации сетевых проблем, но и для аудита сетевой безопасности. В частности, применение пакетных анализаторов позволяет обнаружить несанкционированный трафик, обнаружить и идентифицировать несанкционированное программное обеспечение, идентифицировать неиспользуемые протоколы для удаления их из сети, осуществлять генерацию трафика для испытания на вторжение (penetration test) с целью проверки системы защиты, работать с системами обнаружения вторжений (Intrusion Detection System, IDS).

Обзор программных пакетных снифферов

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

Практически все пакетные снифферы позволяют производить анализ декодированных пакетов (именно поэтому пакетные снифферы также называют пакетными анализаторами, или протокольными анализаторами). Сниффер распределяет перехваченные пакеты по уровням и протоколам. Некоторые анализаторы пакетов способны распознавать протокол и отображать перехваченную информацию. Этот тип информации обычно отображается во второй области окна сниффера. К примеру, любой сниффер способен распознавать протокол TCP, а продвинутые снифферы умеют определять, каким приложением порожден данный трафик. Большинство анализаторов протоколов распознают свыше 500 различных протоколов и умеют описывать и декодировать их по именам. Чем больше информации в состоянии декодировать и представить на экране сниффер, тем меньше придется декодировать вручную.

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

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

Ethereal 0.10.14

В состав утилиты WinPcap входит драйвер, обеспечивающий взаимодействие с NIC-уровнем, и библиотека, отвечающая за взаимодействие с интерфейсом API.

Несмотря на то что графический интерфейс утилиты Ethereal 0.10.14 достаточно понятен, к программе прилагается очень подробный учебник (более 200 страниц).

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

В пакете Ethereal 0.10.14 встречаются практически все функции, которые только могут быть у анализатора пакетов. Программа может декодировать 752 протокола и поддерживает работу в Wi-Fi-сетях.

Графический интерфейс пакета Ethereal 0.10.14 вполне традиционен и содержит три области: отображения перехваченных пакетов, отображения статистической информации о конкретном выбранном пакете, содержимого конкретного пакета (рис. 4).

Рис. 4. Главное окно программы Ethereal 0.10.14

Рис. 4. Главное окно программы Ethereal 0.10.14

Графический интерфейс программы Ethereal облегчает создание пакетных фильтров как для файлов перехваченных пакетов (фильтры отображения), так и для «живого» перехвата (фильтры перехвата). После изучения синтаксиса фильтров программы Ethereal можно создавать фильтры самостоятельно, присваивать им имена и сохранять их для последующего использования (рис. 5). Программа Ethereal обладает довольно удобным интерфейсом для создания фильтров. Достаточно нажать на кнопку Add Expression, чтобы создать фильтры в диалоговом окне Filter Expression.

Рис. 5. Создание фильтра в программе

Рис. 5. Создание фильтра в программе Ethereal 0.10.14

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

Применение фильтров в анализаторе Ethereal позволяет легко выделить из общего потока перехваченной информации именно те или даже тот единственный кадр, который требуется. Рассмотрим, к примеру, как найти при помощи фильтра пакет с паролем при подключении пользователя к Интернету через dial-up-соединение.

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

Далее необходимо настроить фильтр, позволяющий найти нужный пакет. Поскольку процесс аутентификации пользователя проходит по протоколу PPP PAP, необходимо создать фильтр на выделение этого протокола. Для этого в строке выражения достаточно указать «pap» и присвоить имя новому фильтру (например, DialUp_Password) (рис. 6).

Рис. 6. Настройка фильтра для получения пакета с паролем

Рис. 6. Настройка фильтра для получения пакета с паролем

После применения фильтра из всей совокупности пакетов останутся только два: пакет-запрос на аутентификацию (Authenticate-Request) и пакет подтверждения аутентификации (Authenticate-ACK). Понятно, что пароль (как правило, он передается провайдеру в незашифрованном виде) содержится в первом пакете, в чем несложно убедиться, просмотрев содержимое самого пакета (рис. 7).

Рис. 7. Содержимое пакета

Рис. 7. Содержимое пакета

Помимо прекрасных возможностей по созданию разного рода фильтров, программа Ethereal позволяет выполнять всесторонний анализ трафика, представляя его в графической форме или в форме статистического отчета. К примеру, можно выполнить анализ TCP-трафика по пропускной способности, по времени передачи туда и обратно и по номерам пакетов. Результаты анализа представляются в виде графиков. Так, анализ, использующий порядковые номера пакетов и время, позволяет получить представление о том, какой объем данных был послан в различные моменты времени, поскольку порядковые номера пакетов увеличиваются на размер пакета данных.

В целом можно сказать, что пакетный анализатор Ethereal 0.10.14 является очень мощным инструментальным средством диагностики сетей. Конечно, для детального освоения пакета потребуется немало времени. Однако если все-таки удастся преодолеть этот барьер и освоить пакет Ethereal, то необходимость освоения других аналогичных продуктов попросту отпадет.

Analyzer v.2.2

Утилита Analyzer v.2.2 поддерживает выбор интерфейса: сетевой адаптер или аналоговый модем. Работа в беспроводных сетях не предусмотрена.

Графический интерфейс пакетного анализатора Analyzer v.2.2 содержит три традиционных окна (рис. 8). В первом окне отображаются перехваченные пакеты с информацией о времени получения пакета, MAC-адресах отправителя и получателя, IP-адресах отправителя и получателя, протоколе передачи, портах источника и получателя пакетов, размер TCP-окна, номер последовательности пакета и номер подтверждения этого пакета. Во втором окне выводится декодированная информация об отдельных полях пакета, а третье окно отображает содержимое самого пакета.

Рис. 8. Главное окно пакетного анализатора Analyzer v.2.2

Рис. 8. Главное окно пакетного анализатора Analyzer v.2.2

Поэтому еще раз подчеркнем, что программа Analyzer v.2.2 представляет интерес только для начинающих пользователей и в качестве средства ознакомления с принципами функционирования сетей и структурами пакетов различных протоколов.

CommView 5.0

Данный пакетный анализатор предназначен для мониторинга локальной сети и соединения с Интернетом. Он способен захватывать пакеты, проходящие через сетевой адаптер или модем, декодировать их и представлять достаточно подробную информацию в удобном для восприятия виде. В отличие от большинства снифферов, программа CommView 5.0 не требует предварительной установки на ПК WinPcap.

Сниффер CommView 5.0 поддерживает операционные системы Windows 98/Me/NT/2000/XP/2003 и Windows XP 64-bit Edition. Перечень поддерживаемых протоколов довольно обширен, и в этом плане можно рассчитывать на предоставление достаточно подробной информации о перехваченных пакетах.

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

Рис. 9. Главное окно пакетного анализатора CommView 5.0

Рис. 9. Главное окно пакетного анализатора CommView 5.0

Информация в окне с захваченными пакетами довольно скудная. Отображаются лишь тип протокола, IP- и MAC-адреса источника и получателя пакета, время и порт назначения и отправления.

Окно с декодированной информацией об отдельном пакете значительно более информативно и по детализации предоставляемой информации не уступает анализатору Ethereal (во всяком случае это касается протокола TCP).

К достоинствам анализатора CommView 5.0 можно отнести возможность просмотра подробной статистической информации о сеансе перехвата, которая представляется в отдельном окне в удобном графическом виде (рис. 10), а также составление отчета в отдельном файле.

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

Рис. 10. Статистическая информация о сеансе перехвата в программе CommView 5.0

Рис. 10. Статистическая информация о сеансе перехвата в программе CommView 5.0

Кроме того, сниффер CommView 5.0 позволяет заменять IP- и MAC-адреса сетевого адаптера на имена пользователей, что упрощает мониторинг сети. С целью диагностики сети данный сниффер имеет встроенный генератор трафика с возможностью настройки размера передаваемого пакета и скорости генерации пакетов.

Iris Network Traffic Analyzer4.07

Несмотря на заявленную в документации поддержку только операционных систем Windows 95/98/NT/2000, реально этот список можно расширить, и, скорее всего, данная программа способна работать с любой операционной системой семейства Windows.

Рис. 11. Главное окно пакетного анализатора Iris 4.07

Рис. 11. Главное окно пакетного анализатора Iris 4.07

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

Пакетный анализатор Iris 4.07 позволяет очень гибко и в то же время просто настраивать фильтры для захвата пакетов. Так, используя диалоговое окно (рис. 12) Edit filter settings, можно создавать фильтры по MAC-адресам источника и получателя, по IP-адресам источника и получателя, по портам, протоколам, а также по вхождению в содержимое пакета определенного слова. Кроме того, можно настраивать фильтры на размер пакета и на фрагмент пакета в HEX-формате.

Рис. 12. Настройка пакетного фильтра

Рис. 12. Настройка пакетного фильтра в анализаторе Iris 4.07

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

Другим отличием программы Iris 4.07 является возможность отображения в графической форме статистической информации во время запуска режима захвата пакетов. Так, имеется возможность отображать график скорости передачи пакетов (рис. 13), диаграмму распределения размеров пакетов (рис. 14) и многое другое.

Рис. 13. График скорости передачи пакетов

Рис. 13. График скорости передачи пакетов
в анализаторе Iris 4.07

Рис. 14. Диаграмма распределения размеров пакетов в анализаторе Iris 4.07

Рис. 14. Диаграмма распределения размеров пакетов в анализаторе Iris 4.07

Помимо перечисленных возможностей анализатор пакетов Iris 4.07 позволяет создавать HTML-отчеты о сеансе связи, куда включается наиболее важная информация, в том числе статистика о посещении сайтов, объеме переданного и принятого трафика и многое другое. Также программа Iris 4.07 имеет встроенный генератор трафика, что удобно для диагностики узких мест в сети.

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


Что­бы перех­ватывать тра­фик, ана­лиза­торы могут исполь­зовать перенап­равле­ние пакетов или задей­ство­вать так называ­емый Promiscuous mode — «нераз­борчи­вый» режим работы сетево­го адап­тера, при котором отклю­чает­ся филь­тра­ция и адап­тер при­нима­ет все пакеты незави­симо от того, кому они адре­сова­ны. В обыч­ной ситу­ации Ethernet-интерфейс филь­тру­ет пакеты на каналь­ном уров­не. При такой филь­тра­ции сетевая кар­та при­нима­ет толь­ко широко­веща­тель­ные зап­росы и пакеты, MAC-адрес в заголов­ке которых сов­пада­ет с ее собс­твен­ным. В режиме Promiscuous все осталь­ные пакеты не отбра­сыва­ются, что и поз­воля­ет сниф­феру перех­ватывать дан­ные.

Не­ред­ко ана­лиза­торы тра­фика при­меня­ются в «мир­ных» целях — для диаг­ности­ки сети, выяв­ления и устра­нения непола­док, обна­руже­ния вре­донос­ного ПО или что­бы выяс­нить, чем заняты поль­зовате­ли и какие сай­ты они посеща­ют. Но имен­но при иссле­дова­нии безопас­ности сетево­го перимет­ра или тес­тирова­нии на про­ник­новение сниф­фер — незаме­нимый инс­тру­мент для раз­ведки и сбо­ра дан­ных. Сущес­тву­ют сниф­феры для раз­личных опе­раци­онных сис­тем, кро­ме того, подоб­ное ПО мож­но уста­новить на роуте­ре и иссле­довать весь про­ходя­щий через него тра­фик. Сегод­ня мы погово­рим о наибо­лее рас­простра­нен­ных популяр­ных ана­лиза­торах тра­фика для плат­формы Microsoft Windows.

Wireshark

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

Что такое Wireshark, знает, наверное, каждый

Что такое Wireshark, зна­ет, навер­ное, каж­дый

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

По­мимо Ethernet, сниф­фер уме­ет перех­ватывать тра­фик бес­про­вод­ных сетей (стан­дарты 802.11 и про­токол Bluetooth). Тул­за поз­воля­ет ана­лизи­ровать тра­фик IP-телефо­нии и вос­ста­нав­ливать TCP-потоки, под­держи­вает­ся ана­лиз тун­нелиро­ван­ного тра­фика. Wireshark отлично справ­ляет­ся с задачей декоди­рова­ния про­токо­лов, но, что­бы понять резуль­таты это­го декоди­рова­ния, надо, безус­ловно, хорошо раз­бирать­ся в их струк­туре.

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

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

CommView

Сре­ди сущес­тву­ющих ныне сниф­феров CommView — один из самых ста­рых и зас­лужен­ных ветера­нов, об этом про­дук­те «Хакер» пи­сал еще в 2001 году. Про­ект жив и по сей день, активно раз­вива­ется и обновля­ется: пос­ледняя на текущий момент вер­сия датиро­вана 2020 годом. Нес­мотря на то что про­дукт плат­ный, про­изво­дитель пред­лага­ет ска­чать три­ал, который поз­воля­ет пос­мотреть работу при­ложе­ния на прак­тике — проб­ная вер­сия сниф­фера перех­ватыва­ет тра­фик в течение пяти минут, пос­ле чего про­сит денег.

CommView — заслуженный «ветеран» в мире снифферов

CommView — зас­лужен­ный «ветеран» в мире сниф­феров

Прог­рамма име­ет рус­ско­языч­ный интерфейс, что может стать опре­деля­ющим фак­тором при выборе сниф­фера для поль­зовате­лей, не вла­деющих англий­ским. Глав­ное пре­иму­щес­тво CommView — воз­можность гиб­ко нас­тро­ить пра­вила филь­тра­ции пакетов: мож­но выб­рать отдель­ные про­токо­лы, которые будет отсле­живать при­ложе­ние, сор­тировать пакеты по ряду приз­наков, нап­ример по раз­меру или заголов­ку. Ассорти­мент под­держи­ваемых про­токо­лов так­же весь­ма велик: сниф­фер уме­ет работать с самыми рас­простра­нен­ными прик­ладны­ми про­токо­лами, а так­же выпол­нять реконс­трук­цию TCP-сес­сии и UDP-потока. При этом CommView поз­воля­ет ана­лизи­ровать тра­фик вплоть до пакетов про­токо­лов самого низ­кого уров­ня — TCP, UDP, ICMP, а так­же прос­матри­вать «сырые» дан­ные. Прог­рамма показы­вает заголов­ки перех­вачен­ных пакетов, собира­ет под­робную ста­тис­тику IP-тра­фика. Сох­ранен­ные дан­ные мож­но экспор­тировать в 12 раз­личных фор­матов, начиная с .txt и .csv и закан­чивая фай­лами дру­гих ана­лиза­торов вро­де Wireshark.

По­мимо тра­фика на сетевой кар­те, CommView может монито­рить соеди­нения по VPN, а так­же тра­фика, про­ходя­щего через модемы — ана­лого­вые, мобиль­ные, ADSL, ISDN и дру­гие, для чего в сис­тему уста­нав­лива­ется спе­циаль­ный драй­вер. Есть воз­можность перех­вата VoIP-тра­фика и сес­сий SIP-телефо­нии. В сос­тав при­ложе­ния вхо­дит генера­тор пакетов, с помощью которо­го мож­но отпра­вить на задан­ный Ethernet-интерфейс пакет ука­зан­ной дли­ны, с про­изволь­ными заголов­ками и содер­жимым. Есть так­же доволь­но удоб­ный прос­мот­рщик лог‑фай­лов, поз­воля­ющий откры­вать фай­лы жур­налов в отдель­ном окне сниф­фера и выпол­нять поиск по их содер­жимому.

Тул­за, вне вся­ких сом­нений, край­не удоб­ная и полез­ная, если бы не «кусачие» цены на лицен­зию. Для про­фес­сиональ­ного пен­тесте­ра покуп­ка такого инс­тру­мен­та навер­няка будет оправдан­на, но ради того, что­бы разок «гля­нуть сеть», мож­но поис­кать аль­тер­натив­ные — более дешевые или бес­плат­ные решения.

Intercepter-NG

Это тоже очень ста­рый и убе­лен­ный седина­ми инс­тру­мент — впер­вые «Хакер» на­писал о нем еще в 2012 году. C тех пор раз­рабаты­ваемый нашими сооте­чес­твен­никами про­ект не толь­ко не исчез с прос­торов интерне­та, как мно­гие его кон­курен­ты, но даже активно раз­вивал­ся и совер­шенс­тво­вал­ся — пос­ледняя акту­аль­ная редак­ция сниф­фера датиро­вана 2020 годом. Сущес­тву­ет вер­сия прог­раммы для Android в виде .APK-фай­ла и даже кон­соль­ная вер­сия это­го инс­тру­мен­та для Unix.

Продолжение доступно только участникам

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

York - это сниффер для сетевого трафика и анализатор сетевых пакетов в одной программе.

tPacketCapture

Пакетный снифер для Android, использующий VPN вместо root-доступа.

Intercepter-NG

Сетевой парольный сниффер.

Professional Look at Net

Сетевой сканер и сниффер в одной программе.

bkhive

Инструмент для получения syskey bootkey из hive-файла system в Windows NT/2K/XP.

Ettercap

Ettercap – сетевой sniffer/interceptor/logger для switched LAN. Позволяет перехватывать и расшифровывать данные зашифрованных протоколов.

Engage Packet builder

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

Scapy

Scapy - мощная утилита для интерактивной работы с пакетами.

SkyGrabber

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

IP Tools

IP-Tools - это сетевой сниффер.

Network Probe

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

ARP Builder

Утилита для создания и отправки ARP пакетов.

Packit

Packit - сетевая утилита, предоставляющая полный контроль над трафиком IPv4. Бывает очень полезной для тестирования firewall'ов и общего TCP/IP аудитинга.

Etherscan Analyzer

Etherscan Analyzer - продвинутый анализатор сетевого трафика для Windows систем.

TCP Viewer

Утилита TCP Viewer перехватывает и отображает в специальном окошке все данные, пересылаемые между клиентскими процессами по протоколу TCP/IP.

EtherSnoop

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

Analyzer 3.0

программа для анализа сетевых пакетов для Win32 сред

Simple TCP Re-engineering Tool v 1.4.2

Simple TCP Re-engineering Tool контролирует и анализирует данные, переданные между клиентом и сервером через TCP подключение.

Оригинал: 8 best packet sniffers and network analyzers
Автор: Jon Watson
Дата публикации: 22 ноября 2017 года
Перевод: А. Кривошей
Дата перевода: декабрь 2017 г.

Вводная картинка

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

Есть множество утилит, которые собирают сетевой трафик, и большинство из них используют pcap (в Unix-подобных системах) или libcap (в Windows) в качестве ядра. Другой вид утилит помогает анализировать эти данные, так как даже небольшой объем траффика может генерировать тысячи пакетов, в которых трудно ориентироваться. Почти все эти утилиты мало отличаются друг от друга в сборе данных, основные отличия заключаются в том, как они анализируют данные.

Анализ сетевого трафика требует понимания того, как работает сеть. Нет никакого инструмента, который бы волшебным образом заменил знания аналитика об основах работы сети, такие как "3-х этапное рукопожатие" TCP, которое используется для инициирования соединения между двумя устройствами. Аналитики также должны иметь некоторое представление о типах сетевого трафика в нормально функционирующей сети, таких как ARP и DHCP. Это знание важно, потому что аналитические инструменты просто покажут вам то, о чем вы их попросите. Вам решать, что нужно просить. Если вы не знаете, как обычно выглядит ваша сеть, может быть сложно понять, что вы нашли то, что нужно, в массе собранных вами пакетов.

Лучшие снифферы пакетов и анализаторы сети

Промышленные инструменты

Начнем с вершины и далее спустимся к основам. Если вы имеете дело с сетью уровня предприятия, вам понадобится большая пушка. Хотя в основе почти все использует tcpdump (подробнее об этом позже), инструменты уровня предприятия могут решать определенные сложные проблемы, такие как корреляция трафика со множества серверов, предоставление интеллектуальных запросов для выявления проблем, предупреждение об исключениях и создание хороших графиков, чего всегда требует начальство.

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

1. SolarWinds

SolarWinds - это очень большой набор инструментов управления IT. В этой статье более уместна утилита Deep Packet Inspection and Analysis которая является его составной частью. Сбор сетевого трафика довольно прост. С использованием таких инструментов, как WireShark, базовый анализ также не является проблемой. Но не всегда ситуация полностью понятна. В очень загруженной сети может быть трудно определить даже очень простые вещи, например:

- какое приложение в сети создает этот трафик?
- если приложение известно (скажем, веб-браузер), где его пользователи проводят большую часть своего времени?
- какие соединения самые длинные и перегружают сеть?

Большинство сетевых устройств, чтобы убедиться, что пакет идет туда, куда нужно, используют метаданные каждого пакета. Содержимое пакета неизвестно сетевому устройству. Другое дело - глубокая инспекция пакетов; это означает, что проверяется фактическое содержимое пакета. Таким образом можно обнаружить критическую сетевую информацию, которую нельзя почерпнуть из метаданных. Инструменты, подобные тем, которые предоставляются SolarWinds, могут выдавать более значимые данные, чем просто поток трафика.

SolarWinds

Другие технологии управления сетями с большим объемом данных включают NetFlow и sFlow. У каждой есть свои сильные и слабые стороны,

здесь вы можете узнать больше о NetFlow и sFlow.

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

Основы

2. tcpdump

Основным инструментом для сбора сетевого трафика является

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

В некоторых редких случаях достаточно будет выводить захваченные tcpdump данные прямо на экран, чтобы найти то, что вам нужно. Например, при написании этой статьи я собрал трафик и заметил, что моя машина отправляет трафик на IP-адрес, который я не знаю. Оказывается, моя машина отправляла данные на IP-адрес Google 172.217.11.142. Поскольку у меня не было никаких продуктов Google, и не был открыт Gmail, я не знал, почему это происходит. Я проверил свою систему и нашел следующее:

Оказывыается, что даже когда Chrome не работает, он остается запущенным как служба. Я не заметил бы этого без анализа пакетов. Я перехватил еще несколько пакетов данных, но на этот раз дал tcpdump задачу записать данные в файл, который затем открыл в Wireshark (подробнее об этом позже). Вот эти записи:

tcpdump

Tcpdump - любимый инструмент системных администраторов, потому что это утилита командной строки. Для запуска tcpdump не требуется графический интерфейс. Для производственных серверов графический интерфес скорее вреден, так как потребляет системные ресурсы, поэтому предпочтительны программы командной строки. Как и многие современные утилиты, tcpdump имеет очень богатый и сложный язык, который требует некоторого времени для его освоения. Несколько самых базовых команд включают в себя выбор сетевого интерфейса для сбора данных и запись этих данных в файл, чтобы его можно было экспортировать для анализа в другом месте. Для этого используются переключатели -i и -w.

Эта команда создает файл с захваченными данными:

Стандартом для таких файлов является формат pcap. Он не является текстом, поэтому его можно анализировать только с помощью программ, которые понимают данный формат.

3. Windump

Большинство полезных утилит с открытым исходным кодом в конечном итоге клонируют в другие операционные системы. Когда это происходит, говорят, что приложение было перенесено. Windump - это порт tcpdump и ведет себя очень похожим образом.

Самое существенное различие между Windump и tcpdump заключается в том, что Windump нуждается в библиотеке Winpcap, установленной до запуска Windump. Несмотря на то, что Windump и Winpcap предоставляются одним и тем же майнтайнером, их нужно скачивать отдельно.

Winpcap - это библиотека, которая должна быть предварительно установлена. Но Windump - это exe-файл, который не нуждается в установке, поэтому его можно просто запускать. Это нужно иметь в виду, если вы используете сеть Windows. Вам не обязательно устанавливать Windump на каждой машине, поскольку вы можете просто копировать его по мере необходимости, но вам понадобится Winpcap для поддержки Windup.

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

4. Wireshark

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

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

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

Запуск Wireshark

Одной из самых полезных возможностей Wireshark является возможность следовать за потоком. Лучше всего представить поток как цепочку. На скриншоте ниже мы можем видеть множество захваченных данных, но меня больше всего интересовал IP-адрес Google. Я могу щелкнуть правой кнопкой мыши и следовать потоку TCP, чтобы увидеть всю цепочку.

Следование за потоком

Если захват трафика производился на другом компьютере, вы можете импортировать файл PCAP с помощью диалога Wireshark File -> Open. Для импортированных файлов доступны те же фильтры и инструменты, что и для захваченных сетевых данных.

Открытие файла pcap

5. tshark

Tshark - это очень полезное звено между tcpdump и Wireshark. Tcpdump превосходит их при сборе данных и может хирургически извлекать только те данные, которые вам нужны, однако его возможности анализа данных очень ограничены. Wireshark отлично справляется как с захватом, так и с анализом, но имеет тяжелый пользовательский интерфейс и не может использоваться на серверах без графического интерфейса. Попробуйте tshark, он работает в командной строке.

Если вы хотите записать трафик в файл, используйте для этого параметр-W, а затем переключатель -r (чтение), чтобы прочитать его.

Прочитайте его здесь же, или перенесите в другое место для анализа.

6. Network Miner

Network Miner - это очень интересный инструмент, который скорее попадает в категорию инструментов сетевого криминалистического анализа, а не просто снифферов. Сфера криминалистики, как правило, занимается расследованиями и сбором доказательств, и Network Miner выполняет эту работу просто отлично. Также, как wireshark может следовать потоку TCP, чтобы восстановить всю цепочку передачи паков, Network Miner может следовать потоку для того, чтобы восстановить файлы, которые были переданы по сети.

Network Miner

Network Miner может быть стратегически размещен в сети, чтобы иметь возможность наблюдать и собирать трафик, который вас интересует, в режиме реального времени. Он не будет генерировать свой собственный трафик в сети, поэтому будет работать скрытно.

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

Network Miner сделан для Windows, но с помощью Mono он может быть запущен в любой ОС, которая поддерживает платформу Mono, например Linux и MacOS.

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

Fiddler

Fiddler является бесплатным и, так же, как Network Miner, он может быть запущен в Mono практически на любой операционной системе.

8. Capsa

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

Capsa

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

Capsa доступна только для Windows 2008/Vista/7/8 и 10.

Заключение

Несложно понять, как с помощью описанных нами инструментов системный админимтратор может создать инфраструктуру мониторинга сети. Tcpdump или Windump могут быть установлены на всех серверах. Планировщик, такой как cron или планировщик Windows, в нужный момент запускает сеанса сбора пакетов и записывает собранные данные в файл pcap. Далее системный администратор может передать эти пакеты центральной машине и анализировать их с помощью wireshark. Если сеть слишком велика для этого, имеются инструменты корпоративного уровня, такие как SolarWinds, чтобы превратить все сетевые пакеты в управляемый набор данных.

Читайте также: