Close
0%
0%

Cerberus — A USB Watchdog

Cerberus is my extension of USBvalve. Built on a Raspberry Pi Pico, it detects malicious USB devices to stop them before they reach the host

Similar projects worth following
149 views
0 followers
Most mitigations focus only on firmware-level tricks (keystroke injectors). Real-world attackers (or cheap commercial “USB-Killer” tools) can damage hardware with VBUS voltage injection. Cerberus treats both classes of threat: keep hostile firmware from issuing commands and keep hostile power from frying your rig.

What it does

  • Firmware/HID detection: inspects USB descriptors and runtime behavior to spot devices that pretend to be keyboards or combine storage + HID — classic firmware BadUSB / Rubber Ducky vectors.

  • Active prevention: blocks enumeration or isolates the device so the host never accepts a suspicious HID.

  • VBUS overvoltage protection (USB-Killer): the hardware monitors VBUS and reacts to dangerous voltage/current events. On detection, Cerberus dispel the overvoltage and logs the event to prevent destructive pulses from frying the host.

  • UX & logging: OLED status messages and serial logs for forensic/debugging.

  • 1 × Raspberry pi pico (or similar)
  • 1 × 1.3" OLED Display (SSD1306)
  • 1 × USB Overcurrent Brakout board My own design, will publish later
  • 1 × USB Type - A Port

  • Shitty Prototype

    Glitchboi11/06/2025 at 05:03 0 comments

    After a while I finally have a "show and tell" version that works, also I updated the repo to include a lot of info an a to-do section for the future, I'll work in the software part.

    I will attend to an event called BugCon with some pcb for the alpha and the overcurrent protection, if you want to meet me there!!!

  • V3 - First class

    Glitchboi10/24/2025 at 18:59 0 comments

    24-10-2025

    As of today I have finished my first working prototype, I have implemented all functions of the USBValve and added the overvoltage detection and remediation. I based my design in the TPS2514A (Charging Port Controller) and TPD2E001 (Electrostatic Discharge Protection).


    Because of the cost of the "specialty" hardware I design an module to reuse in case of need. I'll upload it later.

    I wanted to add more functions to the firmware like Device ID detection, USB payloads debugging and more.

    Also I'll have to add more hardware in the future like an EEPROM or flash exclusively for the file system so I can expand the firmware without bugs and missing space.

View all 2 project logs

Enjoy this project?

Share

Discussions

Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates