Получаем WPA-ключ для Wi-Fi с помощью уязвимой технологии WPS

Сегодня мы предоставляем вашему вниманию набор бесплатных программ с помощью которых вы можете взломать WIFI сеть. Либо проверить свою WIFI точку доступа на стойкость к взломам.

Netstumbler

Сайт:www.stumbler.net

Определенно один из самых известных и лучших инструментов для вардрайвинга. У стемблера всего одна задача - обнаружить в эфире точки доступа, считать SSID и записать полученную информацию в логфайл вместе с координатами, если к программе подключен приемник GPS. После удачного вардрайвинга, информацию о найденных AP-шках месте с данными о месторасположениями можно экспортировать в log-файл, преобразовать его с помощью многочисленных конверторов в понятный Google’у формат KML и за пару секунд отобразить все точки доступа на карте с помощью Google Maps или декстопной программы Google Earth.



Для поиска живых точек доступаNetstumbler использует приемы активного сканирования, т.е. не просто прослушивает эфир, но и каждую секунду отправляет специальные фреймы. Надо сказать, что специфические LC/SNAP-фреймы, сгенерированные стемблером, легко распознаются современными IDS-системами. К тому же активное сканирование не поможет тебе в поиске спрятанных (hidden) точек доступа, впрочем сама подборка информации не фонтан.

Например,Netstumbler может распознать лишь факт использования шифрования сети, не уточняя какойименно механизм используется. Вдобавок, программа наотрез отказывается работать под Vista’ой и вряд ли когда-нибудь это делать захочет. В результате, получаем отличную программу, если нужно просканировать эфир на наличие точек доступа и записать их координаты, но только под виндой и без надежды получить какую-либо еще ценную информацию.


Vistumbler

Сайт:www.vistumbler.net

Ну хорошо, а как быть если на ноуте/нетбуке стоит Vista или Win7? По правде говоря, возможность активного сканирования точек доступа есть в самой системе. Это делается с помощью консольной утилиты netsh:

netsh wlan show networks mode = bssid

Однако умелец Andrew Calcutt быстро сварганил GUI-интерфейс, в котором вывод команды приводится в опрятный вид и объединяется с информации расположении обнаруженных AP-шек, считывая ее с текущими координатами GPS.


Под никсами, кстати, существуют аналогичные утилиты, которые парсят вывод команды iwlist. Забавно, чтоVistumbler написан с помощью тулзы для автоматизации различных действий AutoIt, позволяющая разработать приложения даже тем людям, которые о программировании толком никогда и не слышали. При этомVistumbler не просто работает, а работает отменно, отображая помимо уровня сигнала MAC-адрес вендора, используемую систему шифрования, и прочие параметры.

Данные о расположении найденных точек можно “на лету” экспортировать в KML формат и в реальном времени отслеживать их появления на карте через Google Earth. Для вардрайверов полезной также окажется функция, с помощью которой уровень сигнала обозначается с помощью различных звуковых файлов. Справедливости ради, стоит сказать, что вNetstumbler ‘е также можно было провернуть подобный трюк, но лишь при помощи внешних скриптов.

inSSIDer

Сайт:
www.metageek.net/products/inssider


Расстроенный тем фактом, чтоNetstumbler не развивался несколько лет и не работает Вистой и даже 64-битной XP, Charles Putney решил написать свою собственную утилиту для поиска Wi-fi сетей, после чего опубликовал исходники на известном портале The Code Project. Идею подхватил Norman Rasmussen, после чего на свет появилась новая версияinSSIDer ‘а, построенная на базе Native Wi-Fi API. Инсайдер подобноNetstumbler использует активные методы сканирования, а всю найденную о точках доступа информацию отображает в табличке, сдабривая данные красивыми графиками уровня сигнала. Тулза очень простая - ничего лишнего, но я нередко использую именно ее для поиска Wi-Fi спотов и определения используемой ими защиты.


Kismet

Сайт:
www.kismetwireless.net


А это уже полноценное никсовое приложение для поиска беспроводных сетей, снифинга, и даже обнаружения вторжений.Kismet кардинально отличается от Netstumbler и подобных ему тулз тем, что для определения беспроводныхсетей применяет пассивное сканирование (ничего не вещая в эфир). Причем используемые методики позволяют определить некоторую информацию о клиентах, подключенных в сети, а также найти скрытые (non-beaconing) сети, правда, только в том случае если в них есть некоторая активность.Kismet автоматическим может определить используемые диапазоны IP адресов, перехватывая TCP, UDP, ARP и DHCP пакеты, дампить трафик в формат для Wireshark/TCPDump, и даже определять примерное расстояние до точки доступа (работа с GPS, разумеется, поддерживается).

