Апгрейд домашней метеостанции или обмен данными между esp8266 на конструкторе WiFi-IoT.

Free_Wi-Fi… как же приятно видеть подобное оповещение на экране смартфона или другого гаджета, когда ты присел отдохнуть в кафе торгового центра или аэропорта перед вылетом. Так уж устроен человек, что тянет его ко всему дармовому. Однако каждому известно, где чаще всего бывает бесплатный сыр. Какие опасности таит в себе бесплатный вай-фай?

Уже давно не секрет (по крайней мере для знающих людей), что операторы открытых сетей с доступом к интернету могут легко перехватывать весь идущий через них трафик и получать таким образом различную информацию, в том числе что вы ищете и какие ресурсы посещаете. Хорошо, если ее просто передадут рекламодателям, чтобы изучать спрос на товары и услуги, и этим все ограничится, но это далеко не все опасности, подстерегающие охочих до халявы владельцев электронных девайсов. Что же еще не так?

Недавно в РФ был принят закон, призванный обезопасить открытые точки доступа в общественных местах через обязательную авторизацию с помощью мобильного телефона или социальных сетей. Но, как часто бывает, «что-то пошло не так» и благое, казалось бы, дело обернулось появлением новых уязвимостей, играющих на тонкостях души человеческой. В итоге родился небольшой проект, который в полной мере демонстрирует безграничную легковерность подавляющего большинства представителей Homo Sapiens. Итак, обо всем по порядку.

image

WARNING

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

Что за зверь такой?

Зверя изобрели и воплотили в железе наши китайские коллеги. Точнее, они построили скелет самого хищного зверя, которого мы будем одевать в овечью шкуру. Имя ему — контроллер ESP8266, неоднократно упоминавшийся на страницах «Хакера» и GitHub. В нашем проекте мы будем использовать его в качестве автономной точки доступа и веб-сервера. Девайс поднимет точку доступа с именем Free_Wifi, не содержащую пароля, при этом большая часть смартфонов и прочих девайсов будет присылать своим владельцам уведомление с предложением подключиться к открытой сети Wi-Fi, даже если они не просматривали список доступных сетей. Это проверено на Android 9 и iOS последней версии. Итак, доверчивый юзер, не особо полагаясь на интуицию и здравый смысл, нажимает на выпадающее уведомление с весьма заманчивым предложением и попадает на страницу регистрации (при этом не нужно открывать браузер). На экране появится вот такое окно.

Страница авторизации в открытой сети

Здесь мы видим стандартную страничку приветствия открытых точек доступа, предлагающую авторизоваться с помощью электронной почты, пароля и номера телефона либо сразу ввести код авторизации, если он есть. Жертва (как правило, не задумываясь) вводит данные, после чего получает уведомление, что нужно подождать SMS-сообщение с кодом авторизации, а все введенные жертвой данные благополучно сливаются на SD-карту устройства, одновременно отображаясь на OLED-дисплее.

Так выглядят перехваченные данные

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

И что дальше?

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

Часто ли ты используешь разные пароли для разных сервисов? Вопрос, скорее всего, риторический. Но, даже не имея действительного пароля, можно уже сделать выводы о предпочтениях и уровне осведомленности человека. А адрес электронной почты и номер телефона — это уже хоть какая-то информация, способная сыграть большую роль в дальнейших атаках. Тут на что фантазии хватит: от рассылки писем и SMS с рекламой находящихся поблизости заведений до взлома почты, социальных сетей и деанонимизации человека… Как минимум этот метод позволит узнать номерок и мыло понравившейся девчонки из соседнего подъезда.

В общем, мы наглядно убедились, что открытые сети могут быть весьма небезопасны.

Рождение зверя

Как я уже говорил, использовать мы будем ESP8266 NodeMCU либо ESP32 (для 32 придется подкорректировать код), эти контроллеры работают идентично. Вооружаемся паяльником, макетной платкой, инструментами. Также в нашем устройстве применяется адаптер microSD-карты и OLED-дисплей размером 128 на 32 пикселя с контроллером SSD1306 и интерфейсом i2C. Еще нам понадобится зуммер (динамик-пищалка от старого системника). Так, все приготовили. Берем схему, которая показана на следующей картинке, и приступаем к сборке зверюги. Можно паять, можно соединить просто на макетной плате, суть от этого не изменится.

