- HackWare.ru
- Этичный хакинг и тестирование на проникновение, информационная безопасность
- WiFite: программа для реализации комплексных (WPA / WPA2, WEP, WPS) автоматизированных атак на Wi-Fi в Kali Linux
- Как запустить WiFite
- Автоматизированный взлом Wi-Fi в WiFite
- Полуавтоматический взлом с WiFite
- Атака на все точки доступа с WiFite
- Вывод по WiFite
- Tool Documentation:
- Packages and Binaries:
- wifite
HackWare.ru
Этичный хакинг и тестирование на проникновение, информационная безопасность
WiFite: программа для реализации комплексных (WPA / WPA2, WEP, WPS) автоматизированных атак на Wi-Fi в Kali Linux
Wi-Fi сети применяют разные технологии — WPA / WPA2, WEP, WPS. Каждую из них можно атаковать, WEP можно атаковать сразу по нескольким направлениям. Эти атаки уже реализованы в различных программах. Как правило, программы заточены на выполнение одной определённой функции:
- деаутентификация клиентов
- захват рукопожатий
- перебор паролей
- перебор пина WPS
- и т. д. — отдельных стадий, методик много.
Когда тестер беспроводных сетей принимается за работу, он переходит из одной программы в другую для выполнения разных этапов проникновения, для использования разных методов.
Так вот, WiFite — это скрипт, который эмулирует действия пентестера. Wifite зама в нужном порядке запускает необходимые программы и сама передаёт необходимые данные из одной в другую.
При типичном запуске Wifite только один раз задаст вопрос пользователю: какие точки доступа атаковать?
Можно запустить Wifite так, что она даже это не будет спрашивать — будет атаковать каждую ТД. Можно указать файл словаря — и программа совершенно автономно будет отправлять пакеты деаутентификации, захватывать рукопожатия, перебирать пароли, перебирать пины WPS и пытаться использовать WPS PixieDust, проводить разнообразные атаки на WEP. Причём, программа будет начинать атаку на самые слабые технологии и, в случае неудачи, переходить к более защищённым.
В зависимости от успеха, результатом работы программы может стать получение пароля в открытом виде, либо захваченных файлов рукопожатий — которые нужно брутфорсить для получения пароля в открытом виде.
Как запустить WiFite
Начать нужно с перевода беспроводной карты в режим монитора. Как это сделать рассказано в соответствующей статье «Как перевести беспроводную карту в режим монитора (контроля) в Kali Linux».
В моём случае команда следующая:
ifconfig wlan0 down && iwconfig wlan0 mode monitor && ifconfig wlan0 up
Нам в любом случае нужен файл словаря. Следующими командами мы его копируем в текущую рабочую директорию, распаковываем и чистим (чтобы все кандидаты в пароли удовлетворяли требованиям WPA паролей).
cp /usr/share/wordlists/rockyou.txt.gz . gunzip rockyou.txt.gz cat rockyou.txt | sort | uniq | pw-inspector -m 8 -M 63 > newrockyou.txt
Ещё немного теории. WiFite это программа «полного цикла» по взлому Wi-Fi точек доступа. Она всё делает хорошо, но такой этап как перебор паролей можно делать не только хорошо — его можно делать на отлично. Процесс перебора паролей можно значительно ускорить, если использовать Pyrit, но уже требует определённых навыков.
Давайте начнём с совсем простого — пусть WiFite всё делает сама.
Автоматизированный взлом Wi-Fi в WiFite
Для этого программу WiFite нужно запустить с двумя дополнительными опциями:
- —-crack говорит о том, что нужно производить взлом по словарю
- —dict ~/newrockyou.txt указывает, какой словарь использовать
sudo wifite --crack --dict ~/newrockyou.txt
После запуска подождите несколько минут, пока программа соберёт информация о доступных точках доступа:
Когда информации достаточно, нажмите CTRL+C.
Нас попросят ввести номера точек доступа, которые мы хотим взломать. Можно выбрать все (нужно ввести all), можно выбрать отдельные ТД, перечислив их через запятую, можно выбрать диапазоны, перечислив их через дефис:
Дальше программа всё будет делать сама. Если вам показалось, что программа на слишком уж долго застряла на какой-либо точке доступа или на какой-либо атаке, то нажмите один раз CTRL+C для перехода к следующему действию. У нас спросят — мы хотим немедленно выйти или продолжить:
Наберите c, чтобы продолжить.
Полуавтоматический взлом с WiFite
Единственное отличие этой методики заключается в том, что для подбора пароля к захваченным рукопожатиям мы используем Pyrit. В этом случае мы запускаем wifite без ключей:
В случае захвата рукопожатий, они будут только сохранены, перебор осуществляться не будет.
Для дальнейшей ускоренной расшифровки можно применять следующие инструкции:
Атака на все точки доступа с WiFite
Хотя WiFite и осуществляет автоматический взлом, тем не менее, вмешательство пользователя требуется как минимум один раз. — когда нам нужно выбрать точки доступа для атаки. С помощью ключа —all можно дать указание wifite атаковать вообще все точки доступа, в этом случае обойдётся какие-либо действия со стороны пользователя вообще не требуются.
sudo wifite --crack --dict ~/newrockyou.txt --all
Вывод по WiFite
WiFite — пожалуй, лучшая программа для новичков. Свои первые беспроводные точки доступа с ней можно взломать ничего не зная про рукопожатия, деаутентификацию, виды шифрования Wi-Fi и такие технологии как WEP, WPS. Лично мой первый удачный опыт, который заставил поверить в свои силы и пробудил интерес к данной теме, связан именно с программой wifite.
По соотношению «затраченные усилия / полученный результат» для wifite нет равных. И тем не менее, развиваясь в вопросах пентестинга беспроводных сетей Wi-Fi, работая своими руками и головой можно добиться большего результата. Пентестеру с опытом достаточно быстрого взгляда, чтобы увидеть малоперспективные точки доступа (очень слабый сигнал или ни одного клиента), если пентестер обнаружит WPS, он не застрянет на нём на часы, остановив другую работу (wifite застрянет, это, в принципе, правильно, поскольку WPS является часто взламываемым). Пентестер попытался бы захватить все возможные рукопожатия, а потом, пока перебираются хеши, запустить атаки на WPS и WEP.
Возможно, это сильно зависит от условий, но при надлежащей сноровке у меня получает легче получить рукопожатия используя airodump-ng + aireplay-ng, чем используя wifite.
Кстати, для автоматизации захвата рукопожатий рекомендуется ознакомиться со статьёй по использованию нового инструмента zizzania: «Массовый автоматизированный захват рукопожатий в BlackArch с помощью zizzania».
Программа WiFite содержит множество опций, познакомиться с ними вы можете на странице документации в Энциклопедии инструментов для пентестинга.
Tool Documentation:
Attack access points with over 50 dB of power ( -pow 50 ) using the WPS attack ( -wps ):
[email protected]:~# wifite -pow 50 -wps .;' `;, .;' ,;' `;, `;, WiFite v2 (r85) .;' ,;' ,;' `;, `;, `;, :: :: : ( ) : :: :: automated wireless auditor ':. ':. ':. /_\ ,:' ,:' ,:' ':. ':. /___\ ,:' ,:' designed for Linux ':. /_____\ ,:' / \ [+] targeting WPS-enabled networks [+] scanning for wireless devices. [+] enabling monitor mode on wlan0. done [+] initializing scan (mon0), updates at 5 sec intervals, CTRL+C when ready.
Packages and Binaries:
wifite
Wifite is a tool to audit WEP or WPA encrypted wireless networks. It uses aircrack-ng, pyrit, reaver, tshark tools to perform the audit.
This tool is customizable to be automated with only a few arguments and can be trusted to run without supervision.
Installed size: 2.34 MB
How to install: sudo apt install wifite
- aircrack-ng
- ieee-data
- net-tools
- python3
- python3-chardet
- reaver
- tshark
wifite
Python script to automate wireless auditing using aircrack-ng tools
[email protected]:~# wifite -h . . .´ · . . · `. wifite2 2.6.6 : : : (¯) : : : a wireless auditor by derv82 `. · ` /¯\ ´ · .´ maintained by kimocoder ` /¯¯¯\ ´ https://github.com/kimocoder/wifite2 options: -h, --help show this help message and exit SETTINGS: -v, --verbose Shows more options (-h -v). Prints commands and outputs. (default: quiet) -i [interface] Wireless interface to use, e.g. wlan0mon (default: ask) -c [channel] Wireless channel to scan e.g. 1,3-6 (default: all 2Ghz channels) -inf, --infinite Enable infinite attack mode. Modify scanning time with -p (default: off) -mac, --random-mac Randomize wireless card MAC address (default: off) -p [scan_time] Pillage: Attack all targets after scan_time (seconds) --kill Kill processes that conflict with Airmon/Airodump (default: off) -pow [min_power], --power [min_power] Attacks any targets with at least min_power signal strength --skip-crack Skip cracking captured handshakes/pmkid (default: off) -first [attack_max], --first [attack_max] Attacks the first attack_max targets -ic, --ignore-cracked Hides previously-cracked targets. (default: off) --clients-only Only show targets that have associated clients (default: off) --nodeauths Passive mode: Never deauthenticates clients (default: deauth targets) --daemon Puts device back in managed mode after quitting (default: off) WEP: --wep Show only WEP-encrypted networks --require-fakeauth Fails attacks if fake-auth fails (default: off) --keep-ivs Retain .IVS files and reuse when cracking (default: off) WPA: --wpa Show only WPA-encrypted networks (includes WPS) --new-hs Captures new handshakes, ignores existing handshakes in hs (default: off) --dict [file] File containing passwords for cracking (default: /usr/share/dict/wordlist- probable.txt) WPS: --wps Show only WPS-enabled networks --wps-only Only use WPS PIN & Pixie-Dust attacks (default: off) --bully Use bully program for WPS PIN & Pixie-Dust attacks (default: reaver) --reaver Use reaver program for WPS PIN & Pixie-Dust attacks (default: reaver) --ignore-locks Do not stop WPS PIN attack if AP becomes locked (default: stop) PMKID: --pmkid Only use PMKID capture, avoids other WPS & WPA attacks (default: off) --no-pmkid Don't use PMKID capture (default: off) --pmkid-timeout [sec] Time to wait for PMKID capture (default: 300 seconds) COMMANDS: --cracked Print previously-cracked access points --check [file] Check a .cap file (or all hs/*.cap files) for WPA handshakes --crack Show commands to crack a captured handshake