Skip to content
KitploitKITPLOIT
ИнструментыБлог
Log in
Отправить
ИнструментыБлог
Отправить

Инструменты для хакинга, пентеста и кибербезопасности — ваш арсенал защиты!

Kitploit — это каталог инструментов для хакинга, кибербезопасности и пентестинга. Находите последние обновления проектов для поиска уязвимостей, анализа систем, автоматизации тестирования и усиления вашей безопасности.

··Ленты·Контакты·Конфиденциальность·© 2026 Kitploit

Каталог инструментов

Категории

Все категории
Loading categories
USBvalve — Отслеживайте активность USB на лету | Kitploit
Инструменты/GitHubGitHub/cecio/usbvalve
Безопасность встроенных системДинамический анализ (песочница)ФорензикаАнализ вредоносных программАппаратная Безопасность
GitHubcecio/usbvalve

USBvalve

Отслеживайте активность USB на лету

Репозиторий
1.3k43281 месяц назадПроверено Kitploit

Популярное

Смотреть все →

Откройте для себя самые используемые инструменты нашего сообщества.

Изучить все инструменты

Просмотрите нашу коллекцию инструментов

Смотреть все инструменты →
Поделиться

logo, landscape, dark text, transparent background

[!NOTE] USBvalve версии 1.0.0

Была выполнена полная переработка приложения:

  • отказ от среды Arduino IDE, теперь код написан для Pi Pico SDK
  • зависимости от внешних библиотек значительно сокращены
  • поддержка USB-хоста для Low Speed устройств теперь более надёжна (ATTiny85, EvilCrow и т.д.)
  • аппаратное обеспечение и функциональность почти не изменились, подробности см. в примечаниях ниже

Выявляйте USB-активность на лету

The two models The Watch 1.2

Я уверен, что вас, как и меня, просили вставить вашу USB-флешку в неизвестное устройство... и затем возникало сомнение:

что произошло с моим бедным донглом за кулисами? Кража моих файлов? Шифрование? Или просто установка вредоносного ПО? С USBvalve вы можете выявить это за секунды: построенный на сверхдешёвом готовом оборудовании, он позволяет быстро протестировать любую активность USB-файловой системы и понять, что происходит, прежде чем станет слишком поздно!

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

Selftest Readme

а начиная с версии 0.8.0 вы также можете использовать его как USB-хост для обнаружения BADUSB устройств:

HID

Это пример отладчика BADUSB, доступного через последовательный порт:

Если вы предпочитаете видео, вы также можете посмотреть мою презентацию на Insomni'hack

USBvalve Watch

Начиная с версии 0.15.0 поддерживается новая версия Pi Pico Watch. Чтобы скомпилировать новую версию, вам нужно раскомментировать строку #define PIWATCH в начале кода. Аппаратное обеспечение — это плата часов с 1,28-дюймовым TFT-дисплеем на базе RP2040. Дополнительную информацию можно найти здесь. Это также полностью совместимо с Waveshare RP2040-LCD-1.28.

Структура репозитория

docs: документация по проекту, включая презентацию, где вы можете ознакомиться со всеми функциями

firmware: готовые прошивки для Raspberry Pi Pico. Вы можете просто использовать их и прошить плату. У нас есть несколько различных версий: для 32 или 64 строк OLED, для Pico 1 или Pico2, Pi Pico Watch и т.д.

PCB: файл Gerber, если вы хотите напечатать кастомную печатную плату. Это не обязательно, вы можете использовать свою собственную или собрать на макетной плате

src и data: исходники, если вы хотите изменить и собрать прошивку самостоятельно

utils: некоторые утилиты, которые могут пригодиться для создания кастомной файловой системы

pictures: изображения и ресурсы, используемые в этом документе

STL: STL-файлы для корпуса. В папках 1.1 и 1.2 находятся полные корпуса (спасибо WhistleMaster). В папках 1.2_64 и 1.2_64_simple находятся корпуса для экрана 128x64 (спасибо rtmq0227). Если вы хотите что-то более лёгкое для защиты LCD, вы можете использовать USBvalve_sliding_cover.stl.

Сборка USBvalve

Список деталей

Если вы хотите собрать свой собственный, вам понадобится:

  • Raspberry Pi Pico 1 или 2 (или другая плата на базе RP2040)
  • I2C OLED-экран 128x64 или 128x32 (SSD1306)
  • (опционально) печатная плата USBvalve или макетная плата
  • (опционально) напечатанная на 3D-принтере прокладка для изоляции экрана от платы (https://www.thingiverse.com/thing:4748043), но вместо неё можно использовать кусочек изоляционной ленты

Примечания о BOOTSEL и версии >= 1.0.0

В версиях 0.x.x BOOTSEL использовался для сброса устройства или вывода количества HID-событий (нажатие > 2 с). Опрос BOOTSEL создавал некоторые проблемы для обнаружения BADUSB, поэтому это было удалено из версии 1.0.0 и заменено следующими двумя опциями:

  • припаяйте кнопку между GP0 и GND (контакты 1 и 3, пример см. на фото ниже), чтобы получить те же функции
  • используйте команды r (сброс) и h (HID-события) из монитора последовательного порта

В папке PCB вы также найдёте версию платы 1.3 с отверстиями на контактах 1 и 3 для облегчения монтажа кнопки. Но, как видите, вы также можете использовать свою старую версию.

Если вы не используете функции BADUSB или предпочитаете меньшее покрытие обнаружения, но хотите сохранить использование BOOTSEL, я также предоставляю прошивку, созданную с включённым bootsel (см. папку и релизы).

Инструкции по сборке

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

Почти вся работа выполняется непосредственно на плате программным обеспечением, поэтому вам нужно только организовать подключение к OLED для вывода.

Начиная с версии прошивки 0.8.0, USBvalve может обнаруживать HID-устройства (используется для обнаружения BADUSB). Для этого требуется дополнительный USB-порт, работающий как хост. Если вас это не интересует, вы можете использовать старые инструкции в папке docs и использовать версию платы 1.1. В противном случае используйте версию платы 1.2 (у нас есть версии для USB-A или USB-B, см. папку).

С печатной платой USBvalve

  • припаяйте USB-порт «мама» в области USBH. Это для версии A, но есть также версия для USB Micro-B, если предпочитаете
  • разместите Raspberry Pi Pico по шелкографии на лицевой стороне
  • вам не нужно припаивать все контакты. Только следующие:
    • D4 и D5 (левая сторона)
    • D14 и D15 (левая сторона)
    • GND (правая сторона, третий контакт сверху)
    • GND (правая сторона, третий контакт снизу)
    • 3v3_OUT (правая сторона)
    • VBUS (правая сторона)
    • 3 контакта DEBUG внизу: SWCLK, GND и SWDIO
  • разместите прокладку, напечатанную на 3D-принтере, или кусочек ленты на тех частях OLED, которые могут касаться Raspberry
  • припаяйте OLED (с гребёнкой) на место для 4 PIN

У некоторых OLED-экранов контакты GND и VCC поменяны местами, поэтому я спроектировал плату совместимой с обеими версиями:

Скачать инструмент