This project was heavily inspired by dbisu's pico-ducky but expands on it by adding limited support for DuckyScript 3.0
This project contains a compiler that you need on your computer to compile your scripts to an inject.bin and an interpreter that goes on your Pico and runs the code in the inject.bin.
This installation guide assumes you have a Pico running CircuitPython.
Copy interpreter/code.py and interpreter/boot.py to the root of your Pico.
You need to install simple_chalk for the compiler.
To compile a script, run
$ python3 ./compiler/ducky3.py ./example.ducky
You can then copy the inject.bin compilation output to the root of your Pico.
This is a very new project and does not fully support DuckyScript 3.0 yet
- Anything linked to storage on the Pico:
HIDE_PAYLOADRESTORE_PAYLOADEXFIL$_RANDOM_SEED
ATTACKMODEis not supported$_CURRENT_VID$_CURRENT_PID$_CURRENT_ATTACKMODE
- Anything with the button is not supported:
WAIT_FOR_BUTTON_PRESSBUTTON_DEFDISABLE_BUTTONENABLE_BUTTONSAVE_ATTACKMODERESTORE_ATTACKMODE$_BUTTON_ENABLED$_BUTTON_USER_DEFINED$_BUTTON_PUSH_RECEIVED$_BUTTON_TIMEOUT
- The key press currently releases all the keys, I'm not sure how to make these work with that
HOLDRELEASERESET
- I'm not too sure what these do
$_HOST_CONFIGURATION_REQUEST_COUNT$_EXFIL_MODE_ENABLED$_STORAGE_ACTIVITY_TIMEOUT$_RECEIVED_HOST_LOCK_LED_REPLY
- OS detection
$_OS
This code is licensed under the GPLv3 license. Check out license.md for additional details.
This is a new project, bugs are expected and contributions are welcome