Сниффер wifi для windows

Незаметный сниффер Wi-Fi пакетов на базе микроконтроллера ESP8266

Библиотека Arduino PCAP может оказаться очень полезной во время сниффинга

Обычно для сниффинга Wi-Fi сетей нужен беспроводной сетевой адаптер. Однако благодаря библиотекам, написанным для Arduino, и дешевому чипу ESP8266, в некоторых случаях можно обойтись «малой кровью». Заплатив менее 10 долларов, можно смастерить крошечный Wi-Fi сниффер на базе платформы Arduino, сохраняющего собранную информацию в PCAP файлы, совместимые с Wireshark, который уместится практически где угодно.

Анализ Wi-Fi пакетов позволяет узнать многое о беспроводных сетях. Даже без знания пароля вы можете изучить типы близлежащих устройств, какие устройства подключены к какой сети, а также много другой информации, полезной для хакера. Однако вначале обычно требуется инвестировать средства в беспроводной сетевой адаптер, дающий больше контроля по сравнению с обычным адаптером, доступным на рынке.

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

Микроконтроллер ESP8266 может быть запрограммирован в Arduino и идет с интегрированным Wi-Fi модулем, который заметен по антенне, напечатанной на плате. Эти очень дешевые устройства часто используются производителями в макетных платах с дополнительными примочками, например, в виде USB портов для облегчения программирования. На рынке представлено множество устройств на базе контролеров ESP8266, однако мы всегда имеем дело с одним и тем же чипом в центре платы с характерной диаграммой направленности антенны.

Одна из наиболее популярных макетных плат на базе ESP8266 — D1 Mini. Эти платы распространены среди нескольких производителей и по стоимости начинаются от 3 долларов. Также в этих устройствах есть пины для подключения к сенсорам и дисплеям. Количество выводов меньше, чем, например, в платформе NodeMCU, но и размер D1 Mini в два раза тоже меньше.

Вследствие популярности среди производителей для D1 Mini есть много «накладок», размещаемых друг над другом с целью расширения функциональности. Один из наиболее популярных модулей – для чтения и записи карту microSD.

Рисунок 1: Модуль для работы с картой microSD, подключенный к макетной плате

Благодаря Стефану Кремзеру (Stefan Kremser), также известному под псевдонимом Spacehuhn, в нашем распоряжении есть библиотека для генерации PCAP-файлов, совместимых с Wireshark, которую можно загрузить в микроконтроллер ESP8266 в считанные минуты. Хотя по функциональности ESP8266 намного слабее многих беспроводных сетевых адаптеров, этот микроконтроллер вполне подходит для работы с Wi-Fi пакетами.

У микроконтроллера ESP8266 есть некоторые ограничения, а библиотека будет работать лучше на чуть более дорогом и мощном микроконтроллере серии ESP32. Однако из-за экономии приходится идти на компромиссы, а поскольку в нашем устройстве D1 Mini есть модуль («накладка») для сбора данных, то мы вполне можем смириться с ограничениями.

Как только библиотека оказалась на микроконтроллере ESP8266, впоследствии нужно будет скопировать собранные данные. Лучше всего – через последовательное подключение, позволяющее передать информацию с микроконтроллера на компьютер через последовательный порт. Конечно, было бы неплохо наблюдать в Wireshark данные, поступающие с небольшого микроконтроллера в режиме реального времени, но мы будем собирать небольшое автономное устройство, сохраняющее собранный трафик на карте microSD.

Этот форм-фактор легко скрыть и использовать в тех местах, где создаются списки MAC адресов, в качестве пассивного Wi-Fi сниффера, который может обнаружить устройства на охватываемой территории в определенное период времени. Или в качестве анализатора для исследования сети и обнаружения, у каких устройств к какой сети есть разрешение на подключение. Крошечный D1 Mini вы сможете спрятать практически где угодно.