Продолжение доступно только участникам

Вариант 1. Присоединись к сообществу «Xakep.ru», чтобы читать все материалы на сайте

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку! Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep.ru»? Тогда этот вариант для тебя! Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

Я уже участник «Xakep.ru» ← Ранее Около 80% организаций установили исправления для уязвимости в Citrix Далее → Министерство юстиции США обвинило во взломе Equifax китайских хакеров

16 апреля 2019

image

системы безопасноститерминалы продажучёт ресурсовпотребительская электроникаинтернет вещейEspressif Systemsстатьяинтегральные микросхемыбеспроводные технологии

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

Рынок беспроводных решений стремительно растет. Беспроводные технологии применяются в быту, в медицине, на производстве, в торговле. Это стало возможным благодаря двум факторам. Если совсем недавно для создания Wi-Fi- или Bluetooth-устройства разработчику приходилось начинать все с нуля и использовать «голую» микросхему приемопередатчика, то теперь к его услугам предлагаются не только чипы, но и готовые модули. Такие модули содержат в своем составе все необходимое для реализации беспроводного канала, что существенно упрощает процесс разработки. С другой стороны, упрощение разработки значительно повысило интерес к беспроводным технологиям со стороны широкого круга пользователей. Причем речь идет не только о профессиональных разработчиках, но и о радиолюбителях.

Сейчас на рынке беспроводных встраиваемых решений присутствует несколько крупных игроков. Среди них особенно стоит отметить компании Texas Instruments, STMicroelectronics, Microchip. Эти гиганты выпускают широкий спектр беспроводных микросхем и модулей с поддержкой различных беспроводных стандартов, в том числе Wi-Fi или Bluetooth. При использовании продукции этих компаний разработчики получают множество преимуществ:

  • доступ к надежному каналу поставки, поскольку разработчику не нужно волноваться, что производитель внезапно пропадет, и возникнет дефицит используемых компонентов;
  • доступ к богатому выбору средств разработки и отладки: отладочным платам, средам разработки, библиотекам, типовым решениям и прочему;
  • отличная информационная поддержка: статьи, публикации, инженерные сообщества, типовые схемы и так далее.

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

Компания Espressif Systems была основана еще в 2008 году в Китае, и только после пяти лет упорной работы представила первую беспроводную SoC-микросхему для Wi-Fi-приложений – ESP8089. Уже в следующем году компания выпустила Wi-Fi-микросхему ESP8266EX, которая стала чрезвычайно популярной среди разработчиков. В 2016 году, закрепляя успех, компания Espressif Systems представила новое флагманское семейство ESP32, которое стало одним из первых интегрированных решений с одновременной поддержкой Wi-Fi и Bluetooth. Таким образом, за десять лет компания выросла из небольшого стартапа до многонационального пионера IoT в полупроводниковой промышленности и за период с 2014 по 2018 год выпустила более 100 миллионов чипов.

Среди преимуществ продукции Espressif Systems можно отметить:

  • широкий выбор беспроводных микросхем и готовых модулей с поддержкой Wi-Fi и Bluetooth;
  • малую стоимость и отсутствие наценки за раскрученность бренда;
  • 12-летнюю гарантию выпуска. Этот пункт особенно важен для производителей промышленного оборудования;
  • доступность на российском рынке;
  • наличие широкого спектра отладочных плат;
  • бесплатные программные средства разработки;
  • богатый выбор библиотек и готовых решений в сети.

Для промышленного оборудования крайне важно, чтобы комплектующие имели гарантированный длительный жизненный цикл. Это касается и электроники. Компания Espressif официально гарантирует для своей продукции следующие жизненные циклы:

  • микросхемы ESP8266 – 12 лет, начиная с 1-го января 2014 года;
  • модули на базе ESP8266– 12 лет, начиная с 1-го января 2014года;
  • отладочные платы для ESP8266 – 12 лет, начиная с 1-го января 2014 года;
  • ESP8285 – 10лет, начиная с 1-го января 2016 года;
  • микросхемы ESP32 – 12лет, начиная с 1-го января 2016 года;
  • модули на базе ESP32 – 12 лет, начиная с 1-го января 2016 года;
  • отладочные платы для ESP32 – 12 лет, начиная с 1-го января 2016 года.

