
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):
![arducky_pinout][]
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.
![arducky_right][]
![arduino_pro_micro][]
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/):