Второй этаж

Продолжение истории с устройством для тестирования атаки Deauthentication на Wi-Fi сеть.

Поигравшись с прототипом от предыдущего проекта, понял, что эффективность работы всё таки не достаточна. Последней каплей стал смартфон моего сына, который настолько быстро переподключался, что вообще было не понятно – “в чём прикол”.
Но, сдаваться мы не привыкли 🙂
Поразмыслив, придумал новый вариант улучшения системы. С помощью второго ESP8266 модуля.
Идея такова – разделить систему на две части. Один модуль непрерывно сканирует и ищет абонентские устройства и точки доступа. Он передаёт результаты на второй модуль по последовательному порту. Второй модуль максимально быстро рассылает Deauthenticate, постоянно обновляя список.

Железо

_DSC0120На более длинные планки установлено сразу два ESP модуля. Они подключены к одному преобразователю напряжения. В общем, всё также как и в предыдущем устройстве. Дополнительно Tx последовательного порта одного модуля подключен к Rx другого. (Земля и так общая.) Таким образом, порт работает в симплексном режиме. Какой модуль первый, какой второй – неважно. Программа на них одна (см. ниже).

Из минусов – уменьшилось время жизни батареи. Я точно не измерял, но по ощущениям держит где-то порядка одного часа. Пришлось перейти на лабораторный блок питания для отладки.

Софт

_DSC0121Делать две программы естественно лень. Так что программа одна. После включения модули в течении ~3 секунд передают последовательность 0xFF. Но получает её только один из них (будущий Джамер), поскольку обратно просто нет провода. Так модули понимают, кто из них будет сканером, а кто Джамером. В качестве бонуса остаётся незанятый канал передачи на Джамере, его можно использовать для вывода отладочной информации.

“Сканер” ищет точки доступа и клиентов на каждом канале. Найдя нового клиента на данном канале, отправляет основную информацию на Джамер. Номер канала, MAC’и и порядковый номер последнего пакета. Если около 200 миллисекунд новых пакетов нет, Сканер переходит на следующий канал. При этом сбрасывается счётчик клиентов, чтобы все найденные клиенты были вновь отправлены на Джамер.

Протокол между модулями максимально простой, просто передача 15 байт на одного клиента. Начальная синхронизация основана на том, что первый байт пакета – номер канала, должен быть от 1 до 14, а никак не 0xFF, который 3 секунды посылает Сканер. В принципе, это же может сработать и в дальнейшем, если в канале будут ошибки (что маловероятно, учитывая схему).

Джамер проверяет порт, если есть что-то новенькое – добавляет/обновляет список. Потом отключает всех, кто уже зарегистрирован на этом канале. И идёт на следующий канал.

В результате скорость подавления возросла многократно. Устройство стабильно отключает два смартфона, лэптоп и принтер в двух смежных комнатах от Wi-Fi.

Моддинг

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

Так появился мод – “No-Wi-Fi-Coctail-Party-Edition”. Откуда взялись трубочки я думаю Вы догадались. Антенны теперь расположены на одной оси, что, как я надеюсь, должно уменьшить взаимное влияние (“поле диполя” и далее по тексту :-))

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

Исходный код на GitHub.


Posted

in

,

by

Tags:

Comments

2 responses to “Второй этаж”

  1. Andrey Zapariy Avatar
    Andrey Zapariy

    Круть нереальная 🙂

  2. Андрей Людвиг Avatar
    Андрей Людвиг

    В Hackaday заметили 🙂 http://hackaday.com/2016/01/30/hacklet-93-robotics-toolkit-and-esp8266-packet-injection/
    There is also English version of this project on Hackaday.io: https://hackaday.io/project/9333-weekend-on-the-dark-side

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.