Detecting ARP scanning with Wireshark filter

Обнаружение сетевых атак с помощью Wireshark

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

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

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

Выявление обнаруженого хоста (разведка)

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

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

Вот сводная таблица с более подробной информацией ниже:

Technique Wireshark Filter Command / Tool
ARP scanning arp.dst.hw_mac==00:00:00:00:00:00 arp-scan -l
IP protocol scan icmp.type==3 and icmp.code==2 nmap -sO <target>
ICMP ping sweep icmp.type==8 or icmp.type==0 nmap -sn -PE <subnet>
TCP ping sweeps tcp.dstport==7 nmap -sn -PS/-PA <subnet>
UDP ping sweeps udp.dstport==7 nmap -sn -PU <subnet>

ARP сканирование

Вот фильтр Wireshark для определения сканирования ARP (метод обнаружения хоста на уровне 2):

arp.dst.hw_mac==00:00:00:00:00:00

Так выглядит сканирование ARP в Wireshark:

Detecting ARP scanning with Wireshark filter

Во время сканирования ARP злоумышленник обычно отправляет большое количество широковещательных запросов ARP (ff: ff: ff: ff: ff: ff), направленных на MAC-адрес 00: 00: 00: 00: 00: 00, чтобы узнать действующие IP-адреса в локальной сети. Обычно мы видим что-то вроде этого:

Who has 192.168.0.1? Tell 192.168.0.53

Who has 192.168.0.2? Tell 192.168.0.53

Who has 192.168.0.3? Tell 192.168.0.53

Who has 192.168.0.4? Tell 192.168.0.53

Who has 192.168.0.5? Tell 192.168.0.53

В этом случае злоумышленник имеет IP-адрес 192.168.0.53.

Если мы видим множество этих ARP-запросов, запрашивающих множество разных IP-адресов за короткий период времени, вполне вероятно, что кто-то пытается обнаружить действующие IP-адреса в нашей сети с помощью ARP-сканирования (например, запустив arp-scan -l) …

Сканирование протокола IP

Вот фильтр Wireshark для идентификации сканирования IP-протокола:

icmp.type==3 and icmp.code==2

Так выглядит сканирование IP-протокола в Wireshark:

Detecting IP Protocol scanning with Wireshark filter

Сканирование IP-протокола — это метод, который позволяет злоумышленнику узнать, какие сетевые протоколы поддерживаются целевой операционной системой (например, запустив nmap -sO _1_).

При сканировании IP-протокола мы, скорее всего, увидим много сообщений ICMP типа 3 (адресат недоступен) с кодом 2 (протокол недоступен), поскольку злоумышленник обычно отправляет большое количество пакетов с разными номерами протоколов.

При сканировании IP-протокола мы, скорее всего, увидим много сообщений ICMP типа 3 (адресат недоступен) с кодом 2 (протокол недоступен), поскольку злоумышленник обычно отправляет большое количество пакетов с разными номерами протоколов.

При сканировании IP-протокола мы, скорее всего, увидим много сообщений ICMP типа 3 (адресат недоступен) с кодом 2 (протокол недоступен), поскольку злоумышленник обычно отправляет большое количество пакетов с разными номерами протоколов.

Проверка связи ICMP

Вот фильтр Wireshark для обнаружения пакетов ping ICMP (метод обнаружения хоста на уровне 3):

icmp.type==8 or icmp.type==0

Так выглядит очистка ICMP ping в Wireshark:

Detecting ICMP ping sweeps with Wireshark filter

С помощью этого фильтра мы фильтруем эхо-запросы ICMP (тип 8) или эхо-ответы ICMP (тип 0).

Если мы видим слишком много таких пакетов за короткий промежуток времени, нацеленных на множество разных IP-адресов, то, вероятно, мы видим эхо-запросы ICMP. Кто-то пытается определить все действующие IP-адреса в нашей сети (например, запустив nmap -sn -PE <subnet>).

Проверка связи TCP

Вот фильтр Wireshark для обнаружения пакетов TCP ping (метод обнаружения хоста на уровне 4):