Примечательно, что после более чем 5 лет разработки, создатели вот-вот порадуют нас совершенно новым релизом. В частности, в конце мая вышла Kismet-2009-05-RC1, в которой был кардинально переработан интерфейс (по-прежнему используется ncurse), переделаны конфигурационные файлы, добавлены новые опции для фильтрации данных и новая система предупреждений, оптимизирована загрузка процессора, проработана система плагинов. Что касается порта для винды, то он есть, но реализован компанией CACE и, увы, работает только со специальными Wi-Fi адаптерами Cace AirPcap.

Aircrack-ng

Сайт:aircrack-ng.org


Aircrack-ng - полноценный программный комплекс для взлома 802.11 WEP (Wired Equivalent Privacy) Encryption и WPA/WPA2-PSK ключей для WiFi-сетей. Сам набор состоит из нескольких утилит и включает airodump (снифер для сетей 802.11), aireplay (тулза для инжекции Wi-Fi фреймов), aircrack (взлом WEP и брутфорс WPA-PSK), а также airdecap (декодирование перехваченных WEP/WPA файлов). В общем случае для взлома WEP необходимо определенное количество перехваченных пакетов: как только будет захвачено нужное количество фреймов, aircrack-ng будет готова провести статическую атаку на WEP-ключ. СейчасAircrack-ng поддерживает три способа для “восстановления” ключа:

  • первый метод через PTW атаку: основное преимущество заключается в небольшом количестве перехваченных пакетов, необходимых для взлома WEP-ключа. Но метод работает только с arp-пакетами, и это, естественно, большой недостаток;
  • второй вариант - через FMS / KoreK атаки. Метод включает в себя различные статические воздействия (FMS, KoreK, Brute force) для поиска WEP ключа и требует больше пакетов, чем в случае PTW атаки;
  • третий вариант – это подбор с использованием словаря (word list), используется, в основном, для взлома WPA/WPA2 ключей.

Полноценная версияAircrack-ng существует только для Linux, хотя на официальном сайте доступна “недоверсия” для ивнды. Разработчики честно предупреждают, что для ее работы нужно самому доработать DLL конкретно для своего Wi-Fi адаптера.

Technitium

Сайт:www.technitium.com


Что удивительно, но фильтрация по MAC-адресам по-прежнему остается достаточно часто используемой защитой. Впрочем, огранить доступ от случайных зевак она действительно сможет, а от вардрайверов… ну, пускай ребята балуются:). Подключиться к таким AP в этом случае могут только клиенты, которые занесены в список доверенных машин. Обойти же подобную защиту проще простого - нужно лишь сменить MAC-адрес своего беспроводного адаптера на доверенный.

Подходящий MAC легко определить все той же утилитой Airodump, перехватив пару пакетов. Изменить MAC-адрес под никсами поможет утилита macchanger. Что касается винды, то и тут существует немало программ, в том числе платная SMAC и бесплатнаяTechnitium . Обе требуют лишь выбрать сетевой адаптер и указать для него желаемый MAC-адрес. Убедись в том, что адрес успешно сменился (команда ipconfig /all в консоле) и попробуй установить соединение. К сожалению, с первого раза ты можешь легко обломаться, поскольку авторизированный клиент может быть уже подключен к сети. Выселить его оттуда поможет все та же программа Void1 и деаутентифационные пакеты.


void11

Void11 используется для деаутентификации беспроводных клиентов от точки доступа, или, проще говоря, для принудительно отключения клиентов от точки доступа. После такого отключения беспроводной клиент будет автоматически пытаться подключиться к точке доступа (повторить ассоциацию). А при каждом повторном подключении будет создаваться трафик, который нужен для подбора ключа. К тому же, можно отключить клиента, занять его MAC-адрес и таким образом обойти фильтрацию по MAC-адресам. К сожалению, средства Windows это не позволяют, зато подобный фокус легко реализуем под никсами с помощью этой утилиты:

Если в ходе сканирования, твой стамблер в колонке Vendor (производитель оборудования) покажет слово CISCO, не лишнем будет вспомнить о протоколе авторизации LEAP (Lightweight Extensible Authentication Protocol), разработанный как раз-таки циско. Проверить догадки об используемом в сети протоколе может помочь снифер, который должен показать пакеты REQUEST, EAP-CISCO Wireless (LEAP). Главная особенность LEAP состоит в том, что для авторизации нужен не только пароль, но и имя пользователя! По умолчанию в Windows этот протокол не поддерживается, поэтому для работы потребуется установить специальный клиент -

Aironet Client Utilities . А есть ли смысл его устанавливать? Конечно! Несмотря на продуманность протокола, даже в нем обнаружили уязвимости, позволяющие легко подобрать пароль с помощью перехваченных пакетов LEAP-авторизации. Первым это пронюхал Joshua Wright - разработчик утилиты. Эта утилита перехватывает сетевые пакеты при повторном коннекте клиента, после чего брутит пароли для идентификации. Утилита работает нативно под Linux’ом, однако на официальном сайте есть версия программы и под винду (правда, не самого последнего билда)

