Анализатор трафика
Анализатор трафика (англ. traffic analyzer), также известный как анализатор пакетов (англ. packet analyzer), сниффер (англ. sniffer), анализатор протоколов (англ. protocol analyzer), или анализатор сетевого трафика (англ. network analyzer), — это компьютерная программа или устройство для захвата пакетов (аппаратный анализатор), которая осуществляет анализ трафика и логирование (ведение журналов) сетевого трафика, проходящего через компьютерную сеть или её сегмент[1][2][3][4][5][6][7][8] Анализатор трафика осуществляет захват, остановку и фиксацию (логирование) сетевого трафика. Когда потоки данных проходят через сеть, анализатор перехватывает каждый сетевой пакет, при необходимости декодирует их содержимое и отображает значения разных полей, а также анализирует содержимое в соответствии с RFC или иными спецификациями.
Для перехвата трафика в беспроводных сетях применяются беспроводные анализаторы трафика или Wi-Fi анализаторы. Хотя понятия анализатора пакетов, анализатора протоколов и сетевого анализатора часто используются как синонимы, термин «анализатор протоколов» может также обозначать более широкий класс устройств и программ, охватывающий, в том числе, анализаторы трафика[9]. На практике эти термины зачастую употребляются взаимозаменяемо[10].
Возможности
В кабельных локальных вычислительных сетях, таких как Ethernet, Token Ring и FDDI, в зависимости от структуры сети (с использованием концентратора или коммутатора)[11], возможно захватывать весь проходящий по сети трафик с одной машины. В современных сетях данные чаще всего собираются с помощью коммутатора с поддержкой зеркалирования портов, когда все пакеты с выбранного порта дублируются на другой порт для анализа. Сетевые тапы считаются более надёжным решением по сравнению с зеркалированием, так как с меньшей вероятностью теряют пакеты при большой нагрузке.
В беспроводных локальных сетях захват трафика может вестись на одном или сразу нескольких каналах посредством использования нескольких адаптеров.
Для перехвата одновременного обмена данными между другими устройствами (юникаст-трафик) сетевой адаптер анализатора должен работать в промискуитетном режиме. В беспроводных сетях даже при включении промискуитетного режима возможно игнорирование пакетов, не адресованных данной точке; чтобы анализировать их, требуется перевод адаптера в мониторинговый режим. Для захвата многоадресного и широковещательного трафика дополнительных условий не требуется. Анализатор может записывать как весь пакет целиком, так и только его заголовки. Запись только заголовков уменьшает требования к объёму хранения и помогает избежать некоторых вопросов конфиденциальности, но обычно достаточна для диагностики сетевых проблем.
Полученные данные преобразуются в читаемый формат, что позволяет инженерам анализировать содержимое. Возможности по отображению и анализу информации варьируются в зависимости от анализатора.
Некоторые анализаторы протоколов могут не только захватывать, но и генерировать сетевой трафик, используясь в качестве тестовых устройств. Такие устройства создают корректный с точки зрения протокола трафик для функциональных тестов, а также могут намеренно вводить ошибки с целью проверки обработки исключительных ситуаций устройством под тестированием[12][13].
Анализаторы могут быть реализованы на аппаратном уровне с записью пакетов или их заголовков на дисковые массивы.
Применение
Анализаторы трафика позволяют:
- Анализировать сетевые проблемы;
- Обнаруживать попытки сетевых атак;
- Выявлять нарушения или злоупотребления со стороны внутренних/внешних пользователей;
- Документировать соответствие нормативным требованиям путём журналирования всего периметрального и конечного трафика;
- Получать информацию для атаки на сеть (разведка при несанкционированном доступе);
- Определять сбор и обмен данными программным обеспечением (например, операционными системами) для укрепления управления, приватности и безопасности;
- Изолировать скомпрометированные системы путём сбора сведений о нарушениях;
- Контролировать использование полосы пропускания WAN;
- Отслеживать сетевую активность всех пользователей и устройств;
- Наблюдать за данными «на лету»;
- Определять состояние WAN-сетей и конечных точек;
- Собирать и формировать отчёты по сетевой статистике;
- Определять вредоносный или аномальный контент в трафике сети;
- Диагностировать производительность приложений путём анализа сетевого трафика;
- Служить основным источником данных для повседневного мониторинга и управления сетью;
- Проводить мониторинг других пользователей сети, перехватывать критичные данные (например, логины, куки — только если используется незашифрованный протокол);
- Реализовывать реверс-инжиниринг закрытых протоколов;
- Отлаживать коммуникацию в типах клиент/сервер;
- Отлаживать реализацию сетевых протоколов;
- Подтверждать корректность изменений сети (добавление, перемещение, модификация);
- Проверять эффективность работы межсетевых экранов, систем контроля доступа, веб-фильтров, антиспам-фильтров и прокси.
Технологии захвата сетевых данных используются правоохранительными органами по решению суда для прослушивания всего сетевого трафика, создаваемого конкретным лицом. Интернет-провайдеры и провайдеры голосовой связи в США обязаны обеспечивать выполнение требований закона Communications Assistance for Law Enforcement Act. Телекоммуникационные операторы, применяющие технологию захвата и хранения пакетов, могут обеспечивать юридически требуемый защищённый доступ к трафику и использовать эти системы для нужд внутренней безопасности. Сбор данных без разрешения суда является нарушением законодательства. Использование сквозного шифрования позволяет скрывать содержимое даже от операторов и государственных органов.
Процесс
Анализатор трафика включает сетевой интерфейс в промискуитетный режим. В этом режиме карта способна перехватывать все пакеты из заданного сегмента сети. Этот режим позволяет считывать сырые двоичные данные с линии для последующей обработки.
Перехваченные двоичные данные переводятся в человеко-читаемый формат, доступный для первичного анализа.
На этом этапе проводится более глубокое изучение полученных данных. Анализатор трафика проверяет протокол обмена и анализирует специфические характеристики протокола на основании извлечённой информации.
Более сложный анализ осуществляет сравнение нескольких пакетов и элементов обмена в сети одновременно.
Известные анализаторы трафика
- Allegro Network Multimeter
- Capsa Network Analyzer
- Charles Web Debugging Proxy
- Carnivore
- CommView
- dSniff
- EndaceProbe Packet Capture Platform
- Ettercap
- Justniffer
- Fiddler
- Kismet
- Lanmeter
- Microsoft Network Monitor
- NarusInsight
- NetScout Systems nGenius Infinistream
- ngrep
- OmniPeek (Omnipliance by Savvius)
- SkyGrabber
- Sniffer
- snoop
- tcpdump
- Observer Analyzer
- Wireshark (ранее известен как Ethereal)
- Xplico (инструмент открытого кода для сетевого судебного анализа)
Примечания
Литература
- Chris Sander. Practical Packet Analysis. — 3. — No Starch Press, 2017. — ISBN 9781593278021.