Во-первых, нам понадобится устройство на базе микроконтроллера ESP8266 (например, NodeMCU или D1 Mini). Я настоятельно рекомендую D1 Mini, поскольку это устройство размером, позволяющим прикрепить модуль для SD карты.

Из названия уже понятно, что модуль («накладка») предназначен для сохранения собранной информации на карту microSD. Я рекомендую упомянутый ранее D1 Mini datalogger, который можно купить довольно дешево. Нам потребуется всего лишь припаять пины, а затем подключить модуль к устройству. Сборщик данных включает в себя часы реального времени, позволяющие записывать информацию с временными метками на любую правильно отформатированную карту microSD.

Читайте также:  Nvidia graphic driver linux

Также нам понадобится паяльник для припаивания штыревого разъема, идущим в комплекте с устройством D1 Mini, в который будет вставляться модуль. Наконец, карта microSD должна быть отформатирована под файловую систему Fat32 (с Exfat работать не будет).

В итоге получается следующий перечень необходимого оборудования:

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

Шаг 1. Установка библиотек

Для успешной реализации проекта потребуется установка библиотек. Микроконтроллер должен сохранять пакеты на карту microSD. Соответственно, нужны библиотеки для коммуникации с картой microSD и преобразования радио сигналов в данные, пригодные для чтения. Установить библиотеки в Arduino довольно просто. Кроме того, обычно доступны полезные примеры, которые можно адаптировать под наши потребности.

Откройте папку с именем Arduino, где среда Arduino IDE сохраняет файлы проектов. Внутри должна быть папка с именем «Libraries», которая должна находиться внутри одной из папок, указанных ниже (в зависимости от операционной системы). После добавлении библиотека появится в меню Import Library:

/Documents/Arduino/libraries/

  • Windows: My Documents\Arduino\libraries\
  • В терминале перейдите в папку, где хранятся библиотеки, и введите команду git clone для копирования репозитария Arduino PCAP, библиотеки Arduino Time Library и зависимостей для ESP8266.

    В этой папке проверяется присутствие библиотек во время каждого запуска Arduino IDE. Зайдите в меню «Sketch», затем в раздел «Include Library» и выберите «Manage Libraries» для поиска нужной библиотеки.

    Рисунок 2: Добавление библиотек

    В появившемся окне можно найти и сразу загрузить библиотеки, популярные в сообществе. Например, библиотеку neopixel от Adafruit или библиотеку SdFat, необходимую для записи информации на карту microSD. Введите в поисковом поле «sdfat» и загрузите библиотеку, кликнув на «Install». Теперь эту библиотеку можно использовать во всех проектах.

    Рисунок 3: Установка библиотеки SdFat

    Закройте и перезапустите Arduino IDE, чтобы все нужные библиотеки загрузились.

    Шаг 2: Привязка оборудования

    Теперь нужно показать Arduino IDE, с каким оборудованием мы работаем. Зайдите в меню «Arduino» и выберите «Preferences». Затем вставьте URL, указанный ниже, в поле Additional Boards Manager URLs и нажмите «OK». В списке плат должны появиться платы на базе микроконтроллера ESP8266.

    http :// arduino . esp 8266. com / stable / package _ esp 8266 com _ index . json

    Для добавления устройства D1 Mini зайдите в меню «Tools» и наведите курсор мыши на раздел «Board» со списком поддерживаемых плат. В самом верху кликните на «Boards Manager». Появится окно, где можно добавить дополнительные платы.

    В появившемся окне Boards Manager в поисковом поле введите «esp8266». Затем выберите esp8266 by ESP8266 Community и установите выбранную плату для поддержки устройства D1 Mini в Arduino IDE. Возможно, поддержка этих устройств появилась после предыдущего шага, но нужно убедиться, что установлены все обновления.

    Теперь должна появиться секция «ESP8266 Modules» в разделе «Board». Выберите плату «WeMos D1 R2 & mini».

    Рисунок 4: Выбор платы WeMos D1 R2 & mini

    Шаг 3. Изменение настроек в коде

    Для открытия тестового проекта зайдите в меню Arduino, кликните на File –> Examples –> Arduino Pcap. В этой папке должен быть проект с именем «esp8266_pcap_sd», используемый нами в качестве шаблона, который мы подправим и загрузим на устройство D1 Mini. Если вы хотите использовать более мощный микроконтроллер серии ESP32, нужно выполнить те же самые шаги и выбрать проект с префиксом ESP32.

    Рисунок 5: Выбор проекта esp8266_pcap_sd

    После открытия проекта вы увидите раздел с основными настройками.

    Во-первых, нужно установить на устройстве канал для сниффинга. Наиболее часто используемые сетевые каналы: 1, 6 и 11. Устанавливаем канал 6.

    Далее нужно установить время ожидания перед сохранением файла на карту microSD. В устройстве D1 Mini не так много памяти, и поэтому устанавливаем сохранение каждые 30 секунд. Также можно указать имя сохраняемого файла. Если установить больший интервал ожидания, высока вероятность, что память устройства окажется переполненной.

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

    Читайте также:  Почему windows лучше mac os или windows

    Если переключение между каналами доступно, нужно указать наивысший канал. В США Wi-Fi сети не используют каналы с номером выше 11, но в других странах используют.

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

    В итоге настройки должны выглядеть так:

    Шаг 4. Соединение устройства и модуля

    Пришло время соединить аппаратную часть. Если вы покупали D1 Mini и модуль для сбора данных в интернет-магазине, нужно припаять пины (особого труда не составит). Штыревой разъем должен быть установлен так, как показано на рисунке ниже, чтобы не возникло проблем с подключением модуля:

    Рисунок 6: Подключение регистратора данных в припаянный штыревой разъем на устройстве D1 Mini

    Если вы не хотите заморачиваться с паянием и в тоже время хотите поддержать Spacehuhn, можно купить плату в специальном магазине.

    Шаг 5: Загрузка проекта и сниффинг пакетов

    Теперь пришло время собрать все воедино. Вначале вставляем карту microSD в модуль, подключаем USB кабель к компьютеру и устройству D1 mini. Затем заходим в меню «Tools» и далее в раздел «Port». В списке должен быть уже выбранный последовательный порт. В противном случае этот порт нужно выбрать. Если нужный последовательный порт не отображается, скорее всего, не установлены корректные драйвера для USB интерфейса устройства D1 Mini. Соответственно, устанавливаем нужные драйвера.

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

    Рисунок 7: Компиляция и загрузка проекта на устройство

    После загрузки кода зайдите в меню «Tools» и раздел «Serial Monitor» для проверки статуса устройства D1 Mini. Установите скорость (в бодах) равной 115,200, поскольку в противном будет отображаться набор случайных символов.

    Рисунок 8: Отслеживание статуса устройства

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

    Благодаря маленькой батарейке в виде таблетки для запитывания часов и источника питания в виде кабеля Micro-USB, подключенного к компьютеру или адаптеру питания, для запитывания всего устройства, вы можете собирать информацию, пока есть место на карте.

    Вместо порта питания через Micro-USB вы можете использовать батарейный аккумулятор в связке с модулем battery (или другую батарейную конструкцию) для запитывания устройства D1 Mini, но я не рекомендую, поскольку подключение через Micro-USB все равно понадобится, и появится риск возгорания. К тому же, батареи хватит ненадолго. Хотя есть одна интересная идея для экономии питания, связанная с использованием пассивного инфракрасного датчика движения, который будет активировать сбор информации с близлежащих устройств, пока в помещении находятся люди.

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

    Следует учитывать, что всегда будет несколько каналов, которые сниффер не сможет прослушивать одновременно. Если вы собираете Wi-Fi трафик, переключаясь между каналами, будет фрагментация. Для снижения фрагментации нужно прослушивать только один канал.

    Wi-Fi Sniffer для Windows: перехват трафика, логинов, паролей, Cookies в локальной сети

    ВНИМАНИЕ! Данная статья написана только в ознакомительных целях для специалистов в области IT безопасности. Перехват трафика был на примере собственных устройств в личной локальной сети. Перехват и использование личных данных может караться законом, поэтому мы не призываем использовать данную статью во вред окружающих. Мир во всем мире, помогаем друг другу!

    Всем привет! В статье мы поговорим про WiFi сниффер. Вообще данный тип программ предназначен исключительно для перехвата трафика в локальной сети. Далее без разницы как именно жертва подключена к маршрутизатору, по кабелю или по Wi-Fi. Хочу показать перехват трафика на примере интересной программы «Intercepter-NG». Почему я выбрал именно её? Дело в том, что это sniffer приложение написана специально для Windows имеет достаточно приветливый интерфейс и проста в использовании. Да и Linux есть не у всех.

    Читайте также:  Чистый сервер windows самп

    Возможности Intercepter-NG

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

    Программа запускает определенный режим, в котором компьютер клиент начинает отправлять запросы с данными не на шлюз, а именно на устройство с программой. То есть можно сказать он путает роутер с компьютером злоумышленника. Данная атака ещё называется ARP спуфингом. Далее, со второго компа, все данные используются в свои целях.

    После получения данных начинается процесс сниффинга, когда программа пытается выудить из пакетов нужную информацию: пароли, логики, конечные web-ресурс, посещаемые страницы в интернете и даже переписку в мессенджерах. Но есть небольшой минус в том, что такая картина отлично работает при незашифрованных данных. При запросе на HTTPS страницы нужны танцы с бубном. Например, программа может при запросе клиента на DNS сервер, подкладывать адрес своего фальшивого сайта, где он может ввести логин и пароль для входа.

    Обычная атака

    Для начала нам нужно скачать программу. Некоторые браузеры могут ругаться, если вы попытаетесь скачать приложение с официального сайта – sniff.su. Но можете попробовать. Если вам лень проходить данную защиту, то вы можете скачать приложение с GitHub .

    Скачиваем архив с версией или «v». Далее устанавливать ничего не нужно и достаточно просто разархивировать содержимое.

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

    1. Нужно выбрать свой работающий сетевой модуль. Я выбрал с тем, у которого уже присвоен локальны IP, то есть мой IP адрес;

    1. На пустой области нажимаем правой кнопочкой и далее запускаем «Smarty Scan»;

    1. Далее вы увидите список IP адресов, а также MAC и дополнительную информацию об устройствах в сети. Достаточно выбрать одну из целей атаки, нажать по ней и далее из списка выбрать «Add as Target», чтобы программа закрепила устройство. После этого нажимаем на кнопку запуска в правом верхнем углу окна;

    1. Заходим в раздел «MiTM mode» и нажимаем на значок радиации;

    1. Процесс запуска запущен, теперь, чтобы посмотреть логины и пароли – перейдите в третью вкладку;

    1. На второй вкладке вы увидите все переданные данные;

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

    Перехват Cookies

    Если кто не знает, то куки это временные данные, которые позволяют нам постоянно не вводить учетные данные на форумах, в социальных сетях и других сайтах. Можно сказать – это такой временный пропуск. Вот их также можно перехватывать с помощью этого приложения.

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

    Вы должны увидеть нужные Cookies. Использовать их очень просто – просто нажимаем по нужному сайту правой кнопочкой и далее выбираем «Open in browser». После этого откроется именно сайт с чужой учетной страницы.

    Получение логина и пароля

    Скорее всего после запуска программы клиент уже будет сидеть в той или иной учетной записи. Но можно заставить его снова ввести логин и пароль. Так как куки сами по себе не вечные – то это вполне нормальная практика. Для этого используется программа «Cookie Killer». После запуска у клиента полностью удаляются старые куки и ему приходится вводить логин и пароль заново, вот тут и включается перехват. По этому поводу есть отдельная видео инструкция:

    Оцените статью