Исходя из этих данных, разработчики могут выбирать длительность жизненного цикла своих устройств.

Беспроводные SoC-микросхемы производства Espressif Systems

В настоящее время компания Espressif Systems выпускает два типа интегральных беспроводных SoC-микросхем:

  • чипы ESP8266 и ESP8285 с поддержкой Wi-Fi;
  • семейство ESP32 с одновременной поддержкой Wi-Fi и Bluetooth.

Все микросхемы поставляются в корпусном исполнении QFN 5×5 мм, за исключением чипа ESP32-D0WDQ6, который имеет корпусное исполнение QFN 6×6 мм (рисунок 1).

image

Рис. 1. Беспроводные микросхемы Espressif Systems поставляются в корпусном исполнении QFN 5×5 мм или QFN 6×6 мм

Между собой микросхемы отличаются типом процессора, объемом встроенной Flash-памяти, набором периферии и диапазоном питающих напряжений. Для наглядности в таблице 1 представлены основные отличительные особенности каждого из чипов.

Таблица 1. Сравнительная таблица интегральных беспроводных микросхем Espressif Systems

Наименование ESP32-D0WD ESP32-D0WDQ6 ESP32-D2WD ESP32-S0WD ESP8266EX ESP8285
Процессор Двухъядерный 32-битный процессор Xtensa® 240 МГц 600 DMIPS Двухъядерный 32-битный процессор Xtensa® 240 МГц 600 DMIPS Двухъядерный 32-битный процессор Xtensa® 160 МГц 400 DMIPS Одноядерный 32-битный процессор Xtensa® 160 МГц 200 DMIPS Одноядерный 32-битный процессор Tensilica L106 160 МГц
ОЗУ 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC 520 кбайт SRAM, 448 кбайт ROM, 16 кбайт SRAM в RTC 160 кбайт RAM
Flash, Мбайт 2 1
Число выводов 48 48 48 48 32
Wi-Fi Протокол 802.11b/g/n (HT40) 802.11b/g/n (HT20)
Мощность передатчика 802.11b: +20,5 дБм, 802.11g: +17 дБм, 802.11n: +18 дБм 802.11b: +20 дБм, 802.11g: +17 дБм, 802.11n: +14 дБм
Чувствительность приемника
Шифрование AES, SHA-2, CCMP (CBC-MAC, counter mode), TKIP (MIC, RC4), WAPI (SMS4), WEP (RC4) и CRC WEP(RC4)/TKIP(MIC, RC4)/AES, CCMP (CBC-MAC, counter mode), WAPI (SMS4) и CRC
Bluetooth Протокол Bluetooth v4.2 BR/EDR и BLE
Мощность передатчика, дБм +12
Чувствительность приемника, дБм -94 (0,1% BER)
Коммуникационные интерфейсы UART/SDIO/SPI/I²C/I²S/IR/ Ethernet/ CAN UART/SDIO/SPI/I²C/I²S/IR
Периферия GPIO/АЦП/ЦАП/ШИМ/датчик Холла/контроллер сенсорных функций GPIO/АЦП/ШИМ
Корпус, мм QFN, 5×5 QFN, 6×6 QFN, 5×5 QFN, 5×5 QFN, 5×5
Uпит, В 2,3…3,6 2,3…3,6 2,3…3,6 2,3…3,6 2,5…3,6 2,7…3,6
Траб, °С -40…125 -40…125 -40…125 -40…125 -40…125

Wi-Fi-микросхема ESP8266 была выпущена на рынок в 2014 году и стала первым крупным успехом компании Espressif Systems. ESP8266 может работать в качестве самостоятельного беспроводного Wi-Fi-контролера либо выступать в роли Wi-Fi-адаптера для управляющего процессора.

ESP8266 представляет собой систему-на-кристалле (SoC или СнК), которая состоит из двух основных доменов: высокочастотного и цифрового (рисунок 2).

image

Рис. 2. ESP8266 состоит из двух доменов: высокочастотного и цифрового

