Найти тему
Project A.L.T.

WiFi деаутентификатор или мультитул для WiFi

Оглавление
WiFi деаутентификатор или мультитул для WiFi
WiFi деаутентификатор или мультитул для WiFi

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

Прежде чем начать, следует рассказать о важном отличии между WiFi деаутентификатором и WiFi глушилкой. В то время как глушилка просто создает шум в определенном диапазоне частот (например, 2,4 ГГц), атака с деаутентификацией возможна только из-за уязвимости в стандарте Wi-Fi (802.11). Устройство из этого проекта не создает помех ни на каких частотах. Оно просто отправляет несколько пакетов Wi-Fi, которые позволяют определенным устройствам отключиться. Это позволяет вам конкретно выбирать каждую цель. Глушилка просто блокирует все в радиусе действия, и поэтому ее использование незаконно.

Введение и немного предыстории

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

Особых проблем он раньше не доставлял, разве что любилпошуметь перфоратором в выходные дни или поздним вечером, но всё плохое, в том числе и ремонт, рано или поздно кончается. И пару месяцев я наслаждался долгожданной тишиной и спокойствием. Но, как выяснилось, это было затишье перед бурей. Сосед купил себе умную колонку с Алисой. Теперь с раннего утра до поздней ночи в квартире не умолкают веселые трели русской попсы вперемешку с "остроумными комментариями " Алисы.

Я пытался поговорить с соседом, объяснить, что его музыка мешает мне и другим жителям. Но он был настроен агрессивно и не желал слышать ничьих просьб. Я даже обратился в полицию, но они не смогли мне помочь.

Тогда я подумал, что было бы неплохо иметь небольшое портативное устройство, которое будет отключать соседской колонке доступ к  wifi сети в особо яркие часы обострения его меломанской натуры.

Конечно, я не призываю нарушать закон и делать что-то незаконное. Я понимаю, что это не самое дешевое и правильное решение. Все это плод моей больной фантазии, чтобы защитить свои права на комфортное проживание в своей квартире.

Конечно было бы неплохо, когда мой сосед-меломан вдруг решит поделится глубокой ночью своим безупречным музыкальным вкусом со всем домом, с помощью своей умной колонки работающей на полную громкость,  включить это гипотетическое, не менее умное устройство, в розетку на полчасика. И удовлетворенно услышав через стенку обиженный голос Алисы, что отсутствует подключение к интернету, и последующую громкую ругань соседа, спокойно наслаждаться заслуженным отдыхом.

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

Необходимые компоненты

Для использования базового функционала устройства вам достаточно иметь в наличии любую плату на базе ESP8266. Это может быть Wemos D1 Mini, NodeMCU, ESP01 и подобные.

Если хочется чего-то более сложного и универсального, то дополнительно вам понадобятся:

  • OLED экран SSD1306 желательно с I2C интерфейсом
  • 3 тактовых кнопки
  • Кусок макетной платы для размещения компонентов
  • Немного проводов для соединений

Сборка проекта

Размещаем все компоненты на макетной плате, припаиваем и соединяем проводами по схеме:

Схема сборки
Схема сборки

Wemos D1 Mini можно приклеить на обратную сторону платы термоклеем. Общий вид того что получилось на фото ниже:

Вид спереди
Вид спереди
Вид сзади
Вид сзади

После сборки и проверки всех соединений мультиметром можно приступать к прошивке устройства.

Прошивка устройства

Прошить устройство можно одним из следующих способов. Загрузка предварительно скомпилированной прошивки с помощью программы ESP Tool и ей подобных, либо сборка из исходников через Arduino IDE.

Прошивка через ESP Tool

Самый простой способ прошивки. Скачайте последнюю версию программы с github репозитория.

Далее подключите устройство к любому свободному USB порту компьютера и запустите программу. Выберите виртуальный COM порт для прошивки и скорость передачи данных. Затем выберите с помощью кнопки Browse, напротив надписи Firmware, версию файла для прошивки.

  • ESP8266_deauther.bin - для "голой" платы Wemos D1 Mini
  • ESP8266_deauther_OLED.bin - для устройств с OLED экраном и кнопками.

Для проверки правильности настроек можно использовать картинку ниже:

ESPTool-Gui
ESPTool-Gui

Далее жмите кнопк Upload и ожидайте завершения процесса.

Прошивка с помощью Arduino IDE

  • Исходный код проекта находится в папке src
  • Откройте esp8266_deauther.ino с помощью Arduino.
  • В Arduino перейдите по File > Preferences добавьте этот URL в Additional Boards Manager URLs: https://raw.githubusercontent.com/SpacehuhnTech/arduino/main/package_spacehuhn_index.json
  • Перейдите в Tools > Board > Boards Manager, выполните поиск deauther и установите Deauther ESP8266 Boards
  • Выберите свою плату в Tools > Board и убедитесь, что она находится в Deauther ESP8266 Boards (а не в ESP8266 Modules)!
  • В зависимости от вашей платы вам, возможно, придется выбрать настройку конфигурации на Tools > Deauther Config
  • Если вам необходимо сбросить настройки предыдущей прошивки, обязательно выберите Tools > Erase Flash > All Flash Contents

Если вы хотите добавить поддержку дисплея, светодиода или кнопок, то дополнительно необходимо выполнить несколько шагов:В Arduino в разделе tools > Deauther Config выберите Display Example I2C или Display Example SPI в зависимости от типа подключения вашего дисплея.

