Найти в Дзене
Не бесите меня

Мгновенный взлом Wi-Fi без пароля (с).

Мгновенный взлом Wi-Fi без пароля (с). Сразу скажу, что статья не для скрипт-кидди, не для охотников за халявным софтом и не для "диванных" экспертов. Эта статья для REAL профессионалов. И речь в ней пойдет именно о внутренностях WPA2. История эта началась ещё в 2014 году, когда мне, глубоко внедрившись в изучение PBKDF2 по очень важному делу, пришлось проверить на стойкость алгоритмы шифрования WPA2 своего роутера. Вооружившись Kali-инструментом мне удалось достаточно легко перехватить хендшейк и запустить брутфорс. Словарик занимал более 10 Гб, но и он не смог определить мой несложный пароль. Тогда и возникла идея реверса алгоритма шифрования. Разбирая математику процесса вычисления стало ясно, что даже на квантовом компьютере расчет пароля займет много времени. И тут мне в голову пришла мысль. Почему мы пытаемся подобрать отмычку если у нас есть ключ? Дело в том, что в радиоэфире пароль передаётся в зашифрованном виде, а вот его составляющие (МАС клиента и SSID) в открытом. Чтоб уб

Мгновенный взлом Wi-Fi без пароля (с).

У вас самый сложный пароль от Wi-Fi? Тогда мы идём к вам...
У вас самый сложный пароль от Wi-Fi? Тогда мы идём к вам...

Сразу скажу, что статья не для скрипт-кидди, не для охотников за халявным софтом и не для "диванных" экспертов. Эта статья для REAL профессионалов. И речь в ней пойдет именно о внутренностях WPA2.

История эта началась ещё в 2014 году, когда мне, глубоко внедрившись в изучение PBKDF2 по очень важному делу, пришлось проверить на стойкость алгоритмы шифрования WPA2 своего роутера. Вооружившись Kali-инструментом мне удалось достаточно легко перехватить хендшейк и запустить брутфорс. Словарик занимал более 10 Гб, но и он не смог определить мой несложный пароль. Тогда и возникла идея реверса алгоритма шифрования.

Разбирая математику процесса вычисления стало ясно, что даже на квантовом компьютере расчет пароля займет много времени. И тут мне в голову пришла мысль. Почему мы пытаемся подобрать отмычку если у нас есть ключ? Дело в том, что в радиоэфире пароль передаётся в зашифрованном виде, а вот его составляющие (МАС клиента и SSID) в открытом. Чтоб убедиться, что моя теория верна, мне пришлось несколько раз ловить свои хендшейки и сравнивать их, - со временем никаких изменений в процессе "рукопожатия" не обнаружилось. "Аппаратный баг" - возникла в голове мысль. Если вы знакомы с хендшейком - то вы уже видимо догадались к чему я веду.

-2

Дело в том, что для конкретного МАС-адреса значение поля "WPA Key Nonce" в процессе "рукопожатия" не меняется, как и некоторые другие поля. Пакет с запросом всегда содержит половину расчёта, а пакет с ответом - вторую половину расчёта. То есть функция шифрования не зависит от времени соединения. И это, на мой взгляд, серьёзный аппаратно-программный баг. Таким образом, теоретически, если злоумышленник перехватил хендшейк жертвы, он может "клонировать" его МАС-адрес на своё устройство и инициировать соединение, изменив в драйвере клона функцию расчёта ключа на обычную подмену перехваченного ключа, даже не зная пароля (!!!). То есть получить доступ в сеть жертвы имитируя присутствие его собственных сетевых устройств.

Не долго думая, для эксперимента с Китая была заказана плата WEMOS Мега со встроенным модулем ESP8266WiFi и небольшой 3.2" TFT экран. Ковыряние в коде легко позволило подставить в драйвер промежуточные значения ключа для процесса "рукопожатия" и МАС-адрес. И вот пришла плата.

-3

Несколько часов попыток соединиться не увенчались успехом. Мне снова пришлось несколько раз перепроверить весь код, но всё было правильно. Было решено немного отдохнуть и ноут ушёл в режим гибернации. После двухчасовой прогулки мне всё же пришлось вернуться домой, и каково же было моё удивление, когда на экране WEMOS Меги (дополнительный шилд), забытой во включённом состоянии, я увидел заветное "CONNECTED". Да, точно! Нельзя забывать, что устройство работало в пассивном режиме и пыталось получить соединение при подтверждённой аутентификации родного ноутбука. А когда ноутбук "лёг спать" и отключился от роутера, - его место в сети занял клон на WEMOSе. Докручивать в прошивку принудительную деаутентификацию для активного выкидывания ноута из сети мне уже было не интересно, тем более что в сети полно описалова на эту тему. Кто ищет - тот всегда найдёт (и перепрячет).

P.S. По понятным причинам код прошивки мне пришлось удалить. Не готова Планета к таким уязвимостям. И переписку ни с кем по этому поводу я вести не буду. Статья написана исключительно в ознакомительных целях. Идею дарю - время исправить баги ещё есть. Мне будет интересно узнать мнение экспертов из журнала "Xakep". Если в описании процессов вы нашли ошибки - значит вы ЭЛИТА. И, как говорится: "Level UP!". И всем, кто дочитал до конца, - "спокойной ночи". )))