Warning
Educational Use Only
This project is intended solely for educational, research, and personal learning purposes.
It must not be used for malicious activities, unauthorized system access, or any action that could compromise the privacy or security of others.
The author assumes no responsibility for improper or illegal use of this device or its associated software.
Perform any testing only on devices you own or where you have explicit permission, and always comply with applicable cybersecurity laws and regulations.
This project is a custom STM32-based USB HID device, inspired by the Rubber Ducky. It includes firmware, hardware design files, and a simple scripting system for keyboard automation. Its main purpose is to help explore and learn about USB HID implementation, embedded systems development, and authorized security testing.
The complete documentation is available inside the /docs folder:
- Overview
- Hardware Design
- Firmware Architecture (Coming soon)
- Scripting Language (Coming soon)
- Usage Guide (Coming soon)
- Troubleshooting (Coming soon)
- Changelog (Coming soon)
- Keystroke Injection: Execute commands stored in a
script.txtfile. - Supports Rubber Ducky-style Scripts: Commands like "DELAY", "REM", "STRING" and special keypresses.
- Compatible with Spanish Keyboards: Fully supports keystroke injection on systems using the Spanish (ES) layout.
-
STM32CubeMX: Recommended to use the latest available version (tested with v6.16.0).
Download from the official ST website: https://www.st.com/en/development-tools/stm32cubemx.html -
STM32CubeIDE: Recommended to use the latest available version (tested with v2.0.0).
Download from the official ST website: https://www.st.com/en/development-tools/stm32cubeide.html -
KiCad: PCB design done using KiCad 9.0.
- Pentesting RD Board: Custom board included in the project schematics and hardware files.
- MicroSD Card: Must be formatted as FAT16 or FAT32 to store the
script.txtfile.
Future updates may include:
- Power LED Indicator: Add a small LED to show when the device is powered and running.
- MicroSD Script Status LED: An LED that indicates when the card is present, when no script is found, and flashes on each keystroke during script execution.
- Additional Commands: Extend the scripting language with new commands for improved automation and more advanced keystroke control.
Distributed under the MIT License. See LICENSE.txt for more information.
Email: eloyschmidtrodriguez@gmail.com
LinkedIn: https://www.linkedin.com/in/eloyalfredoschmidtr/
Project Link: https://github.com/51n0nGG0/pentesting_rd