Seytonic / malduino

All the Malduinos!
MIT License
208 stars 50 forks source link

Upgrade to NicoHood's HID Library for Drivers [Suggestion] #23

Open fionafibration opened 6 years ago

fionafibration commented 6 years ago

I have a good way to make Malduino aware of the state of driver installation, thus negating the need for guessing at delays at the start of every script.

Malduino currently suffers from one of the same problems as the USB Rubber Ducky, in that it doesn't know when the drivers are finished installing and when it can start typing. To solve this for my previous HID attacks, I used a Teensy 3.2, which supports reading the state of keyboard LEDs. I basically spammed Caps Lock until the state of the Caps Lock LED changed, then hit it again if it was on (to turn it off), and then ran the payload. However, the Malduino is currently using a slightly modified version of the Arduino's Keyboard library, meaning it doesn't support this trick and thus is forced to just delay a fixed amount at the start of the script before it tries to type.

NicoHood's HID library supports keyboard LEDs and the Arduino Pro Micro, which if I understand, you are currently using as the base for your Malduino Elite. I believe that switching to the HID library would not only be a good upgrade for drivers, but a good upgrade that would allow the Malduino to perform actions like VOLUME_UP before a rickroll, press a restart key after a persistent shell is installed, or the like.

Thank you for your time.

fionafibration commented 6 years ago

This would also allow for absolute mouse movement.

fionafibration commented 6 years ago

24 There's an example of the elite code using the aforementioned library to wait for driver installation and to automatically disable the caps lock key when it finishes checking driver status.

DodgeVypor commented 5 years ago

Converting it now will link the final project once complete