ВЧ-домен включает модуляторы, генераторы, согласующий трансформатор, силовой ключ и схемы фазовой автоподстройки частоты. Таким образом, практически все необходимые элементы для создания беспроводного Wi-Fi-канала, за исключением антенны, уже присутствуют в составе ESP8266. Характеристики приемника и передатчика Wi-Fi представлены в таблице 1.

Цифровой домен ESP8266 построен на базе 32-битного RISC-процессора Tensilica L106 с рабочей частотой до 160 МГц. Процессор взаимодействует с памятью и периферией с помощью трех шин: iBus, dBus и AHB. На борту у ESP8266 присутствует 160 кбайт ОЗУ.

При работе под управлением внешнего контроллера взаимодействие с ESP8266 производится с помощью интерфейса UART или SPI/SDIO. Если предполагается, что ESP8266 будет работать автономно, то для хранения пользовательской программы потребуется внешняя Flash, которая подключается по SPI. При этом существует возможность использования не только микросхем памяти Single-SPI, но и Double-SPI, а также Quad-SPI. Максимальный объем внешней Flash-памяти составляет 16 Мбайт.

При автономной работе большим плюсом ESP8266 является встроенная периферия:

  • 17 портов ввода-вывода;
  • коммуникационные интерфейсы (UART/SDIO/SPI/I²C/I²S);
  • четыре канала ШИМ;
  • контроллер инфракрасного канала связи (IR);
  • одноканальный 10-битный АЦП.

Создатели ESP8266 четко понимали, что одной из важнейших проблем, стоящих перед разработчиками беспроводных устройств, является снижение потребления. При питании от аккумулятора важно обеспечить малое среднее потребление и максимально широкий диапазон напряжений питания. Микросхема ESP8266 способна работать с напряжением питания 2,5…3,6 В. Для уменьшения потребления предлагается использовать различные режимы:

  • Active – активный режим, в котором общее потребление в первую очередь зависит от потребления ВЧ-домена;
  • Modem-sleep – режим, в котором процессорное ядро остается активным, а Wi-Fi выключается при отсутствии обмена данными (с сохранением соединения). Типовое потребление – 15 мА;
  • Light-sleep – спящий режим, в котором процессор и Wi-Fi периодически включаются и выключаются: сон в течение 300 мс, далее 3 мс бодрствования. Типовое потребление – 0,9 мА;
  • Deep-sleep– режим глубокого сна, в котором передача сообщений по Wi-Fi производится крайне редко. В промежутках сна блок Wi-Fi полностью отключен. Типовое потребление – 20 мкА;
  • Shut down – режим ожидания с полным отключением питания. Типовое потребление – 0,5 мкА.

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

Wi-Fi-микросхема ESP8285 – является своего рода модернизацией микросхемы ESP8266. Функционал и структурная схема ESP8285 в общих чертах остались без изменения: те же возможности Wi-Fi и то же процессорное ядро. Однако есть несколько важных отличий.

В первую очередь стоит отметить, что в составе ESP8285 появилась встроенная Flash-память объемом 1 Мбайт для хранения пользовательской программы. При этом для связи с Flash используется Dual-SPI. Такой подход явно ориентирован на создание сверхкомпактных решений с дефицитом свободного места, в которых нет возможности размещения внешней микросхемы памяти. Кроме того, уменьшение занимаемой площади и сокращение числа компонентов позволяет снизить стоимость конечного устройства.

По сравнению с ESP8266, периферия ESP8285 не претерпела изменений.

Потребление ESP8285 также осталось на уровне ESP8266, однако диапазон питающих напряжений сузился до 2,7…3,6 В. Это стоит иметь в виду.

Области применения для ESP8285 те же, что и у ESP8266.

Семейство Wi-Fi-/Bluetooth-микросхем ESP32. После волны популярности ESP8266 компания Espressif Systems решила закрепить успех и выпустила целое семейство новых беспроводных микросхем – ESP32. В первую очередь отметим, что микросхемы ESP32 поддерживают сразу два самых популярных беспроводных протокола: Wi-Fi и Bluetooth. Кроме того, благодаря переходу на технологический процесс 40 нм, удалось существенно увеличить степень интеграции, расширить функционал и снизить потребление.