В редакторе кода откройте вкладку A_config.h

Прокрутите вниз до #if defined(DISPLAY_EXAMPLE_I2C) или #elif defined(DISPLAY_EXAMPLE_SPI)

При необходимости переназначьте используемые пины исходя из ваших настроек подключения. Также можете изменить тип используемого дисплея. Доступные варианты: #define SH1106_I2C, #define SSD1306_I2C, #define SH1106_SPI, #define SSD1306_SPI

  • Проверьте настройки и нажмите Загрузить!

Тестирование и отладка

После установки прошивки, откройте любую программу терминала умеющую работать с последовательным портом. Например,  можете воспользоваться монитором последовательного порта в Arduino IDE.

Установите скорость передачи данных на 115200 и выберите Newline.

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

Также проверьте пайку на макетной плате на замыкание между соседними пинами!

Если на дисплее нет изображения, то  введите  в терминале set display true;;save settings и нажмите enter. Далее нажмите кнопку сброса на плате, для перезапуска. Если экран ничего не показывает, значит еще раз проверьте подключение и свой код!

Чтобы проверить, все ли кнопки работают правильно, используйте команду screen mode buttontest. Чтобы вернуться в рабочий режим используйте команду screen mode menu.

Управление устройством

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

Управление через веб интерфейс

При запуске устройство создает точку доступа pwned c паролем deauther. Подключитесь к ней любым удобным способом, откройте браузер и перейдите по адресу 192.168.4.1 или deauth.me.

Откроется страница с предупреждением и отказом от ответственности. Внимательно прочитайте его и нажмите на кнопку внизу.

Страница предупреждения
Страница предупреждения

После нажатия на кнопку открывается страница сканирования.

Страница сканирования
Страница сканирования

Здесь вы можете начать сканирование на наличие точек доступа (сетей Wi-Fi) и станций (клиентских устройств) и посмотреть, сколько сетей находится вокруг вас.

Обратите внимание, что сканирование занимает от 2 до 5 секунд. При запуске должен загореться светодиод на плате. Когда он выключится, сканирование будет завершено, и вы можете нажать "Reload", чтобы загрузить результаты.

Теперь можно пролистать список и выбрать сети для атаки.

Выбор сети
Выбор сети

На странице SSID находятся различные настройки генерации фейковых точек доступа используемые для атак типа Beacon и Probe.

Экран SSID
Экран SSID

На странице Attacks вы можете запускать различные атаки на устройства WiFi.

Страница Attack
Страница Attack

Возможны следующие варианты атак:

  • Deauth - Закрывает соединение устройств Wi-Fi, отправляя кадры деаутентификации выбранным вами точкам доступа и клиентским устройствам.Это возможно только потому, что многие устройства не используют стандарт 802.11w-2009, который обеспечивает защиту от этой атаки.Выбирайте только одну цель! Когда вы выбираете несколько целей, работающих по разным каналам, и начинаете атаку, она быстро переключается между этими каналами, и у вас нет возможности повторно подключиться к точке доступа, на которой размещен этот веб-интерфейс.
  • Beacon - Непрерывная отправка пакетов-маяков будет выглядеть так, будто вы создали новые сети Wi-Fi. Вы можете указать имена сетей в разделе SSID. На моем смартфоне это выглядит примерно так:
Результат
Результат
  • Probe - Клиентские устройства отправляют запросы на проверку, находится ли поблизости известная сеть. Используйте эту атаку, чтобы сбить с толку WiFi-трекеры, запрашивая сети, указанные вами в списке SSID. Маловероятно, что вы увидите какое-либо воздействие этой атаки на вашу домашнюю сеть.

И, наконец, страница настроек. Служит для изменения различных настроек устройства. Для применения параметеров нажмите кнопку Save, затем Reload.

Экран настроек
Экран настроек

Управление с помощью экрана и кнопок

Функционал практически полностью аналогичен управлению через веб интерфейс, хотя и отсутствует множество тонких настроек. Можно сканировать Wifi, атаковать выбранные сети и запускать атаки типа beacon и probe. Также доступен монитор пакетов Wifi, для оценки загруженности той или иной сети. И бонусом идут небольшие часики с текущим временем. Плюсом данного метода управления является возможность использовать устройство напрямую без посредников, а также улучшенная стабильность работы по сравнению с веб интерфейсом

Ниже несколько фотографий интерфейса.

Экран запуска атак
Экран запуска атак
Монитор пакетов
Монитор пакетов

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

Заключение

В данной статье был представилен проект карманного устройства на базе Wemos D1 Mini, которое обладает функциями сканирования сетей WiFi, отправки пакетов деаутентификации и создания фальшивых WiFi сетей. Важно отметить, что несмотря на потенциальное незаконное использование таких устройств, данный проект разработан исключительно в образовательных и развлекательных целях, не призывая к нарушению закона. В статье были рассмотрены все этапы создания устройства, включая настройку и прошивку, а также предоставлены инструкции по контролю и управлению его работой.

Архив проекта можете скачать на моем сайте.

Если вас заинтересовало данное устройство, то вы можете также посетить Github репозиторий автора проекта для получения свежей версии прошивки и более подробной документации.

Материал также доступен на моем сайте: https://projectalt.ru и в группе ВК