Rubber Ducky - Arduino UNO
Configuration for Arduino UNO Board:
- Download and install the Latest version of Arduino (Recommended: Linux/Mac)
 - Download Boot-loader Sketch(INO) from reference URL
 - Open the INO file in the Arduino IDE
 - Connect a Plain(no other wire connection) Arduino UNO to Laptop via USB cable
 - In Arduino IDE, Select Tools->Board->Arduino/Genuino UNO
 - In Arduino IDE, Select Tools->Port->ttyACM0 [Yours could be different. Use dmesg command to identify]
 - Verify and Upload the Code
 - Wait for the message “Upload Done” and Disconnect the USB cable
 - Make the cable connection as per the below screenshot attached
 - Connect the USB cable again back to laptop and the boot loader will install by itself
 - Wait for 1 to 2 min till the boot-loader get installed
 - Disconnect USB cable from the laptop and disconnect all the jump wire and make the board plain
 
Configuration for Arduino IDE:
- Connect the Board to laptop via USB cable
 - Navigate File->Preference->Settings->Additional Boards Manager URLs
 - Enter the URL mentioned in the reference for Addition Board and click OK
 - Navigate Tools->Board->Boards Manager
 - Search for “HoodLoader2” and install the latest version
 - Navigate to Sketch->Include Library->Add a .ZIP Library
 - Downloaded HID-Library from reference and provide as input
 
Configuration Final:
- Download the Ducky2Arduino code converted from the reference URL
 - Convert the sample file present inside the folder
 - [./ducky2arduino.py helloword_ducky.txt helloword_arduino.txt ]
 - Copy paste the helloworld_arduino in Arduino IDE
 - Compile and Upload the sketch
 - Once Upload unplug from the linux/mac and plug it in windows machine to view the output
 
Note: Windows should be in unlocked state. Not Locked
Arduino Script to Upload(sample):
#include "HID-Project.h"
void setup() {
 Keyboard.begin();
 delay(500);
 // Payload
 delay(3000);
 Keyboard.press(KEY_LEFT_GUI);
 Keyboard.press(KEY_R);
 Keyboard.releaseAll();
 delay(500);
 Keyboard.print("cmd.exe");
 delay(500);
 Keyboard.write(KEY_ENTER);
 delay(750);
 Keyboard.print("ipconfig");
 Keyboard.write(KEY_ENTER);
 }
void loop() { }
Wire Connection Screenshot:
Download Reference:
Latest Version of Arduino:
Bootloader Sketch ino:
Addition Boards Manager:
HID-Library:
Ducky to Arduino:

when compiling the INO code, there is an error which says that:
ReplyDeleteduckie_setup:304:25: error: bootloaders.h: No such file or directory
compilation terminated.
exit status 1
bootloaders.h: No such file or directory
you just have to download the whole github repository, not just the single sketch
DeleteUnable to find hoodloader2 in board manager??
ReplyDelete/home/kali/Bureau/HoodLoader2-master/avr/examples/Installation_Sketch/Installation_Sketch.ino:511:56: warning: narrowing conversion of '(int)(((unsigned char)((int)(((unsigned char)((int)b)) & 15))) | 48)' from 'int' to 'char' inside { } [-Wnarrowing]
ReplyDeletechar buf [4] = { ((b >> 4) & 0x0F) | '0', (b & 0x0F) | '0', ' ' , 0
Arduino:1.8.13 (Windows Store 1.8.42.0) (Windows 10), Scheda:"Arduino Uno"
ReplyDeleteIn file included from C:\Users\Utente\Documents\Arduino\sketch_mar18a\sketch_ducky2arduino\sketch_ducky2arduino.ino:1:0:
C:\Users\Utente\Documents\Arduino\libraries\HID-Project\src/HID-Project.h:35:2: error: #error HID Project can only be used with an USB MCU.
#error HID Project can only be used with an USB MCU.
^~~~~
exit status 1
Errore durante la compilazione per la scheda Arduino Uno.
Questo report potrebbe essere più ricco di informazioni abilitando l'opzione
"Mostra un output dettagliato durante la compilazione"
in "File -> Impostazioni"
why??
Does not work on Arduino UNO 😿
ReplyDeleteUPLOAD A VIDEO ON THIS
ReplyDeleteWhat is the purpose of jumper wires? can you explain the circuit please?
ReplyDeleteGreat article, I hope that you will going to post another one.
ReplyDeleteJTAG
i dont understand how to do this "Convert the sample file present inside the folder
ReplyDelete[./ducky2arduino.py helloword_ducky.txt helloword_arduino.txt ]"could you please advise how to ...thank you
nevermind figured it out but get no keyboard error
Delete