
Arducky - Интерпретатор скриптов Ducky для Arduino
Этот проект направлен на создание дешёвой (но не менее эффективной) альтернативы USB Rubber Ducky от Hak5.
USB Rubber Ducky — это HID (Human Interface Device), программируемый с помощью простого скриптового языка, что позволяет специалистам по тестированию на проникновение быстро и легко создавать и развёртывать полезные нагрузки для аудита безопасности, имитирующие ввод с клавиатуры.
С помощью Arducky вам нужно работать только со скриптами Ducky, хранящимися на MicroSD-карте.
После настройки вам больше не придётся перепрограммировать Arduino для смены скриптов.
| Количество | Наименование | Цена | Описание |
|---|---|---|---|
| 1 | Плата Arduino Pro Micro ATmega32U4 5V | $4.11 | Совместима с USB-протоколом, может использоваться как HID-мышь или клавиатура |
| 1 | Шилд Micro SD Memory | $0.78 | |
| 1 | OTG-адаптер Micro USB | $0.99 | Необязательный. Может использоваться вместо micro USB-кабеля |
| 1 | Провода DuPont | $1.28 | |
| 1 | MicroSD-карта | $18.00 | Это пример, сомневаюсь, что вам понадобится больше 1 ГБ |
Чтобы использовать MicroSD-карту с Arducky, она должна быть отформатирована в файловую систему FAT32.
Настоятельно рекомендую отформатировать SD-карту (даже если она новая!) с помощью официального программного обеспечения SDA (SD Association) — SD Memory Card Formatter, а не инструментов форматирования, предоставляемых вашей операционной системой.
Теперь, когда вы отформатировали MicroSD-карту, давайте подключим MicroSD-шилд!
Интерфейс управления MicroSD-контроллера имеет шесть контактов (GND, VCC, MISO, MOSI, SCK, CS).
Согласно документации Arduino по SPI, интерфейс управления должен быть подключён следующим образом (с помощью проводов DuPont):
![arducky_pinout][]
Примечание: Как указано в разделе Оборудование, модуль рассчитан на работу с 5-вольтовым микроконтроллером, поэтому вам понадобится вывод 5V на вашем Arduino.
![arducky_right][]
![arduino_pro_micro][]
Клонируйте проект:
git clone https://gitlab.com/Creased/arducky
cd arducky/
Если вы используете клавиатуру AZERTY, вам также потребуется заменить библиотеку Keyboard (Keyboard.cpp и Keyboard.h) на вложенную.
Загрузите скетч arducky.ino на плату Arduino с помощью Arduino IDE.
Чтобы сгенерировать файл arducky_femto.ino с полезной нагрузкой на Ducky Script, вы можете использовать femto_generate_payload.py:
~# python3 femto_generate_payload.py -h
usage: femto_generate_payload.py [-h] [-i ino_file] [-o output_file]
payload_file
Generates payload in arducky_femto.ino from an input Rubber Ducky payload file
positional arguments:
payload_file input Rubber Ducky payload file
optional arguments:
-h, --help show this help message and exit
-i ino_file, --ino ino_file
input Arducky ino file
-o output_file, --out output_file
output Arducky ino file
Пример:
~# python3 femto_generate_payload.py -i arducky_femto.ino -o femto.ino demo/script.txt
Empire — это фреймворк для пост-эксплуатации, который реализует возможность запуска агентов PowerShell без необходимости использовать powershell.exe, а также быстро развёртываемые модули пост-эксплуатации — от кейлоггеров до Mimikatz.
В этой демонстрации мы развернём Empire на удалённом сервере (например, VPS) на узле Docker и используем Arducky для подключения к нему.
Пожалуйста, следуйте шагам, описанным в этом руководстве.
При настройке нового Empire вы должны получить полезную нагрузку, подобную этой (см. папку demo/):