При анализе структуры ESP32 можно увидеть все те же два основных домена: цифровой и высокочастотный (рисунок 3). Однако состав доменов существенно изменился. Появился встроенный Bluetooth-контроллер и сопутствующие ему блоки. ESP32 поддерживает Bluetooth v4.2 BR/EDR, а также BLE. Характеристики Wi-Fi примерно соответствуют показателям ESP8266. Характеристики Bluetooth представлены в таблице 1.

image

Рис. 3. Блок-схема микросхем ESP32

Еще больше изменений можно наблюдать в структуре цифрового домена.

  • В микросхемах ESP32 используется новый одно- или двухъядерный 32-битный процессор Xtensa® LX6 с максимальной рабочей частотой до 240 МГц (у ESP32-S0WD и ESP32-D2WD – 160 МГц). Особенностями нового процессора являются:
    • 16/24-битный набор инструкций;
    • поддержка вычислений с плавающей точкой;
    • поддержка DSP-инструкций (например, 32-битное умножение, 32-битное деление, 40-битное умножение с накоплением);
    • 32 вектора прерываний от 70 источников;
    • отладка посредством JTAG.
  • Помимо центрального процессора в составе ESP32 присутствует дополнительный малопотребляющий сопроцессор ULP, который берет на себя управление системой в режимах пониженного потребления.
  • В ESP32 значительно расширился объем встроенной памяти:
    • 448 кбайт ПЗУ, в которой хранится функциональная прошивка модуля;
    • 520 кбайт ОЗУ общего назначения;
    • 8 кбайт ОЗУ RTC FAST Memory. Эта память может быть использована основным процессором для хранения данных, а также при пробуждении из режима Deep-sleep mode;
    • 8 кбайт ОЗУ RTC SLOW Memory. Эта память может быть использована сопроцессором ULPв режиме Deep-sleep mode;
    • 1 кбит eFuse: 256 бит используются для системных нужд (MAC-адрес и конфигурация системы), еще 788 бит могут использоваться по усмотрению пользователя;
    • 2 Мбайт встроенной Flash (только у ESP32-D2WD).

Кроме того, память ESP32 может быть расширена за счет внешних микросхем ОЗУ (до 4 Мбайт SRAM) и Flash (до 16 Мбайт).

  • По сравнению с ESP8266, разнообразие и возможности периферийных блоков в ESP32 существенно расширились:
    • 34 порта ввода-вывода;
    • четыре 64-битных таймера с 16-битным делителем;
    • три сторожевых таймера;
    • часы реального времени со встроенной памятью;
    • Кроме «традиционных» интерфейсов UART/SDIO/SPI/I²C/I²S, появилась поддержка CAN 0 и Ethernet MAC (с IEEE 1588);
    • разрядность АЦП возросла до 12 бит, а число каналов – до 18;
    • два 8-битных ЦАП;
    • 10 сенсорных каналов для создания слайдеров, сенсорных кнопок и прочего;
    • датчик Холла;
    • каналы ШИМ для управления электродвигателями;
    • 16 независимых ШИМ-генераторов для управления светодиодами;
    • контроллер инфракрасного канала (IR);
    • аппаратные ускорители AES, SHA, RSAи ECC.

Необходимо отдельно сказать о потреблении ESP32. По сравнению с ESP8266 диапазон питающих напряжений был расширен до 2,3…3,6 В. Кроме того, разнообразие рабочих режимов существенно возросло, что дает разработчикам больше пространства для маневра.

Потребление в активном режиме по-прежнему зависит от работы беспроводных интерфейсов (таблица 2). Потребление ESP32 в режиме Modem-sleep зависит от числа процессорных ядер и рабочей частоты (таблица 3). Режим Deep-sleep разделен на три подрежима, которые отличаются состоянием и активностью малопотребляющего ULP-сопроцессора. Режим Hibernation подразумевает отключение всех блоков микросхемы за исключением RTC. Это самый малопотребляющий режим ESP32, в нем питающий ток составляет всего 5 мкА. Стоит напомнить, что в микросхемах ESP8266 самым экономным режимом был Deep-sleep с потреблением 20 мкА.

Таблица 2. Типовое потребление ESP32 в активном режиме

Режим Потребление, мА
Передача 802.11b, DSSS 1 Мбит/с, POUT = +19,5 дБм 240
Transmit 802.11b, OFDM 54 дБм POUT = +16 дБм 190
Transmit 802.11g, OFDM MCS7, POUT = +14 дБм 180
Прием 802.11b/g/n 95…100
Передача BT/BLE, POUT = 0 дБм 130
Прием BT/BLE 95…100

