перейти к содержанию

🚚 Бесплатная доставка от $200

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

BadUSB в пентесте: устройства, сценарии и защита USB/HID

BadUSB в исходном смысле — класс атак, при которых изменённая прошивка USB-контроллера заставляет устройство представляться не тем типом периферии, которым оно кажется. HID-клавиатура и ввод команд — лишь один вариант: устройство может также объявлять накопитель, сетевой или последовательный интерфейс. В коммерческой практике словом BadUSB часто шире называют готовые средства keystroke injection. Для пентеста важно различать классы, режимы и ограничения, тестировать payload на стенде и заранее включать физические действия в авторизацию и RoE.

Содержание

Ключевые выводы

Пункт Детали
BadUSB не равен только клавиатуре Изменённая прошивка или специализированное устройство может объявлять HID, storage, Ethernet и другие USB-функции.
Устройство выбирают по сценарию Rubber Ducky предназначен прежде всего для HID/storage, Bash Bunny сочетает HID с Ethernet, storage и serial, а Packet Squirrel относится к Ethernet inline.
Антивирус не является единственным контролем Ввод HID может не содержать файла, но последующие процессы, скрипты, сеть и загруженные данные могут обнаруживаться другими средствами.
Нужна многоуровневая защита Политика USB сочетает ограничение устройств и портов, наименьшие привилегии, hardening, мониторинг, EDR и обучение пользователей.
Авторизация должна быть явной Физическое подключение, социальная инженерия, сбор данных, допустимые цели, временные окна и условия остановки фиксируют до теста.

1. Как выбрать USB/HID-устройство для пентеста

Начните не с цены или рейтинга, а с проверяемого интерфейса и ожидаемого доказательства. Определите режимы USB, совместимые ОС и разъёмы, способ управления, требования к раскладке, журналирование, состояние после теста и ограничения RoE. Более сложное устройство не улучшит проверку, если его дополнительные интерфейсы не нужны.

Режимы эмуляции — главный критерий. USB Rubber Ducky объявляет HID и/или storage; Bash Bunny поддерживает разрешённые сочетания HID, storage, serial и Ethernet ECM/RNDIS; O.MG и WHID добавляют удалённое управление. Packet Squirrel работает в Ethernet-линии и не является BadUSB.

Язык и сопровождение определяют воспроизводимость. Проверяйте версию DuckyScript или Bunny payload, официальный компилятор, журнал изменений, репозиторий примеров и возможность хранить собственный проверенный код. Готовый payload нельзя запускать на клиентской системе без чтения и стендовой проверки.

Стоимость сравнивайте с нужными режимами, аксессуарами, кабелями, доставкой и временем подготовки. Цены меняются, поэтому актуальную сумму следует проверять на карточке товара; таблица ниже сравнивает функции, а не фиксирует валюту.

Совместимость важнее заявленной скорости. Payload зависит от раскладки клавиатуры, времени загрузки интерфейса, политик ОС, EDR и прав пользователя. До проекта проверьте точную версию системы, разъём, режим USB и безопасный откат.

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

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

Практический совет: сначала используйте отдельный лабораторный хост или VM с контролируемым USB passthrough. Снимите базовый образ, отключите доступ к рабочим данным и сети, проверьте раскладку, тайминги, stop condition, журналы и возврат состояния.

2. USB Rubber Ducky, Bash Bunny, O.MG, Digispark и WHID

Эти устройства решают разные задачи. Сравнивать их только как «быстрее или дороже» неверно: важны объявляемые USB-функции, управление, доступные языки, совместимость и допустимый сценарий.

USB Rubber Ducky

USB Rubber Ducky — специализированное устройство Hak5 для keystroke injection на DuckyScript 3.0. Оно может работать как HID, storage или сочетать оба режима. Простой безопасный демонстрационный payload, который открывает текстовый редактор и печатает маркер, помогает проверить раскладку, тайминги и журналирование без изменения системы.

REM Demonstracja szybkosci wstrzykiwania - otwiera Notatnik
DELAY 1000
GUI r
DELAY 500
STRINGLN notepad
DELAY 1000
STRINGLN Ten tekst wpisalo urzadzenie HID w ulamku sekundy.

Команда GUI r вызывает сочетание Windows+R, STRINGLN вводит строку и Enter, а DELAY задаёт паузу в миллисекундах. Устройство отправляет коды клавиш, поэтому payload для US-QWERTY может набрать неверный текст при другой раскладке. DuckyScript 3.0 поддерживает HID/storage, настраиваемые VID/PID и Keystroke Reflection через HID OUT; Ethernet-режима у Rubber Ducky нет.

  • Режимы: HID, storage или HID + storage

  • Язык: DuckyScript 3.0 для актуального USB Rubber Ducky

  • Цена: проверяйте актуальную карточку товара SAPSAN

  • Сценарии: контролируемый ввод, проверка политик USB/HID и Keystroke Reflection при отдельном разрешении

Hak5 Bash Bunny

