Опережая выводы этой статьи можно смело заявить, что домашний WiFi роутер безопасен ровно настолько, насколько сложен его пароль.
Возьмем для эксперимента домашний роутер со “словарным” паролем и попробуем его взломать самостоятельно.
Что нам потребуется?
Дистрибутив Kali Linux (или любой другой с установленным Aircrack-ng).
Запускаем терминал.
Первым делом переведем наш беспроводной адаптер в режим monitor. Это позволит ему захватывать “эфир”.
# airmon-ng start wlan0
Здесь видим, что режим монитора включен на новом интерфейсе mon0, который будем использовать дальше.
Некоторую долю безопасности нам даст смена своего MAC-адреса.
# macchanger mon0
узнаем текущий MAC.
Уложим интерфейс:
# ifconfig mon0 down
Сменим MAC на некоторый похожий
# macchanger -m <mac> mon0
Не забываем поднять интерфейс
# ifconfig mon0 up
Теперь посмотрим, какие пакеты мы вообще ловим:
# airodump-ng mon0
Слева вверху – перебор каналов.
Вот обратите внимание, я выделил желтым одну сеть – до неё самый лучший сигнал (PWR). Чем меньше число (по модулю), тем лучше сигнал. Точки с сигналом > 80 – можно даже не ковырять – не рентабельно, слишком далеко. Ну либо антенну помощнее на приём ставить. Мы обойдёмся штатными средствами.
Итак, есть BSSID (MAC-адрес точки), PwR – мощность источника, Beacons – широковещательные пакеты, по их интенсивности можно косвенно судить о качестве сигнала. CH – канал, на котором работает точка, ENC – модель шифрования. У нас WPA2 – достаточно сложное. Но таких большинство. Если встретится WPS – там все ломается в разы быстрее. ESSID – литерное название точки, “имя”.
Итак, определились с каналом (первый). Уточним, что там вообще есть:
# airodump-ng mon0 --channel 1
Список гораздо больше. Потому что часть точек перекрывает друг друга, зашумляя. Ну всё, мы окончательно выбрали точку с сигналом -30. Тут нарисовалась какая-то с -1, но это какой-то глюк. Скопируем BSSID точки в буфер обмена.
Теперь отфильтруем только эту точку. И заодно посмотрим, какие клиенты к ней подключены.
# airodump-ng mon0 --channel 1 --bssid <mac>
Так, мы нашли клиента. Его MAC-адрес в разделе STATION, показал стрелкой. Скопируем его.
Теперь, кстати, наберем ту же самую команду, но только пакеты будем захватывать в файл, для последующего анализа и подбора пароля.
Для этого в предыдущую команду допишем -w <путь к файлу>
# airodump-ng mon0 --channel 1 --bssid <mac> -w /var/log/sniff1.cap
Теперь дожидаемся, пока к точке подключится новая станция. Ну либо принудительно разорвём установленное соединение клиента с точкой доступа, чтобы он к ней переподключился и передал аутентификационные данные (рукопожатие).
# aireplay-ng -0 1 -a <mac точки> -c <mac клиента> mon0
В отдельном терминале запустим эту команду и пошлём пакеты DeAuth, на разрыв соединения точки с клиентом.
Оп-па! Вот тут мы заловили WPA handshake – аутентификационные данные точки. Отменяем захват Ctrl+C. Теперь надо подобрать пароль к шифрованному 4-хстороннему рукопожатию и всё, мы раскрыли секрет.
Проанализируем результирующий файл при помощи встроенного крякера:
# aircrack-ng /var/log/sniff1*.cap
Он подтвердит, что есть один хендшейк и покажет характеристики точки BSSID и ESSID (mac и символьное имя). Так же предложит указать словарь для перебора.
Укажем ему словарь (их полно на просторах Интернета).
И всё. Остается только ждать.
Ключик подобран. Конечно, я с самого начала знал, что он найдётся – я специально установил парольную фразу из этого словаря. Но скорость перебора очевидна – невысокая. Полторы тысячи ключей в секунду. На видеокарте ATI 5700 Series скорость до 22.000 k/s. Есть две ATI 6800 серии, планирую проверить её на скорость.А теперь некоторые выводы из нашего текущего эксперимента.
- Никто не пострадал. Это был мой роутер, мой пароль. )
- Использовать пароль нужно длинный и несловарный. Это повлияет на скорость перебора. Лучше всего > 12 символов с буквами и цифрами и спецзнаками.
- Ввести контроль MAC-адресов, позволять вести трафик только с доверенных. Это не панацея, но усложнит немного жизнь. Периодически производить мониторинг сохраненных MAC-адресов в целях найти аномалии (свои маки знать).
- Раз в месяц менять пароль, не сложно перенастроить два-три девайса на новые данные, зато потом можно спать почти спокойно.
- Не использовать WPS. Вообще. Его взлом – занятие почти минутное. (8 цифр)
- Обращать внимание на различные аномалии – если вдруг пропала связь станции с точкой. Возможно вас деаутентифицировали.
- Сменить у точки доступа пароль для доступа в админку. Обязательно.
- Отключить DHCP сервер, назначать адреса вручную.
Я еще помечу, что не все сетевые адаптеры обладают функционалом monitor. К примеру, сам лично полдня убил своим адаптером TP-Link tl-wn725n. Возможно, проблема еще в самих дровах, но тем не менее…