WifiZoo

Раз воспользовавшись утилитойWifiZoo , понимаешь, насколько просто перехватывается различная информация в открытых Wi-Fi сетях. Сама задача утилиты - пассивно собирать различную информацию из сети. Написанная на Python’е (в основе лежит, кстати говоря, лежит программа Scapy), тулза позволяет извлечь из эфира массу полезной для вардрайвера инфы и представить ее в виде красивых графиков. Это не только данные о точках доступа (SSID), но и информация об использующих их клиентах (с указанием адресов отправки и назначения), а также (и это самое вкусное) самая разная инфа, передаваемая в открытом виде по сети: пароли для незащищенных протоколов (pop3/ftp/telnet), почтовый трафик, http кукисы и данные для авторизации, и т.д.


Единственный недостатокWifiZoo заключается в отсутствии режима Channel hopping, в результате прога может прослушивать беспроводной интерфейс, но не может прыгать с канала на канал. Этот недостаток с лихвой компенсируется предварительно запущеннымKismet ‘ом. Перехваченные данные утилита бережливо складывает в папку logs/, указывая в названии файлов источник данных (ssids.log, cookies.log, httpauth.log и т.д.). А для большего удобства в комплекте идет GUI-интерфейс, реализованный в виде веб-сервера, который по умолчанию поднимается на 127.0.0.1:8000.

CommView for WiFi

Сайт:
www.tamos.ru/products/commwifi/


Специальная версия известного виндового снифераCommView , созданная для захвата и анализа сетевых пакетов в беспроводных сетях 802.11a/b/g/n. Утилита получает информацию от беспроводного сетевого адаптера и сразу декодирует анализируемые данные, отображая их в удобном для переваривания виде. В случае необходимости, пакеты можно дешифровать с использованием пользовательских ключей или и декодировать вплоть до самого низкого уровня с полным анализом распространенных протоколов (сейчас поддерживается более 70).

Более того - можно полностью воссоздать TCP-сессию, и посмотреть, к примеру, HTTP-трафик со всеми запросами и соответственно интересной инфой, вроде данных для авторизации. Весь перехваченный трафик может быть сохранен в файл для последующего анализа. Что особенно радует - так это гибкая система фильтров, которая позволяет отбрасывать ненужные пакеты и перехватывать только то, что нужно. А настраиваемые предупреждения позволяют сообщать пользователю о важных событиях, таких как подозрительные пакеты, высокая загрузка сети или неизвестные адреса. Словом, отличная программа для винды за исключением одного момента - она платная.

Wireless Security Auditor

Сайт:www.elcomsoft.ru


