Как использовать фильтры в Wireshark

Зачем нужны фильтры
Wireshark — это свободное ПО для анализа сетевого трафика. В боевой сети объём пакетов может быть огромен: без фильтров вы быстро утонете в миллионах строк. Фильтры позволяют сфокусироваться только на нужных пакетах — экономя время и упрощая расследование.
Важно: фильтры не изменяют трафик — они только ограничивают то, что вы видите или сохраняете.
Основная идея: два типа фильтров
- Capture фильтры (фильтры захвата) применяются до начала записи пакетов. Они решают, какие пакеты попадут в файл захвата.
- Display фильтры (фильтры отображения) применяются после захвата и скрывают из вида ненужные пакеты, позволяя анализировать только релевантные.
Коротко:
- Capture = уменьшает объём сохранённых данных. Нельзя менять во время захвата.
- Display = гибко фильтрует отображение. Можно менять в реальном времени.
Где задаются capture фильтры
Capture фильтр можно ввести на стартовом экране Wireshark или через меню Capture → Options. Альтернативно — нажать на значок шестерёнки в панели Capture, и откроется окно настроек интерфейса.



Синтаксис capture фильтров
Capture фильтры используют формат libpcap. Это простая последовательность примитивов, объединённых логическими связками и опциональным not. Обобщённый шаблон:
[not] primitive [and|or [not] primitive ...]Пример: захват всех UDP-пакетов от или к хосту 192.168.18.161:
udp and host 192.168.18.161Частые примитивы:
- [src|dst] host
— фильтрация по IP-адресу или имени хоста (источник/назначение). - ether [src|dst] host
— фильтрация по Ethernet MAC-адресу. - gateway host
— пакеты, прошедшие через указанный шлюз. - [src|dst] net
[{mask }|{len }] — фильтрация по сети или префиксу. - [tcp|udp] [src|dst] port
— фильтрация по порту TCP/UDP.
Примеры полезных capture фильтров:
- Только трафик к веб-серверу: tcp and dst port 80
- Весь трафик между двумя хостами: host 10.0.0.5 and host 10.0.0.10
- Все пакеты, кроме ARP: not arp
Примечание: синтаксис libpcap чувствителен к пробелам и порядку ключевых слов.
Display фильтры: что и как
Display фильтры используют вложенную семантику протоколов Wireshark и выражения в стиле “поле оператора значение”. Они мощнее и позволяют фильтровать по полям заголовков и значимым значениям протоколов.
Пример — показать TCP-пакеты, использующие порт 80:
tcp and tcp.port == 80Альтернативная запись эквивалентна:
tcp && tcp.port == 80Частые операторы display фильтров:
- == или eq — равно
- != или ne — не равно
- && или and — логическое И
- || или or — логическое ИЛИ
- ! или not — отрицание
- contains — содержит (для строк/байтов)
- matches — регулярное соответствие
Пример: показать HTTP-запросы от конкретного клиента на порт 80 с методом GET:
ip.addr == 10.0.0.5 && http.request.method == "GET"
Как выбирать: capture или display
Правило простое:
- Если вы знаете заранее, что нужных пакетов немного и хотите сэкономить место на записи — используйте capture фильтр.
- Если вы хотите собрать максимум данных для последующего гибкого анализа — соберите всё и применяйте display фильтры уже после захвата.
Критерии выбора (короткая методика):
- Определите цель расследования (поиск проблем, аудит, длительный мониторинг).
- Оцените пропускную способность и объём записи (есть ли дисковое/сетевое место?).
- Если трафика очень много и диска мало — задайте строгий capture фильтр.
- Иначе — захватите широкую выборку и используйте display фильтры для точной фильтрации.
Быстрый справочник — шпаргалка
Capture фильтры (libpcap):
udp and host 192.168.18.161
tcp and dst port 443
src net 10.0.0.0/24 and not dst net 10.0.1.0/24Display фильтры (Wireshark fields):
tcp && tcp.port == 80
ip.src == 192.168.0.5 && dns
http.request.method == "POST"Форматы полей display фильтров можно просматривать через меню Analyze → Display Filters или автодополнение в поле фильтра.
Чек-листы по ролям
Сетевой администратор:
- Подготовить список IP/сегментов для мониторинга.
- Настроить capture фильтр для ключевых сервисов.
- Проверить диск и ротацию логов захвата.
Инцидент-респондер:
- Захватить широкую сессию (если есть место) или ключевые интерфейсы.
- Применить display фильтры для сужения по времени, IP и портам.
- Экспортировать подозрительные сессии в pcap для дальнейшего анализа.
Разработчик/QA:
- Использовать display фильтры по портам и протоколам приложения.
- Проверять содержимое HTTP/HTTPS (где доступно) и заголовки.
- Сохранять воспроизводимые трассы для регрессионных тестов.
Студент/изучающий:
- Начать с простых примеров: отфильтровать ICMP, TCP и UDP.
- Параллельно изучать структуру пакета в панели Packet Details.
Приёмы и частые ошибки
Важно:
- Не путайте capture и display фильтры — они используют разные синтаксисы.
- Capture фильтры не понимают многих полей, доступных в display фильтрах (например, http.request.method).
- Если capture фильтр записал слишком мало, вернуть данные нельзя — придётся перехватить заново.
Когда фильтры не помогают:
- Трафик шифрован (TLS) — видимые поля ограничены; смотрите на IP/порты/сертификаты.
- Трафик проходит через туннель или VPN — адреса могут быть маскированными.
Альтернативы и дополняющие инструменты:
- tcpdump для быстрого захвата в консоли (использует тот же синтаксис libpcap).
- tshark — консольная версия Wireshark для автоматизации.
- Специализированные NDR/IDS-системы для постоянного анализа трафика.
Мини‑методика расследования сети с помощью Wireshark
- Определите временной интервал и интерфейс для захвата.
- Решите, использовать ли capture фильтр (экономия места) или захватить всё.
- Проведите захват с метками времени и сохраните pcap файл.
- Примените display фильтры для сужения: сначала по IP/порту, затем по протоколам.
- Извлеките сессии (Follow TCP/UDP stream) и анализируйте полезную нагрузку.
- Зафиксируйте обнаружения и экспортируйте артефакты.
Критерии приёмки
- Захват содержит пакеты из нужного временного окна и интерфейса.
- Display фильтры выделяют релевантные сессии без пропуска критичных пакетов.
- Экспортируемые pcap-файлы открываются и содержат ожидаемые пакеты.
Быстрый факт-бокс
- Типы фильтров: 2 (capture, display).
- Форматы: libpcap (capture), Wireshark fields (display).
- Использование: capture экономит место, display даёт гибкость.
Небольшая галерея пограничных случаев
- Capture фильтр по MAC-адресу не сработает, если интерфейс в режиме мониторинга модифицирует заголовки.
- Display фильтр по http.request.method не покажет содержимое для HTTPS-сессий без расшифровки.
Чек-лист тестов / приемки
- Проверить, что capture фильтр корректно исключает нежелательные протоколы.
- Убедиться, что display фильтр по ключевому полю возвращает ожидаемый набор пакетов.
- Провести контрольный захват и повторно применить фильтры для верификации.
Короткий глоссарий
- Capture фильтр — правило libpcap, ограничивающее, какие пакеты будут записаны.
- Display фильтр — правило в синтаксисе Wireshark, скрывающее ненужные пакеты при просмотре.
- pcap — формат файла захвата пакетов.
Заключение
Фильтры — основной инструмент эффективного анализа в Wireshark. Научившись различать capture и display фильтры и применяя приведённые шаблоны и чек-листы, вы сможете быстрее находить нужные пакеты и корректно документировать результаты диагностики.
Если хотите продолжить практику — попробуйте повторить примеры на тестовой сети и сравнить результаты при разных вариантах capture фильтров. Для подробной справки посетите официальный сайт Wireshark:
Важно: всегда соблюдайте политику конфиденциальности и правила доступа при перехвате трафика в рабочих сетях.
Похожие материалы
Несколько аккаунтов Skype: Multi Skype Launcher
Журнал для работы: повысить продуктивность
Персональные звуки уведомлений на Android
Скачивание шоу Hulu для офлайн‑просмотра
Microsoft Start: персонализированная новостная лента