tcp.dstport==7

Вот как выглядит очистка TCP ping в Wireshark:

Detecting TCP ping sweeps with Wireshark filter

TCP ping обычно использует порт 7 (эхо). Если мы видим, что больше этого трафика направляется на множество разных IP-адресов, это означает, что кто-то, вероятно, выполняет проверку связи TCP, чтобы найти активные хосты в сети (например, запустив nmap -sn -PS / -PA <subnet>).

UDP ping развертки

Вот фильтр Wireshark для обнаружения пакетов ping UDP (метод обнаружения хоста на уровне 4):

udp.dstport==7

Вот как выглядит очистка UDP ping в Wireshark:

Detecting UDP ping sweeps with Wireshark filter

Подобно TCP, UDP ping обычно использует порт 7 (эхо). Если большой объем такого трафика направляется на множество разных IP-адресов, это означает, что кто-то, вероятно, выполняет пинг UDP, чтобы найти активные хосты в сети (например, запустив nmap -sn -PU <subnet>).

Обнаружение сканирования сетевых портов

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

 

Technique Wireshark Filter Command / Tool
TCP SYN scan tcp.flags.syn==1 and tcp.flags.ack==0 and tcp.window_size<=1024 nmap -sS <target>
TCP Connect() scan tcp.flags.syn==1 and tcp.flags.ack==0 and tcp.window_size>1024 nmap -sT <target>
TCP Null scan tcp.flags==0 nmap -sN <target>
TCP FIN scan tcp.flags==0x001 nmap -sF <target>
TCP Xmass scan tcp.flags.fin==1 && tcp.flags.push==1 && tcp.flags.urg==1 nmap -sX <target>
UDP port scan icmp.type==3 and icmp.code==3 nmap -sU <target>

TCP SYN / скрытое сканирование

Вот фильтр Wireshark для обнаружения TCP SYN / сканирования скрытых портов, также известного как TCP Half-Open Scan:

tcp.flags.syn==1 and tcp.flags.ack==0 and tcp.window_size <= 1024

Вот как выглядит сканирование TCP SYN в Wireshark:

Detecting TCP SYN stealth scan with Wireshark filter

В этом случае мы фильтруем TCP-пакеты с помощью:

      • Установлен флаг SYN
      • Флаг ACK не установлен
      • Размер окна <= 1024 байта

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

В частности, небольшой размер окна является характерным параметром, используемым такими инструментами, как nmap или massscan во время сканирования SYN, что указывает на то, что данных будет очень мало или вообще не будет.

Если мы видим слишком много таких пакетов за короткое время, скорее всего, кто-то делает:

      • SYN-сканирование в нашей сети (например, путем запуска nmap -sS <target>)
      • Порт SYN просматривает сеть (например, запустив nmap -sS -pXX <subnet>)
      • SYN-флуд (метод отказа в обслуживании)

TCP Connect () сканирование

Вот фильтр Wireshark для обнаружения сканирования портов TCP Connect ():

tcp.flags.syn==1 and tcp.flags.ack==0 and tcp.window_size > 1024

Вот как выглядит сканирование TCP Connect () в Wireshark:

Detecting TCP Connect() scan with Wireshark filter

В этом случае мы фильтруем TCP-пакеты с помощью:

      • Установлен флаг SYN
      • Флаг ACK не установлен
      • Размер окна> 1024 байта

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

Если мы видим слишком много таких пакетов за короткий промежуток времени, скорее всего, кто-то делает:

      • Сканирование портов в нашей сети (например, путем запуска nmap -sT <target>)
      • Порт просматривает сеть (например, запустив nmap -sT -pXX <subnet>)

TCP Null сканирование

Вот фильтр Wireshark для определения сканирования TCP Null:

tcp.flags==0

Вот как выглядит сканирование TCP Null в Wireshark:

Detecting TCP Null scan with Wireshark filter

TCP Null сканирование работает путем отправки пакетов без установленных флагов. Это потенциально может проникнуть в некоторые брандмауэры и обнаружить открытые порты.