Bash Bunny Mark II поддерживает HID, storage, serial и Ethernet ECM/RNDIS в разрешённых сочетаниях. Режим задают, например, строкой ATTACKMODE HID RNDIS_ETHERNET STORAGE, но совместимость комбинации нужно сверять с документацией и ОС цели. Устройство подходит для воспроизводимых USB- и Ethernet-сценариев; конкретный payload сначала проверяют в лаборатории и ограничивают RoE.

  • Режимы: HID, storage, serial, ECM/RNDIS Ethernet в поддерживаемых сочетаниях

  • Автоматизация: shell и Bunny/DuckyScript; Python зависит от установленной среды и payload

  • Цена: проверяйте актуальную карточку товара SAPSAN

  • Сценарии: авторизованные проверки USB/HID, сетевого интерфейса и контроля конечной точки

O.MG Cable

O.MG Cable внешне напоминает обычный кабель, но содержит контроллер, Wi-Fi и веб-интерфейс для лабораторного управления payload. Поддерживаемые HID-функции, keylogger, геозонирование и другие возможности зависят от точного варианта и прошивки; их нужно проверять по карточке модели. Скрытая форма особенно требует отдельного разрешения на размещение устройства, удалённое управление, сбор данных и срок его присутствия.

  • Функции: HID и удалённое управление по Wi-Fi; точный набор зависит от варианта

  • Дополнительно: keylogger и геозонирование доступны не во всех моделях — сверяйте спецификацию

  • Цена: проверяйте актуальную карточку выбранного варианта SAPSAN

  • Сценарии: разрешённая проверка кабельного импланта и физического контроля

Digispark

Digispark на ATtiny85 — компактная учебная плата, которую можно запрограммировать в Arduino IDE для базовой эмуляции клавиатуры. Объём памяти, стабильность USB, загрузчик и совместимость зависят от версии платы и библиотеки; это не готовый управляемый продукт уровня Hak5. Используйте её на отдельном стенде и проверяйте код.

  • Режим: базовая HID-клавиатура через совместимую библиотеку

  • Программирование: Arduino IDE и код для ATtiny85

  • Цена: проверяйте актуальную карточку и точную ревизию платы

  • Сценарии: обучение и простые демонстрации в изолированной среде

WHID Injector и Packet Squirrel

WHID Injector (Cactus WHID) сочетает HID с Wi-Fi на базе ESP8266 и позволяет управлять вводом удалённо. Перед использованием проверьте актуальность прошивки, способ аутентификации, совместимость интерфейса и состояние проекта: удалённая панель сама становится частью поверхности атаки.

Packet Squirrel Mark II относится к другому классу: это двухпортовое Ethernet inline-устройство, а не USB HID. Оно поддерживает режимы NAT, bridge и transparent, а payload может захватывать или изменять сетевые данные. Rubber Ducky, Bash Bunny и O.MG взаимодействуют с USB-интерфейсом конечной точки; Packet Squirrel помещают в разрешённый Ethernet-сегмент с отдельными правилами захвата и хранения трафика.

3. Сравнение классов устройств

Таблица сравнивает назначение и ограничения; актуальную цену, комплект и совместимость проверяйте на карточке товара.

Модель Класс устройства Режимы или функция Язык / управление Ключевое ограничение
USB Rubber Ducky V2 USB keystroke injection HID и storage DuckyScript 3.0 Нет Ethernet; важны раскладка и тайминги
Bash Bunny Mark II USB multi-function HID, storage, serial, ECM/RNDIS Ethernet Shell и Bunny/DuckyScript Не все сочетания режимов совместимы
O.MG Cable Кабельный имплант с Wi-Fi HID и функции выбранного варианта Веб-интерфейс и совместимые payload Функции keylogger/geofence зависят от модели
Digispark Учебная плата HID Эмуляция клавиатуры Arduino IDE Ограниченные ресурсы и неодинаковые ревизии
WHID Injector HID с удалённым Wi-Fi Keystroke injection и управление Веб-интерфейс / прошивка проекта Проверьте поддержку и безопасность панели
Packet Squirrel Mark II Ethernet inline, не BadUSB NAT, bridge, transparent; захват и обработка трафика Payload и инструменты Linux 780

Рекомендации по выбору устройства под сценарий:

Для безопасной демонстрации HID достаточно Rubber Ducky или проверенной учебной платы. Bash Bunny выбирают, когда в область прямо входят дополнительные USB-функции или Ethernet ECM/RNDIS. O.MG нужен для согласованного сценария кабельного импланта и удалённого управления. Для проводной Ethernet-линии используют Packet Squirrel, который не является BadUSB.

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

4. Защита и проверка контроля USB

