diff --git a/.gitignore b/.gitignore index 8288100..2d70441 100644 --- a/.gitignore +++ b/.gitignore @@ -91,4 +91,10 @@ ENV/ .c9 # Test files -testfiles/* \ No newline at end of file +testfiles/* + +# Payloads +payloads/* +payload.txt +.DS_Store + diff --git a/ducktoolkit/encoder.py b/ducktoolkit/encoder.py index 5d378e4..a457569 100644 --- a/ducktoolkit/encoder.py +++ b/ducktoolkit/encoder.py @@ -121,6 +121,23 @@ def parse_text(duck_text, lang_file, bunny): response['encoded_file'].append(delay) + elif cmd == b'ATTACKMODE' : + if instruction == b"STORAGE" : + print("ATTACK MODE: STORAGE") + response['encoded_file'].append(convert_hex(0xF2F2)) + + + elif instruction == b"HIDSTORAGE" : + print("ATTACK MODE: HIDSTORAGE") + response['encoded_file'].append(convert_hex(0xF3F3)) + + elif instruction == b"HID" : + print("ATTACK MODE: HID") + response['encoded_file'].append(convert_hex(0xF1F1)) + + else: + print("UNKNOWN ATTACK MODE {}".format(instruction)) + elif cmd in iter(lang_file.keys()): diff --git a/ducktoolkit/languages/fr_mac.json b/ducktoolkit/languages/fr_mac.json new file mode 100644 index 0000000..ecdadde --- /dev/null +++ b/ducktoolkit/languages/fr_mac.json @@ -0,0 +1,168 @@ +{ + "__comment":"All numbers here are in hex format and 0x is ignored.", + "__comment":" ", + "__comment":"This list is in ascending order of 3rd byte (HID Usage ID).", + "__comment":" See section 10 Keyboard/Keypad Page (0x07)", + "__comment":" of document USB HID Usage Tables Version 1.12.", + "__comment":" ", + "__comment":"Definition of these 3 bytes can be found", + "__comment":" in section B.1 Protocol 1 (Keyboard)", + "__comment":" of document Device Class Definition for HID Version 1.11", + "__comment":" - byte 1: Modifier keys", + "__comment":" - byte 2: Reserved", + "__comment":" - byte 3: Keycode 1", + "__comment":" ", + "__comment":"Both documents can be obtained from link here", + "__comment":" http://www.usb.org/developers/hidpage/", + "__comment":" ", + "__comment":"A = LeftShift + a, { = LeftShift + [", + "__comment":" ", + "q":"00,00,04", + "b":"00,00,05", + "c":"00,00,06", + "d":"00,00,07", + "e":"00,00,08", + "f":"00,00,09", + "g":"00,00,0a", + "h":"00,00,0b", + "i":"00,00,0c", + "j":"00,00,0d", + "k":"00,00,0e", + "l":"00,00,0f", + ",":"00,00,10", + "n":"00,00,11", + "o":"00,00,12", + "p":"00,00,13", + "a":"00,00,14", + "r":"00,00,15", + "s":"00,00,16", + "t":"00,00,17", + "u":"00,00,18", + "v":"00,00,19", + "z":"00,00,1a", + "x":"00,00,1b", + "y":"00,00,1c", + "w":"00,00,1d", + "&":"00,00,1e", + "\"":"00,00,20", + "'":"00,00,21", + "(":"00,00,22", + "-":"00,00,2e", + "_":"02,00,2e", + "ENTER":"00,00,28", + "ESC":"00,00,29", + "ESCAPE":"00,00,29", + "TAB":"00,00,2b", + " ":"00,00,2c", + "SPACE":"00,00,2c", + ")":"00,00,2d", + "=":"00,00,38", + "$":"00,00,30", + "*":"00,00,31", + "m":"00,00,33", + ";":"00,00,36", + ":":"00,00,37", + "!":"00,00,38", + "CAPSLOCK":"00,00,39", + "F1":"00,00,3a", + "F2":"00,00,3b", + "F3":"00,00,3c", + "F4":"00,00,3d", + "F5":"00,00,3e", + "F6":"00,00,3f", + "F7":"00,00,40", + "F8":"00,00,41", + "F9":"00,00,42", + "F10":"00,00,43", + "F11":"00,00,44", + "F12":"00,00,45", + "PRINTSCREEN":"00,00,46", + "SCROLLLOCK":"00,00,47", + "BREAK":"00,00,48", + "PAUSE":"00,00,48", + "INSERT":"00,00,49", + "HOME":"00,00,4a", + "PAGEUP":"00,00,4b", + "DEL":"00,00,4c", + "DELETE":"00,00,4c", + "END":"00,00,4d", + "PAGEDOWN":"00,00,4e", + "RIGHT":"00,00,4f", + "RIGHTARROW":"00,00,4f", + "LEFT":"00,00,50", + "LEFTARROW":"00,00,50", + "DOWN":"00,00,51", + "DOWNARROW":"00,00,51", + "UP":"00,00,52", + "UPARROW":"00,00,52", + "APP":"00,00,65", + "MENU":"00,00,65", + "ALT-TAB":"00,00,71", + "CONTROL":"01,00,00", + "CTRL":"01,00,00", + "SHIFT":"02,00,00", + "Q":"02,00,04", + "B":"02,00,05", + "C":"02,00,06", + "D":"02,00,07", + "E":"02,00,08", + "F":"02,00,09", + "G":"02,00,0a", + "H":"02,00,0b", + "I":"02,00,0c", + "J":"02,00,0d", + "K":"02,00,0e", + "L":"02,00,0f", + "?":"02,00,10", + "N":"02,00,11", + "O":"02,00,12", + "P":"02,00,13", + "A":"02,00,14", + "R":"02,00,15", + "S":"02,00,16", + "T":"02,00,17", + "U":"02,00,18", + "V":"02,00,19", + "Z":"02,00,1a", + "X":"02,00,1b", + "Y":"02,00,1c", + "W":"02,00,1d", + "1":"02,00,1e", + "2":"02,00,1f", + "3":"02,00,20", + "4":"02,00,21", + "5":"02,00,22", + "6":"02,00,23", + "7":"02,00,24", + "8":"02,00,25", + "9":"02,00,26", + "0":"02,00,27", + "+":"02,00,37", + "M":"02,00,33", + "%":"02,00,34", + ".":"02,00,36", + ">":"02,00,64", + "CTRL-SHIFT":"03,00,00", + "ALT":"04,00,00", + "CTRL-ALT":"05,00,00", + "ALT-SHIFT":"06,00,00", + "COMMAND":"08,00,00", + "GUI":"08,00,00", + "WINDOWS":"08,00,00", + "COMMAND-OPTION":"12,00,00", + "~":"40,00,1f", + "#":"40,00,20", + "{":"40,00,21", + "[":"40,00,22", + "|":"40,00,23", + "`":"40,00,24", + "\\":"40,00,25", + "^":"40,00,26", + "@":"00,00,64", + "<":"00,00,35", + "]":"40,00,2d", + "}":"40,00,2e", + "COMMAND-CTRL-SHIFT":"40,00,2e", + "COMMAND-CTRL":"40,00,2e", + "COMMAND-OPTION-SHIFT'":"40,00,2e" +} \ No newline at end of file