Таблица 3. Типовое потребление ESP32 в режимах пониженного потребления

Режим Описание Потребление
Active Зависит от активности радиопередатчика см. табл. 2
Modem-sleep Процессор активен 240 МГц Двухъядерный 30…68 мА
Одноядерный
160 МГц Двухъядерный 27…44 мА
Одноядерный 27…34 мА
80 МГц Двухъядерный 20…31 мА
Одноядерный 20…25 мА
Light-sleep 0,8 мА
Deep-sleep Активен малопотребляющий сопроцессор ULP 150 мкА
Мониторинг датчиков 100 мкА (длительность цикла 1%)
RTC + память RTC 10 мкА
Hibernation RTC 5 мкА
Power off На вывод CHIP_PU подан низкий уровень, питание чипа отключено 0,1 мкА

Важной задачей при создании современных беспроводных систем становится безопасность. Огромным плюсом ESP32 является наличие аппаратных блоков шифрования AES, SHA, RSA и ECC. Как известно, кодирование является достаточно затратным мероприятием с точки использования вычислительных ресурсов процессора. Благодаря встроенным криптографическим ускорителям центральный процессор ESP32 освобождается от рутинных операций и может заниматься чем-то более полезным.

В настоящий момент семейство ESP32 объединяет четыре модели:

Заключение

Компания Espressif Systems предлагает широкий выбор беспроводных микросхем и готовых модулей для создания Wi-Fi-устройств, а также – комбинированных Wi-Fi + BT/BLE-устройств. Среди преимуществ продукции Espressif Systems можно отметить малую стоимость, высокую надежность, гарантированный длительный жизненный цикл, что важно для промышленных устройств, наличие доступных отладочных средств и развитую систему информационной поддержки разработчиков: форумы, открытые проекты, доступную документацию и так далее.

•••

Wi-Fi jammer, или глушилка WiFi, — это устройство, которое предназначено для отключения беспроводных устройств от точки доступа. Зачем это нужно? Можете вообразить себе как дружеский розыгрыш, так и криминальное применение: злоумышленник может отключить от сети камеры слежения или другое важное оборудование. В сегодняшней статье мы разберемся, какие есть дешевые варианты WiFi-глушилок (аппаратных деаутентификаторов), как ими пользоваться и как защититься от подобных атак.

Еще по теме: Как сделать акустический сейф

Как работает глушилка WiFi

В отличие от настоящих глушилок, которые перебивают сигнал радиопередатчика своим более сильным сигналом, деаутентификатор работает на программном уровне. Он реализует атаку типа «отказ в обслуживании», отправляя на роутер фрейм деаутентификации от имени подключенных к сети устройств. Поскольку этот фрейм никак не шифруется, глушилке достаточно выведать MAC-адреса устройств, поснифав трафик в сети.

Обычно деаутентификация — это часть комплексной атаки на сеть. Данная атака используется при создании «злого двойника» точки доступа или для перехвата хендшейка, что затем позволяет расшифровать пароль. Однако глушилка WiFi может быть полезной и сама по себе.

В последнее время большую популярность приобрели недорогие и миниатюрные платы с поддержкой программной платформы NodeMCU. Они построены на модуле ESP8266, который реализует работу с Wi-Fi по стандарту 802.11 b/g/n на частоте 2,4 ГГц. Сейчас встречается два варианта подобных плат: с чипом CP2102 американской компании Silicon Labs или с китайским CH340.

Версии NodeMCU

Данные платы позиционируются как девайсы для прототипирования: на их основе технари создают автоматизированные системы, контролируемые по WiFi. Тема сама по себе очень интересная, но нас в данный момент интересует другое — возможность применения NodeMCU для проведения атак.

Для полноценного мониторинга и инъекции пакетов ESP8266 не подходит в силу технических ограничений, но его можно пустить в ход в качестве деаутентификатора — что и привело к появлению соответствующих прошивок. Год назад хороший человек с псевдонимом Spacehuhn выложил первую из них, но с тех пор появились и другие версии — с дополнительными возможностями. Впрочем, прежде чем переходить к программной части, определимся с выбором устройств.

