Rustredops

RustredOps هو مستودع يضم مختلف الأدوات والمشاريع المتعلقة بعمليات الفريق الأحمر ، تم تطويره في Rust. يكرس هذا المستودع لتوفير أدوات فعالة وفعالة لأخصائيي الأمن ومختبري الاختراق الذين يرغبون في إجراء تقييمات الأمن واختبارات التسلل.
جدول المحتويات
- محتويات
- موارد
- مشاريع الصدأ الأخرى
- متطلبات
- ترجمة
- تجميع المشروع
- إضافة بنيات الوجهة
- تجميع بنية معينة
- كيف تبدأ
- المساهمة في Rustredops
- مراجع
- رخصة
محتويات
يتم تنظيم المستودع في العديد من المشاريع ، ولكل منها هدفه ووظائفه. فيما يلي بعض الأمثلة على المشاريع المشمولة:
حقن APC
- يستغل هذا المشروع تقنية حقن الكود غير المتزامن (APC) لتنفيذ التعليمات البرمجية الضارة في العمليات المستهدفة.
API التثبيط
- العرض التوضيحي على API Hoking وهو تقنية برمجة تتيح لك اعتراض المكالمات ومعالجتها لوظائف Windows API.
مكافحة Debug
API المطرقة
- يتكون API Hammering من تنفيذ إجراءات مختلفة لتأخير البرامج الضارة.
مضادات التحليل
- التقنيات المضادة للتحليل.
معلومات ثنائية
- هذا مجرد مظاهرة بسيطة في حال كنت ترغب في تضمين بيانات التعريف في صدأ الثنائي أو تغيير الرمز المرتبط.
حظر سياسة DLL
- تجنب تحميل DLLs لم يتم توقيعه بواسطة Microsoft.
إنشاء برنامج تشغيل
- إنه مشروع لإظهار كيفية إنشاء برنامج تشغيل بسيط باستخدام Rust.
إنشاء DLL
- إنه مشروع لإظهار كيفية إنشاء DLL باستخدام Rust.
تنفيذ رمز رد الاتصال
- مظاهرة تنفيذ shellcode عبر رد الاتصال.
إنشاء UEFI
- إنه مشروع لإظهار كيفية إنشاء UEFI باستخدام Rust.
ترجمة تشفير السلسلة
- تشفير الأوتار في وقت الترجمة وفك تشفيرها في وقت التشغيل.
استخراج wifi
- يعد استخراج كلمات مرور WiFi باستخدام Winapis نموذجًا مخصصًا لأمر NETSH.
حقن الطيور المبكرة APC
- وهو يركز على تباين في حقن APC ، وتنفيذ التعليمات البرمجية قبل بدء العملية الرئيسية.
التشفير (shellcode)
- تشفير / فك تشفير رمز الصدفة باستخدام AES و RC4.
عملية التعداد
تمكين جميع الرموز
- تمكين جميع رموز الامتياز.
تنفيذ الأمر
الجحيم / هالوس / تارتاروس بوابة
- استعادة SSN من خلال تقنيات بوابة الجحيم / الهالوس
اطلاع IAT
- اطلاق IAT عن طريق استبدال getProcaddress و getModuleHandle.
IAT التمويه
- تقنية لتصدير واجهات برمجة التطبيقات (دون تنفيذها) من أجل تمويه IAT وتجنب المظهر الضار.
ldrloaddll uncook
- دليل على مفهوم حقن نقطة انطلاق لتجاوز السنانير EDR واستخدام ldrloaddll.
تنفيذ الحمولة الحمولة المحلية
- يعالج هذا المشروع التنفيذ المباشر للحمولة الضارة في البيئة المحلية للنظام.
حقن رسم الخرائط المحلي
- إجراء حقن الكود الضار عبر رسم خرائط للذاكرة في العمليات المحلية.
حقن الوظيفة المحلية الدوس
- وهو يركز على استبدال وظائف التشغيل محليًا برمز ضار ، وتغيير سلوكها الافتراضي.
اختطاف الموضوع المحلي
- يتناول هذا المشروع اختطاف مؤشرات ترابط العمليات التي تعمل على النظام المحلي لتنفيذ التعليمات البرمجية الضارة.
حقن PE المحلي
Minidump-RS
وحدة الدوس
- تركز تقنية الدوس النمطية على حقن رمز الصدفة في نقطة دخول DLL المعينة أو المحملة.
NTDLL غير ماء
- تشغيل NTDLL غير مألوف من خلال عملية معلقة.
اسم خادم / عميل الأنبوب
- مشروع بسيط يوضح كيف يمكننا التواصل بين العمليات باستخدام الأنابيب المسماة.
الزائد الوحدة النمطية
- الزائد في الوحدة النمطية هي تقنية تقوم بتخطيط DLL الهدف ويحل محل محتوياته بملف EXE / DLL ثم ينفذه.
تشويش شفرات التضخيم
- shellcode ucpfuscation باستخدام IPv4 و IPv6 و Mac و UUIDs.
PPID خداع
تحليل رؤوس PE
- يركز الرمز على تحليل رأس PE لأي ملف قابل للتنفيذ Windows.
تصحيح ETW
تصحيح AMSI
التحكم في تنفيذ الحمولة
- التحكم في تنفيذ الحمولة النافعة من خلال Mutex والأحداث والرملة.
حجة العملية الخداع
- يستغل تقنية إخفاء أو تغيير حجج العملية لإخفاء النشاط الضار.
حقن العملية (DLL)
- ويركز على حقن مكتبات الارتباطات الديناميكية (DLL) في تشغيل العمليات لتنفيذ التعليمات البرمجية الضارة.
حقن العملية (رمز الصدفة)
- يستغل حقن الصدفة مباشرة في عمليات التشغيل للتحكم في المهام الضارة أو تنفيذها.
وضع الحمولة
- تخزين رمز الصدفة في قسم النص. ثم تنفيذها.
عملية التنويم المغناطيسي
- تركز هذه التقنية على التحكم في تدفق تنفيذ البرنامج الذي يجري تصحيحه والحصول على المعلومات ذات الصلة منه ، مثل إنشاء مؤشرات ترابط جديدة ، وحدات محملة ، واستثناءات وأكثر من ذلك بكثير. أو حتى تنفيذ رمز الصدفة.
ألياف تنفيذ الحمولة
- تشغيل رمز shellcode باستخدام الألياف.
حمولة الحمولة
- يركز هذا المشروع على توضيح كيفية إجراء استرجاع رمز shellcode باستخدام طلب HTTP ومفتاح التسجيل
عملية الظلال
- قم بتحميل ملف PE باستخدام تقنية الظلال العملية.
عملية الهرب
- تحجب نوايا العملية عن طريق تعديل محتويات القرص بعد تعيين الصورة.
اختطاف الموضوع البعيد
- إنه يعالج اختطاف المواضيع في عمليات النظام عن بُعد لتنفيذ إجراءات ضارة.
الدالة عن بُعد الدوس حقن
- يستغل استبدال الوظائف في الأنظمة البعيدة لتنفيذ أنشطة ضارة.
حقن الخرائط عن بُعد
- إجراء حقن الكود الضار عبر رسم خرائط للذاكرة في العمليات عن بُعد.
إزالة CRT
- إنه يركز على تقليل استخدام CRT (مكتبة وقت التشغيل) أثناء وقت التشغيل وتطبيق أعلام إضافية لتجريد معلومات غير ضرورية من الثنائي.
الحذف الذاتي
- تقنية لحذف الجري الثنائي.
سلسلة التجزئة
- إنشاء سلسلة تجزئة لأداء الاختباء.
syscalls
- تشغيل syscall المباشر وغير المباشر.
حقن بلا خيط
- أداء الحقن بدون خيط باستخدام الصدأ.
WMI
- تشغيل استعلامات WMI (أجهزة إدارة Windows).
webassembly shellcode
- تشغيل shellcode من خلال webassembly.
مشاريع الصدأ الأخرى
فيما يلي بعض الأمثلة الأخرى للمشاريع التي قمت بها مع الصدأ:
- Windows kernel rootkit
- كوب لوك
- تشغيل .NET
موارد
- يمكن أن يتضمن كل مشروع فردي قسم الميزات الذي يفصل الميزات والوظائف الرئيسية للمشروع.
- يمكنك عرض تعليمات التثبيت والاستخدام والأمثلة لكل مشروع في أدلة كل منهما.
متطلبات
- Rust: Rust هي لغة برمجة حديثة وآمنة تستخدم لتطوير الأدوات في هذا المستودع.
- Cargo: Cargo هو مدير حزم Rust ومترجم ، ضروري لتجميع وتشغيل المشاريع.
ترجمة
تجميع المشروع
لبدء التجميع ، استخدم الأمر التالي:
إضافة بنيات الوجهة
إذا كنت تستخدم نظام تشغيل مختلف أو حاجة إلى تجميع بنية معينة ، فيمكنك سرد جميع البنية المستهدفة المتاحة مع الأمر التالي:
بمجرد تحديد بنية الهدف المطلوب ، أضفها باستخدام Rustup:
rustup target add < arch >
استبدل بالهندسة المعمارية المطلوبة ، مثل X86_64-PC-Windows-Gnu.
تجميع بنية معينة
ثم تجميع المشروع للهندسة المعمارية المحددة:
cargo build --release --target < arch >
كيف تبدأ
اتبع هذه الخطوات لبدء استخدام المشاريع في هذا المستودع:
- استنساخ هذا المستودع على جهازك المحلي:
git clone https://github.com/joaoviictorti/RustRedOps.git
- انتقل إلى دليل المشروع الذي تهتم به:
cd RustRedOps/ < name-project >
- اتبع تعليمات التثبيت والاستخدام الخاصة بالمشروع كما هو موضح في ReadMe داخل هذا الدليل.
المساهمة في Rustredops
للمساهمة في Rustredops ، اتبع هذه الخطوات:
- شوكة هذا المستودع.
- إنشاء فرع:
git checkout -b <branch_name> . - قم بإجراء التغييرات الخاصة بك وارتكابها:
git commit -m '<commit_message>' . - ادفع التغييرات الخاصة بك إلى فرعك:
git push origin <branch_name> . - إنشاء طلب سحب.
بدلاً من ذلك ، استشر وثائق GitHub حول كيفية إنشاء طلب سحب.
مراجع
أود أن أعرب عن امتناني الصادق لمبدعو المشاريع الرائعة والتقنيات الرائعة ، الذين قدموا لي الأدوات والإلهام اللازم لإنشاء هذا المستودع الاستثنائي.
- https://github.com/memn0ps
- https://github.com/hasherezade
- https://github.com/vxunderground
- https://github.com/nul0x4c
- https://github.com/mrd0x
- https://github.com/cracked5pider
- https://github.com/trickster0
- https://github.com/blwasp
- https://balwurk.com/shellcode-evasion-using-webassembly-and-rust
- https://github.com/janoglezcampos/rust_syscalls
- https://github.com/microsoft
- https://ired.team
- https://github.com/rust-osdev/uefi-rs
- https://github.com/stephanvanschaik/windows-kernel-rs
- https://discord.gg/rust-lang-community (مجتمع Discord الذي ساعد كثيرًا)
- https://github.com/ccob
- https://github.com/anvie/litcrypt.rs
رخصة
هذا المشروع مرخص بموجب ترخيص معهد ماساتشوستس للتكنولوجيا