QUACK
" commands – named in honor of the Rubber Ducky that invented the keystroke injection attack.QUACK
, in a payload the attack mode must contain the HID
option. This is the default attack mode on boot. See the ATTACKMODE section for information on additional attack mode options./root/udisk
) – the DUCKY_LANG
option configures the keyboard layout to be used in keystroke injection attacks. This is important to note as different computers and keyboards use different layouts around the world. DUCKY_LANG
is set to the US. Additional keyboard layouts are available from the languages directory on the Key Croc's USB Flash Disk (udisk). Language key maps are specified using the two letter country code.Q
is an alias for QUACK
that may be used as shorthand substitution anywhere that QUACK may be used. Q
does not have any further meaning and is otherwise not very impressive.QUACK y
" will type "y
", and "QUACK ENTER
" will press enter. Likewise, "QUACK CTRL-c
" will hold the Control
key and press c
. Additionally, "QUACK N
" will hold Shift
and press n
– since there is no capital N key on a keyboard.DUCKY_LANG
. Any single key or key combination may be specified. Here are a few choice examples:QUACK
will use the modifiers on the left side of the keyboard when injecting keystrokes. This behavior may be changed, either by modifying the language file or by using the keycode option with a specific modifier scan code. Both left and right side modifiers are specified in the language file for any given key combination/ The first instance is given priority. CTRL-c
can be pressed with the Control key on the left, or on the right side of the keyboard. This will result in either "01,00,06
" or "10,00,06
" scan code.STRING
processes the text following taking special care to auto-shift. STRING
can accept a single or multiple characters. There will be no ENTER
or Carriage return key at the end of a STRING
– so if one is desired it must be specified with its own QUACK
command. STRING
will automatically use SHIFT
to capitalize a character.QUACK
STRING
as it relates to quotes and escaping special bash characters.DELAY
creates a momentary pause in the ducky script. It is quite handy for creating a moment of pause between sequential commands that may take the target computer some time to process. DELAY
time is specified in milliseconds from 1 to 10000. Multiple DELAY
commands can be used to create longer delays.GUI r
" and the cmd command? That's because it takes a few milliseconds for the run dialog to appear before we can inject keystrokes. We don't typically think about these nuances as a human, but when you consider the Key Croc is one computer speaking to another, every millisecond counts.