В рамках этой статьи я буду демонстрировать процесс на примере платы китайского производителя Dstike: на ней стоит ESP8266 и есть режимы работы в качества клиента (P2P) и точки доступа (soft-AP). Управлять платой можно со телефона или любого другого устройства с WiFi.

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

Разновидности устройств Dstike

Deauther Wristband — браслет со встроенным дисплеем, батареей и переключателем. Удобное устройство для быстрого доступа к панели управления.

Портативный Jammer

Deauther Power Bank — с модифицированным контроллером заряда; управление осуществляется через специальную панель. На контроллере есть разъем для подключения внешней антенны. Аккумуляторы в комплект не входят. Это незаметное устройство, которое можно с легкостью оставить где-нибудь и использовать удаленно.

Power bank
Контроллер заряда

Deauther OLED V3.5 — в этом варианте вы дополнительно получите разъем для подключения внешней антенны и держатель для аккумулятора на 18650 мА · ч. Управляется устройство при помощи кнопок и переключателя, а вывод поступает на экран, что позволяет использовать этот вариант без дополнительного оборудования.

Готовый jammer с экраном

Главное преимущество этих гаджетов — в возможности выбора определенной сети или всех сразу в радиусе действия устройства. Отмечу на всякий случай, что для проведения атак пароль от WiFi не потребуется!

Установка Deauther 2.0

Начнем с Deauther 2.0 — той самой прошивки, которую разработал Spacehuhn. В его репозитории на GitHub вы можете выбрать версию для конкретной платы.

Файлы с расширением bin — это скомпилированные скетчи. Их нужно устанавливать на плату через специальный загрузчик. Но если захотите, то в архивах с исходным кодом вы найдете библиотеки и скетчи, которые можно поставить через Arduino IDE.

Загрузка .bin

Если вы выбрали вариант с загрузкой бинарника, то для начала запускайте программу NodeMCU Flasher. Скачать ее можно в репозитории NodeMCU.

Устанавливаем драйверы для CP2102 либо для CH340. После этого подключаем плату к компьютеру, открываем программу NodeMCU Flasher, выбираем порт COM в диспетчере устройств в разделе «Порты (COM и LPT)». Теперь переходим во вкладку Config, жмем на шестеренку и выбираем скачанный файл .bin.

Программа для прошивки

После добавления файла в строке слева появится его путь. Переходите во вкладку Operation и нажимайте на Flash — прошивка после этого будет загружена в плату.

Загрузка через Arduino IDE

Если вам удобнее устанавливать через Arduino IDE, то процесс слегка другой. Первым делом точно так же качаем драйверы (CP2102, CH340). Затем открываем Arduino IDE и в меню «Файл» ищем «Настройки», нажимаем на «Добавление ссылки для менеджера плат» и вставляем две ссылки:

Все сохраняем.

Добавление ссылок

Открываем вкладку «Инструменты» и выбираем пункт «Менеджер плат» из меню «Плата: …».

Добавление плат

Выбираем «Внесены» и устанавливаем arduino-esp-8266-deauther и esp8266.

Установка пакетов

Открываем папку со скетчем и библиотеками, переходим в «Инструменты». Настройки должны стоять как у меня на скриншоте.

В строке «Плата» выбирайте из списка ESP8266 Deauther Modules.

Загрузка прошивки

В строке Flash size выбираем свой модуль. Прошивку и объем памяти ставьте как на картинке ниже.

Версии модулей

Далее загружаем прошивку.

После включения плата создаст точку доступа. Подключайтесь к ней и заходите по адресу 192.168.4.1 или deauth.me. Вы попадете в конфигуратор и увидите предупреждение.

Предупреждение

В разделе конфигурации в строке LANG указываем ru для включения русского языка в веб-интерфейсе. Чтобы настройки вступили в силу, нужно нажать на «Сохранить» и перезагрузить устройство. Теперь оно готово к работе.

Обзор возможностей и настройки

Давайте быстро пройдемся по приложению и посмотрим, на что теперь способна наша платка.

Настройки

Если подключить глушилку по последовательному порту, то с помощью команд можно управлять джеммером. Эту функцию можно отключить в настройках, если убрать галочку SERIAL.

Команды для управления по последовательному порту

  • scan [] [-t ] [-c ] [-ch ]
  • show [selected] []
  • select [] []
  • deselect [] []
  • add ssid [-wpa2] [-cl ]
  • add ssid -ap [-cl ] [-f]
  • add ssid -s [-f]
  • add name [-ap ] [-s]
  • add name [-st ] [-s]
  • add name [-m ] [-ch ] [-b ] [-s]
  • set name
  • disable random
  • load [] []
  • save [] []
  • remove
  • remove [all]
  • attack [beacon] [deauth] [deauthall] [probe] [nooutput] [-t ]
  • attack status []
  • sysinfo
  • clear
  • format
  • print []
  • delete [] []
  • replace
  • copy
  • rename
  • write
  • set
  • reset
  • chicken
  • reboot
  • info
  • send deauth
  • send beacon [wpa2]
  • send probe
  • led []
  • led <#rrggbb> []
  • draw

Через 600 секунд после начала атак они автоматически прекратятся. Если не хотите, чтобы это происходило, то можете вручную настроить отключение по времени, задав значение в меню ATTACKTIMEOUT: укажите 0, и атаки перестанут автоматически отключаться.

Если в разделе сканирования нажать Scan APs, то глушилка находит все точки доступа Wi-Fi. Выбираете одну или несколько сетей, и можно переходить в раздел атак. Режим Deauth отключает все устройства от выбранной сети. Режим Beacon позволяет создавать одновременно до 60 точек доступа.

Сканирование и виды атак

В разделе SSIDs создаются точки доступа для атаки Beacon.

Создание точек доступа

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

Также разработчики прошивки, помимо самой WiFi-глушилки, продают и устройство, которое позволяет его обнаруживать.

Детектор

Авторы периодически обновляют прошивку и добавляют новые функции, так что следи за апдейтами!

Wi-PWN

Рассмотрим аналогичную прошивку Wi-PWN, которую разработал Сэм Денти (samdenty99). Он улучшил творение Spacehuhn и добавил функции детектора деаутентификации, а также создал сопутствующее приложение для Android. В итоге использовать Wi-PWN удобнее, чем Deauther 2.0.

После скачивания и распаковки архива потребуется прошить плату и установить приложение на телефон. В папке вы найдете программу ESP8266Flasher. Запустите ее, выбирайте COM-порт и в разделе Config — прошивку (она находится по пути *Wi-PWN-masterarduinoWi-PWN). Теперь жмите Flash во вкладке Operation.

С телефона подключаемся к плате по Wi-Fi.

Сеть Wi-Fi

Открываем скачанное приложение, соглашаемся с правилами, указываем имя и пароль сети. После настройки подключаемся к новому WiFi.

Настройка точки доступа и завершение установки

В приложении есть несколько вкладок с говорящими названиями:

  • Scan — раздел с поиском и выбором нескольких точек доступа;
  • Users — функция сканирования определенного Wi-Fi на наличие подключений и создание собственных «пользователей»;
  • Attack — атаки аналогичны версии Spacehuhn, но при клонировании сетей максимальное число пользователей — 48 вместо 60 (столько было в ранних версиях Deauther);
  • Detector — функция, которая позволяет сканировать каналы и определять глушилки;
  • Settings — настройка сервера WiFi (имя, пароль сети). Здесь же можно включить клиент WiFi и настроить параметры сканирования и атаки.

Защита от WiFi-глушилок

NodeMCU — это дешевое, универсальное, мощное и компактное решение для деаутентификации. Повторить весь проект можно быстро и без особых усилий. А раз это может сделать кто угодно, то неплохо подумать и о защите.

Большинство популярных роутеров используют стандарты IEEE 802.11b/g/n, которые подвержены глушению. Если хотите исключить такую вероятность, то ищите роутер с поддержкой стандарта 802.11w, который полностью защищает пользователей от глушилок WiFi.

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

Вам может быть интересно: Секретные документы АНБ: Шпионские устройства

ВКонтакте Twitter Facebook OK Telegram WhatsApp Viber Используемые источники:

  • https://xakep.ru/2020/02/11/wifi-esp/
  • https://www.compel.ru/lib/123539
  • https://spy-soft.net/wifi-jammer/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации