Привет! Сегодня мне на обзор попала очередная популярная у школьников программа из Play Market для «взлома» незадачливых соседей – WIFI WPS WPA TESTER. Покрутим и посмотрим на что она способна в бою.
У тебя другое мнение? Есть приложение интереснее? Добро пожаловать в комментарии – помоги другим читателям.
Где скачать?
Не будем бегать далеко и предлагать свои неактуальные версии APK. Все бесплатно и доступно на Google Play:
Официально скачать можно здесь
Для компьютеров это приложение не выпускается, но для компьютера есть куда более интересные программы. Для интересующихся ниже в статье будет ссылка. Вопрос со скачиванием закрыли, едем дальше.
Что под капотом?
А тут все то же самое, что и у других подобных приложений:
- Смотрит, включена ли WPS.
- Пробует перебирать WPS пины по своим базам.
А будет ли чудо?
Скорее всего чуда не будет. Это же пишет и автор программы в своем описании, но скачивающие ее пользователи все же наивно верят. Да и в своей массе точек доступа до сих пор можно встретить уязвимые к такой атаке роутеры. Так что одни радуются, другие гневно лютуют по незнанию матчасти, а третьи просто молчат и пытаются перебирать пароли.
Для людей на грани сомнений, рекомендую к прочтению мою статью по всем векторам атаки на беспроводные Wi-Fi сети. Читаем ЗДЕСЬ.
Отмеченные в отзывах минусы
Люди отмечают не так и много минусов:
- Жаждущие получить сохраненный пароль упираются в необходимость ROOT прав. Эти же права на Андроидах до 5 версии требуются вообще для работы с WPS.
- Нет локализации. Только английский язык. А наш человек без знания технологий сложно воспринимает эти басурманские иероглифы (но мастера с 4PDA уже выпустили свой APK с блекджеком и русским языком).
- Долго перебирает пароль. Ну здесь вообще стыдно о таком говорить – нужна скорость и другие фишки, идите в Kali Linux и читайте мануалы.
В остальном больше всех кричат те школьники, у которых ничего не получилось, т.к. вообще не понимают принципа работы программы. Разработчик здесь не причем, он ни в чем не виноват, прога работает как часы да еще и бесплатно.
Как вердикт – есть вариант, что вам повезет, но далеко не обязательно. За сим обзор заканчиваю, не ломайте чужие сети, применяйте подобные программы исключительно на своем домашнем роутере в целях проверки его безопасности. На этом все, до скорого, ваш WiFiGid!
Содержание статьи
Еще не так давно казалось, что беспроводная сеть, защищенная с помощью технологии 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:
- Push-Button-Connect (PBC). Пользователь нажимает специальную кнопку на роутере (хардварную) и на компьютере (софтварную), тем самым активируя процесс настройки. Нам это неинтересно.
- Ввод PIN-кода в веб-интерфейсе. Пользователь заходит через браузер в административный интерфейс роутера и вводит там PIN-код из восьми цифр, написанный на корпусе устройства (рисунок 1), после чего происходит процесс настройки. Этот способ подходит скорее для первоначальной конфигурации роутера, поэтому мы его рассматривать тоже не будем.
- Ввод PIN-кода на компьютере пользователя (рисунок 2). При соединении с роутером можно открыть специальную сессию WPS, в рамках которой настроить роутер или получить уже имеющиеся настройки, если правильно ввести PIN-код. Вот это уже привлекательно. Для открытия подобной сессии не нужна никакая аутентификация. Это может сделать любой желающий! Получается, что PIN-код уже потенциально подвержен атаке типа bruteforce. Но это лишь цветочки.
Рисунок 1. PIN-код WPS, написанный на корпусе роутера
Хакер #158. Взломать Wi-Fi за 10 часов
Уязвимость
Как я уже заметил ранее, PIN-код состоит из восьми цифр — следовательно, существует 10^8 (100 000 000) вариантов для подбора. Однако количество вариантов можно существенно сократить. Дело в том, что последняя цифра PIN-кода представляет собой некую контрольную сумму, которая высчитывается на основании семи первых цифр. В итоге получаем уже 10^7 (10 000 000) вариантов. Но и это еще не все! Далее внимательно смотрим на устройство протокола аутентификации WPS (рисунок 3). Такое ощущение, что его специально проектировали, чтобы оставить возможность для брутфорса. Оказывается, проверка PIN-кода осуществляется в два этапа. Он делится на две равные части, и каждая часть проверяется отдельно! Посмотрим на схему:
- Если после отсылки сообщения M4 атакующий получил в ответ EAP-NACK, то он может быть уверен, что первая часть PIN-кода неправильная.
- Если же он получил EAP-NACK после отсылки M6, то, соответственно, вторая часть PIN-кода неверна. Получаем 10^4 (10 000) вариантов для первой половины и 10^3 (1 000) для второй. В итоге имеем всего лишь 11 000 вариантов для полного перебора. Чтобы лучше понять, как это будет работать, посмотри на схему.
- Важный момент — возможная скорость перебора. Она ограничена скоростью обработки роутером WPS-запросов: одни точки доступа будут выдавать результат каждую секунду, другие — каждые десять секунд. Основное время при этом затрачивается на расчет открытого ключа по алгоритму Диффи-Хеллмана, он должен быть сгенерирован перед шагом M3. Затраченное на это время можно уменьшить, выбрав на стороне клиента простой секретный ключ, который в дальнейшем упростит расчеты других ключей. Практика показывает, что для успешного результата обычно достаточно перебрать лишь половину всех вариантов, и в среднем брутфорс занимает всего от четырех до десяти часов.
Рисунок 3. Протокол аутентификации WPS
Первая реализация
Первой появившейся реализацией брутфорса стала утилита wpscrack (goo.gl/9wABj), написанная исследователем Стефаном Фибёком на языке Python. Утилита использовала библиотеку Scapy, позволяющую инъектировать произвольные сетевые пакеты. Сценарий можно запустить только под Linux-системой, предварительно переведя беспроводной интерфейс в режим мониторинга. В качестве параметров необходимо указать имя сетевого интерфейса в системе, MAC-адрес беспроводного адаптера, а также MAC-адрес точки доступа и ее название (SSID).
Как видишь, сначала была подобрана первая половина PIN-кода, затем — вторая, и в конце концов программа выдала готовый к использованию ключ для подключения к беспроводной сети. Сложно представить, сколько времени потребовалось бы, чтобы подобрать ключ такой длины (61 символ) ранее существовавшими инструментами. Впрочем, wpscrack не единственная утилита для эксплуатации уязвимости, и это довольно забавный момент: в то же самое время над той же самой проблемой работал и другой исследователь — Крейг Хеффнер из компании Tactical Network Solutions. Увидев, что в Сети появился работающий PoC для реализации атаки, он опубликовал свою утилиту Reaver. Она не только автоматизирует процесс подбора WPS-PIN и извлекает PSK-ключ, но и предлагает большее количество настроек, чтобы атаку можно было осуществить против самых разных роутеров. К тому же она поддерживает намного большее количество беспроводных адаптеров. Мы решили взять ее за основу и подробно описать, как злоумышленник может использовать уязвимость в протоколе WPS для подключения к защищенной беспроводной сети.
Рисунок 4. Блок-схема брутфорса PIN-кода WPS
HOW-TO
Как и для любой другой атаки на беспроводную сеть, нам понадобится Linux. Тут надо сказать, что Reaver присутствует в репозитории всеми известного дистрибутива BackTrack, в котором к тому же уже включены необходимые драйвера для беспроводных устройств. Поэтому использовать мы будем именно его.
Шаг 0. Готовим систему
На официальном сайте BackTrack 5 R1 доступен для загрузки в виде виртуальной машины под VMware и загрузочного образа ISO. Рекомендую последний вариант. Можно просто записать образ на болванку, а можно с помощью программы UNetbootin сделать загрузочную флешку: так или иначе, загрузившись с такого носителя, мы без лишних заморочек сразу будем иметь систему, готовую к работе.
Экспресс-курс по взлому Wi-Fi
- WEP (Wired Equivalent Privacy) Самая первая технология для защиты беспроводной сети оказалась крайне слабой. Взломать ее можно буквально за несколько минут, используя слабости применяемого в ней шифра RC4. Основными инструментами здесь служат снифер airodump-ng для сбора пакетов и утилита aircrack-ng, используемая непосредственно для взлома ключа. Также существует специальная тулза wesside-ng, которая вообще взламывает все близлежащие точки с WEP в автоматическом режиме.
- 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):
Шаг 2. Установка Reaver
Чтобы загрузить Reaver, нам понадобится интернет. Поэтому подключаем патчкорд или настраиваем беспроводной адаптер (меню “Applications > Internet > Wicd Network Manager"). Далее запускаем эмулятор терминала, где загружаем последнюю версию утилиты через репозиторий:
Тут надо сказать, что в репозитории находится версия 1.3, которая лично у меня заработала неправильно. Поискав информацию о проблеме, я нашел пост автора, который рекомендует обновиться до максимально возможной версии, скомпилировав исходники, взятые из SVN. Это, в общем, самый универсальный способ установки (для любого дистрибутива).
Никаких проблем со сборкой под BackTrack не будет — проверено лично. В дистрибутиве Arch Linux, которым пользуюсь я, установка производится и того проще, благодаря наличию соответствующего PKGBUILD’а:
Шаг 3. Подготовка к брутфорсу
Для использования Reaver необходимо проделать следующие вещи:
- перевести беспроводной адаптер в режим мониторинга;
- узнать имя беспроводного интерфейса;
- узнать MAC-адрес точки доступа (BSSID);
- убедиться, что на точке активирован WPS.
Для начала проверим, что беспроводной интерфейс вообще присутствует в системе:
Если в выводе этой команды есть интерфейс с описанием (обычно это wlan0) – значит, система распознала адаптер (если он подключался к беспроводной сети, чтобы загрузить Reaver, то лучше оборвать подключение). Переведем адаптер в режим мониторинга:
Эта команда создает виртуальный интерфейс в режиме мониторинга, его название будет указано в выводе команды (обычно это mon0). Теперь нам надо найти точку доступа для атаки и узнать её BSSID. Воспользуемся утилитой для прослушки беспроводного эфира airodump-ng:
На экране появится список точек доступа в радиусе досягаемости. Нас интересуют точки с шифрованием WPA/WPA2 и аутентификацией по ключу PSK.
Лучше выбирать одну из первых в списке, так как для проведения атаки желательна хорошая связь с точкой. Если точек много и список не умещается на экране, то можно воспользоваться другой известной утилитой — kismet, там интерфейс более приспособлен в этом плане. Опционально можно на месте проверить, включен ли на нашей точке механизм WPS. Для этого в комплекте с Reaver (но только если брать его из SVN) идет утилита wash:
В качестве параметра задается имя интерфейса, переведенного в режим мониторинга. Также можно использовать опцию ‘-f’ и скормить утилите cap-файл, созданный, например, тем же airodump-ng. По непонятной причине в пакет Reaver в BackTrack не включили утилиту wash. Будем надеяться, к моменту публикации статьи эту ошибку исправят.
Шаг 4. Запускаем брутфорс
Теперь можно приступать непосредственно к перебору PIN’а. Для старта Reaver в самом простом случае нужно немного. Необходимо лишь указать имя интерфейса (переведенного нами ранее в режим мониторинга) и BSSID точки доступа:
Ключ "-vv" включает расширенный вывод программы, чтобы мы могли убедиться, что все работает как надо.
Если программа последовательно отправляет PIN’ы точке доступа, значит, все завелось хорошо, и остается тупо ждать. Процесс может затянуться. Самое короткое время, за которое мне удалось сбрутфорсить PIN, составило примерно пять часов. Как только он будет подобран, программа радостно об этом сообщит:
Самое ценное здесь — это, конечно же, ключ WPA-PSK, который сразу же можно использовать для подключения. Все так просто, что даже не укладывается в голове.
Рисунок 5. Пример работы брутфорcа Reaver
Можно ли защититься?
Защититься от атаки можно пока одним способом — отключить нафиг WPS в настройках роутера. Правда, как оказалось, сделать это возможно далеко не всегда. Поскольку уязвимость существует не на уровне реализации, а на уровне протокола, ждать от производителей скорого патча, который решил бы все проблемы, не стоит. Самое большее, что они могут сейчас сделать, – это максимально противодействовать брутфорсу. Например, если блокировать WPS на один час после пяти неудачных попыток ввода PIN-кода, то перебор займет уже около 90 дней. Но другой вопрос, насколько быстро можно накатить такой патч на миллионы устройств, которые работают по всему миру?
База уязвимых моделей беспроводных точек доступа, оформленная в виде таблицы Google Docs.
Прокачиваем Reaver
В HOWTO мы показали самый простой и наиболее универсальный способ использования утилиты Reaver. Однако реализация WPS у разных производителей отличается, поэтому в некоторых случаях необходима дополнительная настройка. Ниже я приведу дополнительные опции, которые могут повысить скорость и эффективность перебора ключа.
- Можно задать номер канала и SSID точки доступа:
- Благотворно сказывается на скорости брутфорса опция ‘–dh-small’, которая задает небольшое значение секретного ключа, тем самым облегчая расчеты на стороне точки доступа:
- Таймаут ожидания ответа по умолчанию равен пяти секундам. При необходимости его можно изменить:
- Задержка между попытками по умолчанию равна одной секунде. Она также может быть настроена:
- Некоторые точки доступа могут блокировать WPS на определенное время, заподозрив, что их пытаются поиметь. Reaver эту ситуацию замечает и делает паузу в переборе на 315 секунд по умолчанию, длительность этой паузы можно менять:
- Некоторые реализации протокола WPS разрывают соединение при неправильном PIN-коде, хотя по спецификации должны возвращать особое сообщение. Reaver автоматически распознает такую ситуацию, для этого существует опция ‘–nack’:
- Опция ‘–eap-terminate’ предназначена для работы с теми АР, которые требуют завершения WPS-сессии с помощью сообщения EAP FAIL:
- Возникновение ошибок в WPS-сессии может означать, что АР ограничивает число попыток ввода PIN-кода, либо просто перегружена запросами. Информация об этом будет отображаться на экране. В этом случае Reaver приостанавливает свою деятельность, причем время паузы может быть задано с помощью опции ‘–fail-wait’:
Вопрос: Какой беспроводной адаптер нужен для взлома?
Ответ: Перед тем как экспериментировать, нужно убедиться, что беспроводной адаптер может работать в режиме мониторинга. Лучший способ — свериться со списком поддерживаемого оборудования на сайте проекта 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 для ускорения атаки?
Ответ: Теоретически можно, но если они будут долбить одну и ту же точку доступа, то скорость перебора едва ли увеличится, так как в данном случае она ограничивается слабым железом точки доступа, которое уже при одном атакующем загружается по полной.
Интернет и сеть
WIFI WPS WPA TESTER – С помощью этого приложения вы сможете искать уязвимости в точка доступа wi-fi. Все что вам нужно это запустить сканирование сетей и выбрать нужную нам, будьте внимательны ведь вам подойдут только те где показаны замки зеленого цвета. Дальше запускаем проверку пинов и подключаемся к интернету, вот тот то мы и получаем пароль от этой точки доступа. Все делается быстро и просто так что с таким взломом сможет справиться любой пользователь.