Привет. Сегодня хочу рассказать, почему стоит отключать функцию WPS на точках доступа или WiFi роутерах, а так же продемонстрировать, как такая технология защиты может быть взломана.
Если вкратце – отключать нужно, потому что на огромном числе точек доступа, WPS гарантированно взламывается, максимум за пол дня тупого брутфорса, но в некоторых случаях – значительно быстрее.
Если вдруг вы не понимаете, что за WPS такой, и о чем я вообще говорю – это технология защиты WiFi призванная облегчить процесс подключения устройств к сети. Это аббревиатура от WiFi Protected Setup.
Бывает эта штука двух типов. 1 – когда вам необходимо нажать специальную кнопку на точке доступа, и затем в течении примерно 2х минут, нажать на подобную кнопку на вашем устройстве. И 2 – по пин коду – вы подключаетесь и у вас запрашивается пин код состоящий из 8ми цифр.
Собственно второй тип нас и интересует, хотя на огромном числе роутеров и точек доступа отключить один не отключая второй нельзя.
Если говорить очень грубо, то после того, как вы введете ваш пин – он отправляется точке доступа, она его проверяет, и возвращает ответ, что всё ОК или же пин не верный. Пин этот всегда состоит из 8ми цифр, и тут у вас может возникнуть закономерный вопрос:
Если мы имеем пинкод состоящий из 8 цифр, и на проверку каждого варианта должно тратиться пусть даже пол секунды, то не трудно посчитать сколько времени может занять перебор всех 100 000 000 варинтов: 100 000 000/3600/2/24 = 578 дней или чуть больше, чем полтора года, по факту будет гораздо больше, т.к. пол секунды – это крайне оптимистичное время на попытку, и оно однозначно будет больше.
Круто? Безусловно, вот только в технологии WPS есть занимательная штука, обнаруженная давным-давно, вроде бы в 2011 году, но это не точно, которая уменьшает наши 100 000 000 вариантов пин кодов, до всего лишь 11000. И вот как это работает.
Оказывается последняя цифра в пинкоде – это некая контрольная сумма, которая может быть спокойно рассчитана из предыдущих семи. Минус один порядок к вариантам.
Кроме того, первые 4 и последние 3 цифры – проверяются по-разному, и дают разные ответы на разные запросы. Стало быть, их можно подбирать независимо друг от друга. Таким образом количество вариантов падает до 11000 (10 в 4ой степени + 10 в третьей степени). Давайте теперь посчитаем сколько может занять брутфорс такого количества вариантов. Предположим, что на каждую попытку будет уходить 2 секунды – 11000*2/3600 получается около 6 часов – и результат будет гарантирован. На деле же это занимает гораздо меньше времени.
Защиты от этого недочета по большому счету– нет, нужно или менять кардинально стандарт, или делать какие-то защиты от брутфорсов со стороны производителей, например бан после нескольких попыток ввода неверного пин кода. Львиная часть современных точек доступа, с актуальными пошивками умеет делать подобные блокировки, но в то же время остается огромное число старых и не обновленных домашних роутеров без этой защиты.
Кроме того, несколько лет назад была обнаружена серьезная уязвимость – Pixie Dust, которая позволяет подбирать пароль в оффлайн режиме, после первой попытки, за считанные минуты, если не секунды.
Так же некоторые точки доступы оснащаются либо заранее известными пинами, либо генерируются, по заранее известным алгоритмам, например рассчитываются исходя из mac адреса устройства. Что так же многократно сокращает возможные варианты нужной комбинации цифр.
И так, как же осуществляется взлом WPS пин кода, в двух словах?
1 – проверяется на уязвимость Pixie Dust
2 – проверятся по базе заранее известных кодов и алгоритмов.
3 – если первые два пункта не дали результата, а доступ получить очень хочется – начинаем тупо брутить.
Что бы не быть голословным, предлагаю вам самим убедиться на сколько просто злоумышленник может взломать ваш WiFi. У меня есть роутер Zyxel Keenetik Giga II. Подобные роутеры подвержены уязвимости Pixie Dust. На нем и продемонстрирую простейший взлом.
Помните, что показываю я это только с целью демонстрации ненадежности технологии WPS. Пользоваться подобным методом можно только для тестирования своих точек доступа на проникновение, в случае если вы будете пытаться взломать чужие сети – не забывайте, что за это может быть предусмотрена ответственность, в том числе уголовная.
Воспользуемся дистрибутивом Kali Linux, чтобы не заморачиваться с установкой пакетов. Так же не будем мудрить с вводом команд вручную, а воспользуемся готовым скриптом для автоматизации ПенТеста точек доступа - Airgeddon. Если же кто-то хочет копнуть поглубже в эту тему – погуглите про bully, reaver, wash и airmon-ng.
И так - скачиваем скрипт:
git clone https://github.com/v1s1t0r1sh3r3/airgeddon.git
Идем в папку со скриптом и запускаем его:
cd airgeddon sudo bash airgeddon
При запуске скрипт проверит, что бы были установлены необходимые ему для работы утилиты, а так же наличие обновлений.
После этого выбираем наш беспроводной интерфейс.
Жмем цифру 2, тем самым переводим наш интерфейс в режим монитора. К слову, не все адаптеры могут работать в этом режиме. Если ваш адаптер не умеет, то увы на этом можете заканчивать или искать подходящий адаптер. Список адаптеров, которые умеют работать в режиме монитора – легко гуглится.
После перевода адаптера в нужный режим, идем в меню атак WPS – 8ой пункт меню. В этом меню сперва необходимо выбрать цель для атаки – цифра 4
Нам нужна не залоченная сеть (lck – no). В моем случае это test3.
Далее выбираем, при помощи какой утилиты будем проводить атаку – через bully или через reaver. Если вдруг, например через bully атака не удалась, то можно попробовать через reaver, или наоборот. У меня, по крайней мере так и было.
Ждем некоторое время. Если атака прошла успешно - увидим заветный пин код.
Далее выбираем в меню – подключение с известным пином для раскрытия пароля сети, через ту же утилиту, через которую удалось совершить атаку Pixie Dust, ждем еще некоторое время. Получаем заветный пароль WPA. И можем спокойно подключаться к сети.
Если Pixie Dust не пройдёт, то по такой же схеме можно воспользоваться базой известных пинов, или попытаться тупо сбрутить необходимый пин. Но как уже говорил при тупом брутфорсе может включиться защита, и вы можете быть заблокированы для подключения через WPS.
Как видите – атака на WPS, если включена авторизация по пин коду не представляет из себя ни чего сложного, и выполнить ее может даже человек далекий от информационных технологий и информационной защиты в частности. Так что, надеюсь мне удалось вас убедить, в том, что, при всём удобстве WPS – штука эта крайне небезопасная, и лучше её всегда отключать.
Share the article with your friends in social networks, maybe it will be useful to them.
If the article helped you, you can >>thank the author<<