Сразу договоримся, что мы хотим узнать пароль от своего Wifi, поскольку взламывать чужие точки доступа не только не хорошо и не красиво, но и может преследоваться по закону. В моем случае вышло так, что я попал с ноутом в гости, где забыли пароли практически ко всему, включая пароли к админкам рутеров и устройств, которые тоже были зацеплены за этот же Wifi. Мне повезло, хозяева помнили часть пароля и то, что дальше шли то ли три, то ли четыре цифры.
Пришлось вспомнить молодость...
Итак, для исследования сетей уже много лет используются на планшете, а так же программы kismet, reaver и aircrack-ng на ноуте.
На планшете с помощью этой программы можно посмотреть силу сигнала, перечень каналов, их интерференцию, оборудование и MAC-адреса. Как я понял, софтинка работает исключительно при подключении к какой-либо сети. Ею я в этот раз не пользовался, но во многих других случаях она - хорошее бесплатное (хоть и с рекламой) подспорье.
Kismet - хорошее средство для сбора информации по сетям, но за счет клиент-серверной структуры и двусмысленности некоторых вопросов может кого-то поставить в тупик. У меня в этот раз плагинов с собой никаких не было, как не было и сети, чтобы их поискать, поэтому программка “из коробки” позволяет только поковыряться в эфире. Но, надо сказать, что даже графики в текстовом интерфейсе рисует. Клиентов, даже заряд батареи и привязку в GPS можно отображать.
Reaver - во-первых, надо сказать, что он не работает без aircrack, поскольку не переводит сам карточку в режим мониторинга. Во-вторых, либо я недостаточно в нем разобрался, либо он целиком и полностью нацелен на взлом WPS. Тут есть ряд минусов, например, у меня на рутере WPS нет в принципе. Кроме того, нормальные точки доступа WPS бесконечно перебирать не дают и блокируют этот режим, причем для всех. У меня так и получилось. После 20 попыток точка доступа полностью заблокировала WPS. Причем, для всех. Смена MAC и т.п. примитивные уловки ни к чему не привели. Ради любопытства попробовал - через несколько часов WPS все так же был заблокирован. Нельзя забывать, что есть новые версии с tk6, поддерживающие более быстрые методы подбора WPS-PIN, но у меня с собой были только те, что я когда-то поставил из штатных репозиториев. В общем, если не забанит, то это достаточно быстрый способ вернуть себе управление точкой доступа при длинном и совсем неизвестном пароле.
Aircrack-ng - отличная софтина, позволяющая очень широкий спектр действий. Остановлюсь именно на подборе пароля к Wifi по словарю, поскольку я знал часть пароля и его состав. Забегая вперед, скажу, что файл пароля я подготовил с помощью команды seq -w, но для других целей достаточно много файлов паролей валяется по инету.
Для начала надо проверить, что никакой другой софт не будет мешать работе, да, все нижеследующие команды работают от root.
Код:
airmon-ng check
выводит список процессов. В него может попасть, например, NetWork Monitor. Можно выполнить
Код:
airmon-ng check kill
чтобы эти процессы просто поубивать, но я предпочитаю выполнить systemctl stop и штатно поостанавливать сервисы, чтобы не мешали.
Далее надо перевести Wifi-карту в режим мониторинга. Справедливости ради надо отметить, что не все карты поддерживают этот режим, но из современных мне не попадалось ни одной такой. Через запуск airmon-ng без параметров, iwconfig и ifconfig -a можно посмотреть список карточек, у меня это был интерфейс wlp3s0 (спасибо Поттерингу за такие уродские названия, которые я с десятого раза запомнить не могу). Запускаем
Код:
airmon-ng start wlp3s0
если вдруг вылезет что-то вроде
Цитата:
SIOCSIFFLAGS: Operation not possible due to RF-kill
то можно посмотреть список переключателей командой
Код:
rfkill list all
и вырубить софтовую блокировку командой
Код:
rfkill unblock all
собственно, карта в режиме мониторинга и появляется интерфейс wlp3s0mon (к имени прибавляется суффикс mon), с которым мы и будем иметь дальше дело. Именно в этом режиме можно поиграть с сетями через reaver.
Код:
reaver -i wlp3s0mon -b BC:0E:C5:EB:0F:1D -vv -a
Как посмотреть список сетей
Код:
airodump-ng wlp3s0mon
достаточно подробно их описывает. Ловит многие сети, которые в обычном для юзеров списке никогда не увидите, поскольку для появления в списке достаточно тех пакетов, которых недостаточно для установки соединения. Сила сигнала, доступность WPS, количество пакетов, подключенные клиенты, все здесь есть в динамике. Любуйтесь, релаксируйте…
В первой колонке указаны MAC-адреса точек (там и имя сети указано, не промахнетесь). Выбираем ту, пароль к которой надо подобрать. Желательно сидеть к ней поближе, чтобы не ловить глюки с пропаданием сигнала. Пусть будет BC:0E:C5:EB:0F:1D.
Теперь задача поймать Handshake точки и какого-то из ее клиентов.
Останавливаем предыдущую команду и запускаем уже с прицеливанием на точку и ее канал
в файле words.txt у меня были варианты паролей, обратите внимание, что они регистрозависимы. Файл crack-01.cap содержал запись handshake с точкой доступа. При нескольких попытках записи 01 будет увеличиваться дальше.
Учитывая известность части пароля, у меня в файле было около 120 вариантов, поэтому подбор занял меньше 5 секунд на тормозном нетбуке.
Да, не забывайте вывести карту из мониторинга
Код:
airmon-ng stop wlp3s0mon
хотя я из лени просто ребутнулся (кучу сервисов-то я остановил).
Для глобального сбора Handshake вместо airodump-ng лучше использовать
Код:
besside-ng wlp3s0mon
который в текущей директории сделает два файлика wep.cap и wpa.cap, куда будет записывать исключительно Handshake всех обнаруженных сетей и deauth будет производить самостоятельно. Однако, в силу меньшей агрессивности, наверное, для конкретной сети он работает почему-то хуже. Утилита besside-ng входит в состав aircrack-ng.
Обратите внимание, что если у вас машинка с GPU (хорошей видеокарточкой), то можно воспользоваться pyrit. Это переборщик паролей, как и aircrack, но без возможностей по сбору информации. В чем особенность - гигантская скорость перебора на хороших картах. На штатном CPU даже чуть медленнее aircrack работает.
это всё хорошо работает, если точно известна длина пароля и хотя бы некоторые его составляющие. у меня простой пароль из 8 цифр, без букв и спец-символов. словарь для брута в этом случае должен состоять из 100.000.000 комбинаций. при условии, что за секунду перебирается где-то 2000, полностью процедура завершиться через 14 часов. а если там будут не только цифры, а ещё буквы разного регистра и спец-символы? ради прикола скачаю какой-нить словарик, посмотрим, может подберёт из него пароль..
прикинул тут: если пароль состоит из 8 символов (маленькие и большие английские буквы + цифры) то на полный брут (100000 комбинаций в секунду) такого пароля уйдёт 28 лет! если добавить в него спец-символы или, тупо, сделать длиннее, то страшно подумать, сколько времени может потребоваться :( благо, большинство пользователей ставят нечто не сложное в виде пароля, что вполне может встретиться в словарях.