Еще одна платная, но очень любопытная разработка.Wireless Security Auditor позволяет проверить надежность (да, теперь это так называется!WPA/WPA2, но используя современные методики для вычислений с помощью графическихпроцессоров. В дополнение к режиму, когда восстановление производится средствами только центрального процессора,WSA использует технологию, которая в процессе восстановления ключа задействует графические акселераторы.

Тут надо сказать, что сама программа не перехватывает трафик из беспроводной сети, а имеет дело только дампом сетевых сообщений (поддерживаются форматы TCPDUMP, CommView, PSPR), т.е. работает в связке со снифером. Важно, что для ускорения вычислений подойдет вовсе не любая карта, а только топовые модели ускорителей: NVIDIA (GeForce 8, 9, 200 и выше) или ATI (RADEON HD 3000 Series и выше). EWSA поддерживает атаки по словарю и поддерживает режима мутации пароля (например, слово password заменяет на и т.д.)

WirelessKeyView

Сайт:
www.nirsoft.net/utils/wireless_key.html


Уже сам не раз сталкивался с ситуацией, когда тупо забываешь ключ от собственной точки доступа. Кажется, это была строчка из Лермонтова? Черт, или Пушкина? Не помню. Моментально освежить память помогает утилитаWirelessKeyView , которая вытаскивает из реестра сохраненные в системе WEP/WPA ключи. Приятно, чтоWirelessKeyView работает как сервисом Wireless Zero Configuration в WinXP, так и WLAN AutoConfig, которым пользуются юзеры Висты. [Всего голосов: 38 Средний: 3.1/5]

Last updated by at Январь 27, 2017 .

Еще не так давно казалось, что беспроводная сеть, защищенная с помощью технологии WPA2, вполне безопасна. Подобрать простой ключ для подключения действительно возможно. Но если установить по-настоящему длинный ключ, то сбрутить его не помогут ни радужные таблицы, ни даже ускорения за счет GPU. Но, как оказалось, подключиться к беспроводной сети можно и без этого - воспользовавшись недавно найденной уязвимостью в протоколе WPS.

WARNING

Вся информация представлена исключительно в образовательных целях. Проникновение в чужую беспроводную сеть легко может быть расценено как уголовное преступление. Думай головой.

Цена упрощений

Открытых точек доступа, к которым вообще не надо вводить ключ для подключения, становится все меньше и меньше. Кажется, что скоро их можно будет занести в Красную книгу. Если раньше человек мог даже и не знать, что беспроводную сеть можно закрыть ключом, обезопасив себя от посторонних подключений, то теперь ему все чаще подсказывают о такой возможности. Взять хотя бы кастомные прошивки, которые выпускают ведущие провайдеры для популярных моделей роутеров, чтобы упростить настройку. Нужно указать две вещи - логин/пароль и… ключ для защиты беспроводной сети. Что еще более важно, сами производители оборудования стараются сделать процесс настройки незамысловатым. Так, большинство современных роутеров поддерживают механизм WPS (Wi-Fi Protected Setup). С его помощью пользователь за считанные секунды может настроить безопасную беспроводную сеть, вообще не забивая себе голову тем, что «где-то еще нужно включить шифрование и прописать WPA-ключ». Ввел в системе восьмизначный символьный PIN, который написан на роутере, – и готово! И вот здесь держись крепче. В декабре сразу два исследователя рассказали о серьезных фундаментальных прорехах в протоколе WPS. Это как черный ход для любого роутера. Оказалось, что если в точке доступа активирован WPS (который, на минуточку, включен в большинстве роутеров по умолчанию), то подобрать PIN для подключения и извлечь ключ для подключения можно за считанные часы!

Как работает WPS?

Задумка создателей WPS хороша. Механизм автоматически задает имя сети и шифрование. Таким образом, пользователю нет необходимости лезть в веб-интерфейс и разбираться со сложными настройками. А к уже настроенной сети можно без проблем добавить любое устройство (например, ноутбук): если правильно ввести PIN, то он получит все необходимые настройки. Это очень удобно, поэтому все крупные игроки на рынке (Cisco/Linksys, Netgear, D-Link, Belkin, Buffalo, ZyXEL) сейчас предлагают беспроводные роутеры с поддержкой WPS. Разберемся чуть подробнее.

Существует три варианта использования WPS:

  1. Push-Button-Connect (PBC). Пользователь нажимает специальную кнопку на роутере (хардварную) и на компьютере (софтварную), тем самым активируя процесс настройки. Нам это неинтересно.
  2. Ввод PIN-кода в веб-интерфейсе. Пользователь заходит через браузер в административный интерфейс роутера и вводит там PIN-код из восьми цифр, написанный на корпусе устройства (рисунок 1), после чего происходит процесс настройки. Этот способ подходит скорее для первоначальной конфигурации роутера, поэтому мы его рассматривать тоже не будем.
  3. Ввод PIN-кода на компьютере пользователя (рисунок 2). При соединении с роутером можно открыть специальную сессию WPS, в рамках которой настроить роутер или получить уже имеющиеся настройки, если правильно ввести PIN-код. Вот это уже привлекательно. Для открытия подобной сессии не нужна никакая аутентификация. Это может сделать любой желающий! Получается, что PIN-код уже потенциально подвержен атаке типа bruteforce. Но это лишь цветочки.


Уязвимость

Как я уже заметил ранее, PIN-код состоит из восьми цифр - следовательно, существует 10^8 (100 000 000) вариантов для подбора. Однако количество вариантов можно существенно сократить. Дело в том, что последняя цифра PIN-кода представляет собой некую контрольную сумму, которая высчитывается на основании семи первых цифр. В итоге получаем уже 10^7 (10 000 000) вариантов. Но и это еще не все! Далее внимательно смотрим на устройство протокола аутентификации WPS (рисунок 3). Такое ощущение, что его специально проектировали, чтобы оставить возможность для брутфорса. Оказывается, проверка PIN-кода осуществляется в два этапа. Он делится на две равные части, и каждая часть проверяется отдельно! Посмотрим на схему:

  1. Если после отсылки сообщения M4 атакующий получил в ответ EAP-NACK, то он может быть уверен, что первая часть PIN-кода неправильная.
  2. Если же он получил EAP-NACK после отсылки M6, то, соответственно, вторая часть PIN-кода неверна. Получаем 10^4 (10 000) вариантов для первой половины и 10^3 (1 000) для второй. В итоге имеем всего лишь 11 000 вариантов для полного перебора. Чтобы лучше понять, как это будет работать, посмотри на схему.
  3. Важный момент - возможная скорость перебора. Она ограничена скоростью обработки роутером WPS-запросов: одни точки доступа будут выдавать результат каждую секунду, другие - каждые десять секунд. Основное время при этом затрачивается на расчет открытого ключа по алгоритму Диффи-Хеллмана, он должен быть сгенерирован перед шагом M3. Затраченное на это время можно уменьшить, выбрав на стороне клиента простой секретный ключ, который в дальнейшем упростит расчеты других ключей. Практика показывает, что для успешного результата обычно достаточно перебрать лишь половину всех вариантов, и в среднем брутфорс занимает всего от четырех до десяти часов.


Первая реализация

Первой появившейся реализацией брутфорса стала утилита wpscrack (goo.gl/9wABj), написанная исследователем Стефаном Фибёком на языке Python. Утилита использовала библиотеку Scapy, позволяющую инъектировать произвольные сетевые пакеты. Сценарий можно запустить только под Linux-системой, предварительно переведя беспроводной интерфейс в режим мониторинга. В качестве параметров необходимо указать имя сетевого интерфейса в системе, MAC-адрес беспроводного адаптера, а также MAC-адрес точки доступа и ее название (SSID).

$ ./wpscrack.py --iface mon0 --client 94:0c:6d:88:00:00 --bssid f4:ec:38:cf:00:00 --ssid testap -v sniffer started trying 00000000 attempt took 0.95 seconds trying 00010009 <...> trying 18660005 attempt took 1.08 seconds trying 18670004# found 1st half of PIN attempt took 1.09 seconds trying 18670011 attempt took 1.08 seconds <...> trying 18674095# found 2st half of PIN <...> Network Key: 0000 72 65 61 6C 6C 79 5F 72 65 61 6C 6C 79 5F 6C 6F really_really_lo 0010 6E 67 5F 77 70 61 5F 70 61 73 73 70 68 72 61 73 ng_wpa_passphras 0020 65 5F 67 6F 6F 64 6F 6C 75 63 6B 5F 63 72 61 63 e_good_luck_crac 0030 6B 69 6E 67 5F 74 68 69 73 5F 6F 6E 65king_this_one <...>

Как видишь, сначала была подобрана первая половина PIN-кода, затем - вторая, и в конце концов программа выдала готовый к использованию ключ для подключения к беспроводной сети. Сложно представить, сколько времени потребовалось бы, чтобы подобрать ключ такой длины (61 символ) ранее существовавшими инструментами. Впрочем, wpscrack не единственная утилита для эксплуатации уязвимости, и это довольно забавный момент: в то же самое время над той же самой проблемой работал и другой исследователь - Крейг Хеффнер из компании Tactical Network Solutions. Увидев, что в Сети появился работающий PoC для реализации атаки, он опубликовал свою утилиту Reaver . Она не только автоматизирует процесс подбора WPS-PIN и извлекает PSK-ключ, но и предлагает большее количество настроек, чтобы атаку можно было осуществить против самых разных роутеров. К тому же она поддерживает намного большее количество беспроводных адаптеров. Мы решили взять ее за основу и подробно описать, как злоумышленник может использовать уязвимость в протоколе WPS для подключения к защищенной беспроводной сети.

HOW-TO

Как и для любой другой атаки на беспроводную сеть, нам понадобится Linux. Тут надо сказать, что Reaver присутствует в репозитории всеми известного дистрибутива BackTrack , в котором к тому же уже включены необходимые драйвера для беспроводных устройств. Поэтому использовать мы будем именно его.

Шаг 0. Готовим систему

На официальном сайте BackTrack 5 R1 доступен для загрузки в виде виртуальной машины под VMware и загрузочного образа ISO. Рекомендую последний вариант. Можно просто записать образ на болванку, а можно с помощью программы сделать загрузочную флешку: так или иначе, загрузившись с такого носителя, мы без лишних заморочек сразу будем иметь систему, готовую к работе.

Экспресс-курс по взлому Wi-Fi

  1. WEP (Wired Equivalent Privacy) Самая первая технология для защиты беспроводной сети оказалась крайне слабой. Взломать ее можно буквально за несколько минут, используя слабости применяемого в ней шифра RC4. Основными инструментами здесь служат снифер airodump-ng для сбора пакетов и утилита aircrack-ng, используемая непосредственно для взлома ключа. Также существует специальная тулза wesside-ng, которая вообще взламывает все близлежащие точки с WEP в автоматическом режиме.
  2. WPA/WPA2 (Wireless Protected Access)

Перебор - это единственный способ подобрать ключ для закрытой WPA/WPA2 сети (да и то исключительно при наличии дампа так называемого WPA Handshake, который передается в эфир при подключении клиента к точке доступа).

Брутфорс может затянуться на дни, месяцы и годы. Для увеличения эффективности перебора сначала использовались специализированные словари, потом были сгенерированы радужные таблицы, позже появились утилиты, задействовавшие технологии NVIDIA CUDA и ATI Stream для аппаратного ускорения процесса за счет GPU. Используемые инструменты - aircrack-ng (брутфорс по словарю), cowpatty (с помощью радужных таблиц), pyrit (с использованием видеокарты).

Шаг 1. Вход в систему

Логин и пароль для входа по умолчанию – root:toor. Оказавшись в консоли, можно смело стартовать «иксы» (есть отдельные сборки BackTrack - как с GNOME, так и c KDE):

# startx

Шаг 2. Установка Reaver

Чтобы загрузить Reaver, нам понадобится интернет. Поэтому подключаем патчкорд или настраиваем беспроводной адаптер (меню «Applications > Internet > Wicd Network Manager»). Далее запускаем эмулятор терминала, где загружаем последнюю версию утилиты через репозиторий:

# apt-get update # apt-get install reaver

Тут надо сказать, что в репозитории находится версия 1.3, которая лично у меня заработала неправильно. Поискав информацию о проблеме, я нашел пост автора, который рекомендует обновиться до максимально возможной версии, скомпилировав исходники, взятые из SVN. Это, в общем, самый универсальный способ установки (для любого дистрибутива).

$ svn checkout http://reaver-wps.googlecode.com/svn/trunk/ reaver-wps $ cd ./reaver-wps/src/ $ ./configure $ make # make install

Никаких проблем со сборкой под BackTrack не будет - проверено лично. В дистрибутиве Arch Linux, которым пользуюсь я, установка производится и того проще, благодаря наличию соответствующего PKGBUILD’а:

$ yaourt -S reaver-wps-svn

Шаг 3. Подготовка к брутфорсу

Для использования Reaver необходимо проделать следующие вещи:

  • перевести беспроводной адаптер в режим мониторинга;
  • узнать имя беспроводного интерфейса;
  • узнать MAC-адрес точки доступа (BSSID);
  • убедиться, что на точке активирован WPS.

Для начала проверим, что беспроводной интерфейс вообще присутствует в системе:

# iwconfig

Если в выводе этой команды есть интерфейс с описанием (обычно это wlan0) – значит, система распознала адаптер (если он подключался к беспроводной сети, чтобы загрузить Reaver, то лучше оборвать подключение). Переведем адаптер в режим мониторинга:

# airmon-ng start wlan0

Эта команда создает виртуальный интерфейс в режиме мониторинга, его название будет указано в выводе команды (обычно это mon0). Теперь нам надо найти точку доступа для атаки и узнать её BSSID. Воспользуемся утилитой для прослушки беспроводного эфира airodump-ng:

# airodump-ng mon0

На экране появится список точек доступа в радиусе досягаемости. Нас интересуют точки с шифрованием WPA/WPA2 и аутентификацией по ключу PSK.

Лучше выбирать одну из первых в списке, так как для проведения атаки желательна хорошая связь с точкой. Если точек много и список не умещается на экране, то можно воспользоваться другой известной утилитой - kismet, там интерфейс более приспособлен в этом плане. Опционально можно на месте проверить, включен ли на нашей точке механизм WPS. Для этого в комплекте с Reaver (но только если брать его из SVN) идет утилита wash:

# ./wash -i mon0

В качестве параметра задается имя интерфейса, переведенного в режим мониторинга. Также можно использовать опцию ‘-f’ и скормить утилите cap-файл, созданный, например, тем же airodump-ng. По непонятной причине в пакет Reaver в BackTrack не включили утилиту wash. Будем надеяться, к моменту публикации статьи эту ошибку исправят.

Шаг 4. Запускаем брутфорс

Теперь можно приступать непосредственно к перебору PIN’а. Для старта Reaver в самом простом случае нужно немного. Необходимо лишь указать имя интерфейса (переведенного нами ранее в режим мониторинга) и BSSID точки доступа:

# reaver -i mon0 -b 00:21:29:74:67:50 -vv

Ключ «-vv» включает расширенный вывод программы, чтобы мы могли убедиться, что все работает как надо.

Reaver v1.4 WiFi Protected Setup Attack Tool Copyright (c) 2011, Tactical Network Solutions, Craig Heffner [+] Waiting for beacon from 00:21:29:74:67:50 [+] Associated with 00:21:29:74:67:50 (ESSID: linksys) [+] Trying pin 63979978

Если программа последовательно отправляет PIN’ы точке доступа, значит, все завелось хорошо, и остается тупо ждать. Процесс может затянуться. Самое короткое время, за которое мне удалось сбрутфорсить PIN, составило примерно пять часов. Как только он будет подобран, программа радостно об этом сообщит:

[+] Trying pin 64637129 [+] Key cracked in 13654 seconds [+] WPS PIN: "64637129" [+] WPA PSK: "MyH0rseThink$YouStol3HisCarrot!" [+] AP SSID: "linksys"

Самое ценное здесь - это, конечно же, ключ WPA-PSK, который сразу же можно использовать для подключения. Все так просто, что даже не укладывается в голове.



Можно ли защититься?

Защититься от атаки можно пока одним способом - отключить нафиг WPS в настройках роутера. Правда, как оказалось, сделать это возможно далеко не всегда. Поскольку уязвимость существует не на уровне реализации, а на уровне протокола, ждать от производителей скорого патча, который решил бы все проблемы, не стоит. Самое большее, что они могут сейчас сделать, – это максимально противодействовать брутфорсу. Например, если блокировать WPS на один час после пяти неудачных попыток ввода PIN-кода, то перебор займет уже около 90 дней. Но другой вопрос, насколько быстро можно накатить такой патч на миллионы устройств, которые работают по всему миру?

Прокачиваем Reaver

В HOWTO мы показали самый простой и наиболее универсальный способ использования утилиты Reaver. Однако реализация WPS у разных производителей отличается, поэтому в некоторых случаях необходима дополнительная настройка. Ниже я приведу дополнительные опции, которые могут повысить скорость и эффективность перебора ключа.

  1. Можно задать номер канала и SSID точки доступа: # reaver -i mon0 -b 00:01:02:03:04:05 -c 11 -e linksys
  2. Благотворно сказывается на скорости брутфорса опция ‘—dh-small’, которая задает небольшое значение секретного ключа, тем самым облегчая расчеты на стороне точки доступа: # reaver -i mon0 -b 00:01:02:03:04:05 -vv --dh-small
  3. Таймаут ожидания ответа по умолчанию равен пяти секундам. При необходимости его можно изменить: # reaver -i mon0 -b 00:01:02:03:04:05 -t 2
  4. Задержка между попытками по умолчанию равна одной секунде. Она также может быть настроена: # reaver -i mon0 -b 00:01:02:03:04:05 -d 0
  5. Некоторые точки доступа могут блокировать WPS на определенное время, заподозрив, что их пытаются поиметь. Reaver эту ситуацию замечает и делает паузу в переборе на 315 секунд по умолчанию, длительность этой паузы можно менять: # reaver -i mon0 -b 00:01:02:03:04:05 --lock-delay=250
  6. Некоторые реализации протокола WPS разрывают соединение при неправильном PIN-коде, хотя по спецификации должны возвращать особое сообщение. Reaver автоматически распознает такую ситуацию, для этого существует опция ‘—nack’: # reaver -i mon0 -b 00:01:02:03:04:05 --nack
  7. Опция ‘—eap-terminate’ предназначена для работы с теми АР, которые требуют завершения WPS-сессии с помощью сообщения EAP FAIL: # reaver -i mon0 -b 00:01:02:03:04:05 --eap-terminate
  8. Возникновение ошибок в WPS-сессии может означать, что АР ограничивает число попыток ввода PIN-кода, либо просто перегружена запросами. Информация об этом будет отображаться на экране. В этом случае Reaver приостанавливает свою деятельность, причем время паузы может быть задано с помощью опции ‘—fail-wait’: # reaver -i mon0 -b 00:01:02:03:04:05 --fail-wait=360


FAQ

Вопрос: Какой беспроводной адаптер нужен для взлома?

Ответ: Перед тем как экспериментировать, нужно убедиться, что беспроводной адаптер может работать в режиме мониторинга. Лучший способ - свериться со списком поддерживаемого оборудования на сайте проекта Aircrack-ng . Если же встанет вопрос о том, какой беспроводной модуль купить, то начать можно с любого адаптера на чипсете RTL8187L. USB’шные донглы легко найти в интернете за 20$.

Вопрос: Почему у меня возникают ошибки «timeout» и «out of order»?

Ответ: Обычно это происходит из-за низкого уровня сигнала и плохой связи с точкой доступа. Кроме того, точка доступа может на время заблокировать использование WPS.

Вопрос: Почему у меня не работает спуфинг MAC-адреса?

Ответ: Возможно, ты спуфишь MAC виртуального интерфейса mon0, а это работать не будет. Надо указывать имя реального интерфейса, например, wlan0.

Вопрос: Почему при плохом сигнале Reaver работает плохо, хотя тот же взлом WEP проходит нормально?

Ответ: Обычно взлом WEP происходит путем повторной пересылки перехваченных пакетов, чтобы получить больше векторов инициализации (IV), необходимых для успешного взлома. В этом случае неважно, потерялся какой-либо пакет, либо как-то был поврежден по пути. А вот для атаки на WPS необходимо строгое следование протоколу передачи пакетов между точкой доступа и Reaver для проверки каждого PIN-кода. И если при этом какой-то пакет потеряется, либо придет в непотребном виде, то придется заново устанавливать WPS-сессию. Это делает атаки на WPS гораздо более зависимыми от уровня сигнала. Также важно помнить, что если твой беспроводной адаптер видит точку доступа, то это ещё не значит, что и точка доступа видит тебя. Так что если ты являешься счастливым обладателем высокомощного адаптера от ALFA Network и антенны на пару десятков dBi, то не надейся, что получится поломать все пойманные точки доступа.

Вопрос: Reaver все время посылает точке доступа один и тот же PIN, в чем дело?

Ответ: Проверь, активирован ли на роутере WPS. Это можно сделать при помощи утилиты wash: запусти её и проверь, что твоя цель находится в списке.

Вопрос: Почему я не могу ассоциироваться с точкой доступа?

Ответ: Это может быть из-за плохого уровня сигнала или потому, что твой адаптер непригоден для подобных изысканий.

Вопрос: Почему я постоянно получаю ошибки «rate limiting detected»? Ответ: Это происходит потому, что точка доступа заблокировала WPS. Обычно это временная блокировка (около пяти минут), но в некоторых случаях могут влепить и перманентный бан (разблокировка только через административную панель). Есть один неприятный баг в Reaver версии 1.3, из-за которого не определяются снятия подобных блокировок. В качестве воркэраунда предлагают использовать опцию ‘—ignore-locks’ или скачать последнюю версию из SVN.

Вопрос: Можно ли одновременно запустить два и более экземпляров Reaver для ускорения атаки?

Ответ: Теоретически можно, но если они будут долбить одну и ту же точку доступа, то скорость перебора едва ли увеличится, так как в данном случае она ограничивается слабым железом точки доступа, которое уже при одном атакующем загружается по полной.

Статья о взломе беспроводных сетей, защищенных WPA ключом. Нам, как и в , потребуется: ОС Windows, CommView for Wi-Fi и Aircrack-ng win.

Внимание!
Ваша Wi-Fi карта должна полностью поддерживаться программой CommView for Wi-Fi. Обязательно должен работать инструмент «Реассоциация узлов»!

Отличие протокола шифрования WPA от WEP

WPA – это замена устаревшему WEP протоколу, протоколы WPA/WPA2 являются в некоторой степени надстройками над WEP, в том смысле, что основной формат пакета и алгоритм шифрования (для WPA) не поменялись. Основные уязвимости WEP связаны с малой длиной IV — пакетов, примитивном алгоритме получения per-packet key, уязвимостями самого RC4 алгоритма и его потоковой природой. В WPA/WPA2 протоколах проблемы WEP практически решены, на данный момент нет методов взлома WPA ключей, кроме подбора ключей «в лоб» (brute-force). Это означает, что для поиска WPA-ключа нам надо его подбирать, например по словарю (радует, что не вручную, но даже на мощных компьютерах этот процесс занимает много времени). Минимальная длина WPA ключа 8 символов, поэтому в словаре должны быть слова, состоящие минимум из восьми символов.

К сожалению, взлом wpa шифрования может закончиться неудачей, например, если пароль очень длинный и не несет смысловую нагрузку (случайный набор цифр и букв). Прежде чем начать взлом, подумайте: «вам это точно надо?»

Настройка CommView for Wi-Fi

Настройки программы такие же, как и в статье: .

Запускаем CommView for Wi-Fi, при первом запуске он предложит пропатчить драйвера и перезагрузиться. Смело везде соглашаемся. Далее если мы собираемся использовать программу только для сбора шифрованных DATA пакетов выбираем меню ПРАВИЛА и ставим там галочки на захват DATA пакетов и игнор BEACON пакетов остальные галочки снимаем. Жмем сохранить текущее правило (сохраняем прозапас). Заходим в настройки и ставим там, как на рисунке:


Осталось зайти в главном окне программы во вкладку Log-файлы поставить галочку на автосохранение.


Взлом сети

Далее жмем кнопку «Начать захват» и в появившемся окне жмем «Начать сканирование». Слева появляется список точек которые находятсяв зоне доступа с уровнем сигнала и другой дополнительной информацией. Выбираем точку, которую будем взламывать и нажимаем «Захват».

Ждем пока клиенты подключаться к «вражеской» точке. Дальше выбираем в инструментах «Реассоциацию узлов».

Натолкнулся сегодня на программу для подбора паролей к Wi-Fi по словарю. Программа совершенно бесплатная и действительно работает. Проверял ее на своей точке доступа.

Называется этот шедевр — WiFICrack.

Интерфейс программы интуитивно понятен, но я, на всякий случай, все опишу пошагово.

Приступим….

Скачиваем архив с программой

Архив содержит два файла:

  • WifiCrack.exe — Программа для подбора паролей к Wi-Fi
  • pass.txt — Подключаемый словарь с паролями

Внимание! Программа рассчитана на работу только под Windows 7!

Запускаем файл WifiCrack.exe.

Отмечаем галочками те сети, пароль к которым мы хотим подобрать.

Жмем на кнопку Next

Помимо перебора дефолтовых паролей, программа умеет подбирать пароли по словарю. Словарь стандартных паролей лежит в архиве с программой. Для его подключения ставим в программе соответствующую галочку.

Жмем на кнопку Start.

Если программа сможет подобрать пароли, то после окончания работы в ее каталоге появится файл Good.txt. В нем вы найдете название сетей и пароли к ним.


Надеюсь, что эта информация была вам полезна.