Пентест USB должен проверять не только успешность ввода, но и всю цепочку защитных мер: разрешение нового устройства, привилегии пользователя, запуск дочерних процессов, доступ к сети, журналирование, реакцию EDR/SOC и физический процесс.

  1. Контроль устройств и дескрипторов. VID/PID, название и serial задаются устройством и могут быть подделаны, поэтому одного allowlist по идентификаторам недостаточно. Сочетайте policy по классу и порту, утверждение новых устройств, минимальные привилегии и мониторинг; проверяйте, что политика действительно применяется к новым HID.

  2. Физическое ограничение портов. Блокираторы, отключение ненужных портов и контролируемые док-станции полезны там, где это соответствует процессу. Защитники применяют их вместе с учётом исключений, запасными рабочими местами и процедурой безопасного подключения разрешённой периферии.

  3. Политики ОС и endpoint management. USBGuard позволяет строить правила для Linux; в Windows и macOS применяют соответствующие средства device control/MDM/EDR. Возможности и значения по умолчанию различаются, поэтому проверяйте конкретную версию, режим audit/enforce и поведение для HID, storage, serial и network adapters.

  4. Антивирус и EDR. Сам HID-ввод может не создавать файла, но введённая команда, дочерний процесс, скрипт, сетевое соединение или загруженный компонент оставляют иные сигналы. Ни сигнатурный AV, ни поведенческий EDR не дают гарантии; в отчёте укажите, какой этап цепочки был разрешён, заблокирован или обнаружен.

  5. Обучение пользователей. Сотрудник не всегда может визуально отличить атакующее устройство от обычной периферии, поэтому обучение должно объяснять процесс: не подключать найденные устройства, сообщать о них и использовать утверждённый канал проверки. Самый сложный аспект защиты дополняют технические ограничения.

  6. Мониторинг и корреляция. Windows Event ID 6416 появляется только при включённом аудите Plug and Play и не является универсальным доказательством атаки. Коррелируйте появление нового класса устройства с процессами, скриптами, сетевыми событиями и контекстом пользователя; настраивайте baseline и проверяйте ложные срабатывания.

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

5. Практические наблюдения для воспроизводимого теста

Ниже — проверяемые инженерные выводы вместо неподтверждённых рассказов от первого лица.

Keystroke injection может выполняться быстрее человеческого ввода, но итоговое время зависит от USB enumeration, политик ОС, нагрузки, раскладки и задержек интерфейса. Слишком быстрый payload часто менее надёжен; измеряйте минимальные безопасные паузы на точной конфигурации.

Тестируйте payload на той же версии ОС, политик, EDR, языка и раскладки, что у цели, либо явно опишите расхождения. Изменение Windows, PowerShell или политики приложений способно изменить результат без ошибки устройства.

Дополнительные режимы Bash Bunny полезны только при знании USB и сетевых протоколов. Если сценарий ограничен безопасным вводом маркера, простое HID-устройство может дать такое же доказательство при меньшей сложности. Сравнивайте не цену, а требуемую функцию и качество телеметрии.

Для каждого теста подготовьте безопасный marker payload, ожидаемые события, stop condition, процедуру удаления артефактов и точные шаги воспроизведения. Устройство выбирайте отдельно для USB/HID, USB Ethernet, кабельного импланта или Ethernet inline; не объединяйте эти классы под одним результатом.

Лабораторное USB/HID-оборудование SAPSAN

SAPSAN предлагает оборудование для разрешённых лабораторных проверок USB/HID и Ethernet с доставкой в страны Европы и США. Перед заказом сверяйте точную ревизию, разъём, режимы, прошивку и совместимость с вашим стендом.

Главная страница магазина SAPSAN с баннером FEBERIS Pro и карточками товаров

В каталоге доступны USB Rubber Ducky, Bash Bunny Mark II, O.MG Cable, Digispark и WHID Injector. Packet Squirrel Mark II предназначен для проводных Ethernet-сценариев и не относится к BadUSB. Актуальные цены и комплектацию проверяйте на карточках товаров; полный ассортимент представлен на sapsan-sklep.pl. Любое применение требует действительной авторизации на конкретные активы и действия.

Часто задаваемые вопросы

Чем BadUSB отличается от обычного USB-накопителя?

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

Какое устройство выбрать для первой лабораторной проверки HID?

USB Rubber Ducky удобен благодаря DuckyScript 3.0 и официальной документации; Digispark дешевле, но требует самостоятельного кода и больше проверки. Начните с безопасного payload, который только печатает маркер в текстовом редакторе на изолированном стенде.

Обнаружит ли антивирус BadUSB?

Единого ответа нет. HID-ввод может не создавать файла, но процессы, скрипты, сеть и второй этап дают сигналы для device control, журналирования и EDR. Проверяйте каждый слой и не объявляйте атаку «бесфайловой», если она загружает или создаёт данные.

Как законно использовать USB/HID-устройство?

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

Подходит ли Digispark для профессиональной проверки?

Да, если область требует только базовой HID-эмуляции, а код, ревизия платы и результат проверены. Для Ethernet, storage, serial или управляемого удалённого сценария нужна платформа с соответствующими режимами; дороговизна сама по себе не делает доказательство профессиональным.

Предыдущая статья Роль Flipper Zero в пентестах: практическое руководство
Следующая статья Этичный хакер: роль, авторизация, процесс и специализации