USB Rubber Ducky: Firmware Update
This article consists of a short guide on changing/updating the USB Rubber Ducky firmware. It is intended as a supplement to the existing online guides since those are partly out of date.
- Ubuntu Linux (tested on 20.04 LTS) or similar
We will be using the Ducky-Flasher utility by kmichael500 which is provided here and we will make certain adjustments to get it to run on a modern Ubuntu Linux system. The afore mentioned guide also provides a way to update firmware on Windows, but this way does not seem to work with current Windows versions. If you want to update the firmware manually you can follow the Unix/OSX guide, which uses the dfu-programmer package like the Ducky-Flasher utility does and should also work on Linux.
- Install dfu-programmer
apt-get install dfu-programmer
- Install Python 2.x
apt-get install python2
- Download and unzip Ducky-Flasher
- Open ducky-flasher and change the Shebang to
- (optional) Ducky-Flasher provides four different firmware images (Original, FAT Duck, Detour Duck and Twin Duck).
Additional firmware images can be found here. If you want to use one of these image you can rename it and overwrite a image file in
ducky-flasher/firmwareor modify the Ducky-Flasher program itself to add new firmware.
- Install the Ducky-Flasher
sudo python2 setup.py
- Connect the Rubber Ducky in DFU mode by keeping the button pressed while plugging it in.
- Start the Ducky-Flasher and follow the instructions
- (optional) Uninstall the Ducky-Flasher
sudo python2 uninstall.py