Если мы видим такие пакеты в нашей сети, вероятно, кто-то выполняет сканирование TCP null (например, запустив nmap -sN <target>).

TCP FIN сканирование

Вот фильтр Wireshark для определения сканирования TCP FIN:

tcp.flags==0x001

Вот как выглядит сканирование TCP FIN в Wireshark:

Detecting TCP FIN scan with Wireshark filter

Сканирование TCP FIN отличается тем, что отправляет только пакеты с установленным флагом FIN. Это может (все еще) потенциально проникнуть в некоторые брандмауэры и обнаружить открытые порты.

Если мы видим слишком много таких пакетов в нашей сети, вероятно, кто-то выполняет сканирование TCP FIN (например, запускает nmap -sF <target> ).

TCP Xmass сканирование

Вот фильтр Wireshark для обнаружения сканирования TCP Xmass:

tcp.flags.fin==1 && tcp.flags.push==1 && tcp.flags.urg==1

Вот как выглядит сканирование TCP Xmass в Wireshark:

Detecting TCP Xmass scan with Wireshark filter

Сканирование TCP Xmass работает путем отправки пакетов с установленными флагами FIN, PUSH и URG. Это еще один метод проникновения в некоторые брандмауэры для обнаружения открытых портов.

Если мы видим такие пакеты в нашей сети, вероятно, кто-то запускает сканирование TCP Xmass (например, запускает nmap -sX <target>).

Сканирование порта UDP

Вот фильтр Wireshark для определения сканирования UDP-портов:

icmp.type==3 and icmp.code==3

Вот как выглядит сканирование UDP-порта в Wireshark:

Detecting UDP port scan with Wireshark filter

Хорошим индикатором продолжающегося сканирования порта UDP является большое количество пакетов ICMP в нашей сети, а именно ICMP типа 3 (пункт назначения недоступен) с кодом 3 (порт недоступен). Эти конкретные сообщения ICMP указывают на то, что удаленный порт UDP закрыт.

Если мы видим большое количество этих пакетов в нашей сети за короткий промежуток времени, это, скорее всего, означает, что кто-то сканирует порт UDP (например, запускает nmap -sU <target>).

Обнаружение сетевых атак

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

Вот сводная таблица с более подробной информацией ниже:

 

Technique Wireshark Filter Command / Tool
ARP poisoning arp.duplicate-address-detected or arp.duplicate-address-frame arpspoof, ettercap
ICMP flood icmp and data.len > 48 fping, hping
VLAN hoping dtp or vlan.too_many_tags frogger, yersinia
Unexplained packet loss tcp.analysis.lost_segment or tcp.analysis.retransmission n/a

 

ARP отравление

Вот фильтр Wireshark для обнаружения отравления ARP:

arp.duplicate-address-detected or arp.duplicate-address-frame

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

ARP Poisoning (также известный как ARP Spoofing) — это метод, используемый для перехвата сетевого трафика между маршрутизатором и другими клиентами в локальной сети. Это позволяет злоумышленнику выполнять атаки типа «человек посередине» (MitM) на соседние компьютеры в локальной сети с помощью таких инструментов, как arpspoof, ettercap и других.

ICMP флуд

Вот как с помощью фильтра Wireshark обнаружить наводнение ICMP (метод отказа в обслуживании):

icmp and data.len > 48

Вот так выглядит атака ICMP flood в Wireshark:

Detecting ICMP flood DoS with Wireshark filter

Типичный стандартный ICMP ping отправляет пакеты с 32 байтами данных (команда ping в Windows) или 48 байтами (команда ping в Linux).

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

Злоумышленники часто используют такие инструменты, как fping или hping, для выполнения ICMP-лавинной рассылки.

Надежда на VLAN

Вот фильтр Wireshark для обнаружения надежды VLAN на сеть:

dtp or vlan.too_many_tags

Вот как выглядит атака с надеждой на VLAN в Wireshark:

Detecting VLAN hoping with Wireshark filter

Hope for VLAN — это метод обхода контроля доступа к сети (NAC), который часто используется злоумышленниками, пытающимися получить доступ к различным VLAN путем неправильной настройки коммутаторов Cisco.

Верным индикатором надежды VLAN является наличие пакетов DTP или пакетов, отмеченных несколькими тегами VLAN.

Если мы видим такие пакеты в нашей сети, возможно, кто-то пытается выполнить VLAN в надежде использовать, например, утилиты frogger или yersinia.

Необъяснимая потеря пакетов

Вот фильтр для обнаружения потери пакетов в сети:

tcp.analysis.lost_segment or tcp.analysis.retransmission

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

Такая ситуация в Wireshark, безусловно, заслуживает дальнейшего изучения.

Обнаружение атак на беспроводные сети

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

Вот сводная таблица с более подробной информацией ниже:

 

Technique Wireshark Filter Command / Tool
Client deauthentication wlan.fc.type_subtype == 12 aireplay-ng, mdk3, mdk4
Client disassociation wlan.fc.type_subtype == 10 mdk3, mdk4
Fake AP beacon flood wlan.fc.type_subtype == 8 mdk3, mdk4
Authentication DoS wlan.fc.type_subtype == 11 mdk3, mdk4

 

Деаутентификация клиента

Вот фильтр Wireshark для обнаружения фреймов деаутентификации в беспроводных сетях:

wlan.fc.type_subtype == 12

Вот как выглядит атака беспроводной деаутентификации в Wireshark:

Detecting WiFi deauthentication attack with Wireshark filter

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

Это хорошо известный метод взлома беспроводных сетей PSK (Pre-shared Key). Как только злоумышленник собирает 4-стороннее рукопожатие WPA, он может попытаться взломать его и, таким образом, получить пароль в открытом виде и получить доступ к сети.

Более подробную информацию об атаках деаутентификации можно найти здесь.

Диссоциация клиента

Вот фильтр Wireshark для обнаружения фреймов диссоциации в беспроводных сетях:

wlan.fc.type_subtype == 10

Вот как выглядит атака беспроводной диссоциации в Wireshark:

Detecting WiFi disassociation attack with Wireshark filter

Атака диссоциации — это еще один тип атаки на беспроводные сети на основе PSK, который работает против WPA / WPA2. Идея этой атаки заключается в том, что злоумышленник отправляет 10 (отключение) кадров, которые отключают всех клиентов от целевой точки доступа.

Для злоумышленника может быть даже более эффективным собирать 4-сторонние рукопожатия. Злоумышленник может (снова) попытаться взломать один из них и, возможно, получить пароль в открытом виде и получить доступ к сети.

Этот тип атаки может быть выполнен с помощью таких инструментов, как mdk3 или mdk4 (например, запустив mdk4 wlan0mon d).

Поддельное наводнение маяка AP

Вот фильтр Wireshark для обнаружения лавинной рассылки ложных AP-маяков в беспроводных сетях:

wlan.fc.type_subtype == 8

Вот как в Wireshark выглядит атака наводнения беспроводных AP-маяков:

Detecting WiFi fake AP beacon flood DoS attack with Wireshark filter

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

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

Такую атаку можно провести с помощью таких инструментов, как mdk3 или mdk4 (например, запустив mdk4 wlan0mon b).

Отказ в обслуживании аутентификации

Вот фильтр Wireshark для обнаружения атак типа «отказ в обслуживании» с аутентификацией в беспроводных сетях:

wlan.fc.type_subtype == 11

Вот так выглядит DoS-атака беспроводной аутентификации в Wireshark:

Detecting WiFi  authentication DoS attack on AP with Wireshark filter

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

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

Этот тип атаки может быть осуществлен с помощью таких инструментов, как mdk3 или mdk4 (например, запустив mdk4 wlan0mon a).

Вывод

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

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Click to rate this post!
[Total: 2 Average: 5]

1 comments On Обнаружение сетевых атак с помощью Wireshark

  • Очень хорошая статья, без лишних слов, все по делу.
    Автор спасибо!

Leave a reply:

Your email address will not be published.