Skip to content
KitploitKITPLOIT
أدواتالمدونة
Log in
إرسال
أدواتالمدونة
إرسال

أدوات الاختراق واختبار الاختراق والأمن السيبراني لترسانتك الأمنية!

Kitploit هو دليل لأدوات الاختراق والأمن السيبراني واختبار الاختراق. اكتشف آخر تحديثات المشاريع للعثور على الثغرات وتحليل الأنظمة وأتمتة الاختبارات وتعزيز أمنك.

الخلاصاتاتصالالخصوصية© 2026 Kitploit

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Spartacus — Spartacus: مجموعة أدوات اختطاف DLL/COM | Kitploit
أدوات/GitHubGitHub/accenture/spartacus
أدوات دفاعيةتوليد الحمولةتحليل الكودالاستغلالالهندسة العكسيةاختبار الاختراقتحليل الملفات الثنائيةالفريق الأحمرArchived
GitHubaccenture/spartacus

Spartacus

Spartacus: مجموعة أدوات اختطاف DLL/COM

عرض المستودع
1.1k15329منذ 2 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

اكتشف الأدوات الأكثر استخدامًا من قبل مجتمعنا.

استكشف جميع الأدوات

تصفح مجموعتنا من الأدوات

عرض جميع الأدوات →
مشاركة

[!CAUTION] هذا المستودع غير مُدار، قم بزيارة https://github.com/sadreck/Spartacus للحصول على أحدث إصدار.

مجموعة أدوات اختطاف DLL/COM من Spartacus version

لماذا "Spartacus"؟

إذا شاهدت فيلم Spartacus من عام 1960، ستتذكر المشهد حيث يطلب الرومان من Spartacus تسليم نفسه. في اللحظة التي وقف فيها Spartacus الحقيقي، وقف العديد من الآخرين أيضًا وادعوا أنه هم باستخدام عبارة "I AM SPARTACUS".

عندما تطلب عملية معرضة لاختطاف DLL تحميل DLL، فإنها تسأل نوعًا ما "من هو VERSION.DLL؟" وتبدأ الدلائل العشوائية في الادعاء "أنا VERSION.DLL" و"لا، أنا VERSION.DLL". وهكذا، Spartacus.

كيف تختلف هذه الأداة عن جميع أدوات الاختطاف الأخرى الموجودة؟

  • يقوم Spartacus بأتمتة معظم العملية. يقوم بتحليل سجلات Process Monitor من SysInternals الأولية، ويمكنك ترك ProcMon قيد التشغيل لساعات واكتشاف ثغرات اختطاف DLL/COM من المستوى الثاني والثالث (أي تطبيق يقوم بتحميل DLL آخر يقوم بتحميل DLL آخر عند استخدام ميزة معينة من التطبيق الأصلي).
  • إنشاء حلول Visual Studio تلقائيًا لـ DLLs المعرضة للخطر.
  • قادر على معالجة ملفات PML كبيرة وتخزين جميع الأحداث المهمة في ملف CSV. معيار محلي عالج ملفًا بحجم 3 جيجابايت يحتوي على 8 ملايين حدث في 45 ثانية.
  • يدعم فحص ثغرات اختطاف DLL و COM.
  • يدعم إنشاء شهادات موقعة ذاتيًا وتوقيع ملفات DLL.
  • باستخدام وظائف Ghidra، استخراج تواقيع الدوال التصديرية وتنفيذ الحمولة عبر دوال مفردة موكَّلة بدلاً من تشغيل كل شيء من DllMain. هذه التقنية مستوحاة ومنفذة من الشرح الموصوف على https://www.redteam.cafe/red-team/dll-sideloading/dll-sideloading-not-by-dllmain، بواسطة Shantanu Khandelwal.
  • [دفاعي] وضع المراقبة الذي يحاول تحديد التطبيقات قيد التشغيل التي تقوم بتوكيل المكالمات، كما في "اختطاف DLL قيد التنفيذ". هذا فقط للحصول على أي نتائج سهلة ولا ينبغي الاعتماد عليه.

جدول المحتويات

  • التثبيت
  • الوظائف المدعومة
    • اختطاف DLL
      • الاستخدام
    • اختطاف COM
      • الاستخدام
    • توليد وكيل DLL
      • الاستخدام
    • توقيع ملفات DLL
      • الاستخدام لتوقيع ملفات DLL
    • كشف اختطاف DLL
  • وسائط سطر الأوامر
  • المساهمات
  • الإسناد

التثبيت

ابحث عن أحدث إصدار من Spartacus وقم بتنزيله ضمن الإصدارات. بخلاف ذلك، قم ببساطة باستنساخ هذا المستودع وبناء من المصدر.

الوظائف المدعومة

فيما يلي وصف لكل وضع يدعمه Spartacus.

ملاحظة: تغيرت وسائط سطر الأوامر بشكل كبير من الإصدار 1 إلى الإصدار 2.

اختطاف DLL

الوظيفة الأصلية لـ Spartacus كانت فقط إيجاد ثغرات اختطاف DLL. طريقة عمله هي:

  1. إنشاء ملف تكوين ProcMon (PMC) بسرعة، بناءً على الوسائط التي تم تمريرها. المرشحات التي سيتم تعيينها هي:
    • العملية هي CreateFile.
    • المسار ينتهي بـ .dll.
    • اسم العملية ليس procmon.exe أو procmon64.exe.
    • تمكين Drop Filtered Events لضمان الحد الأدنى من حجم إخراج PML.
    • تعطيل Auto Scroll.
  2. تنفيذ Process Monitor والتوقف حتى يضغط المستخدم على ENTER.
  3. يقوم المستخدم بتشغيل/إنهاء العمليات، أو اتركه قيد التشغيل للمدة التي يحتاجها.
  4. إنهاء Process Monitor عند ضغط المستخدم على ENTER.
  5. تحليل ملف سجل الأحداث الناتج (PML).
    1. إنشاء ملف CSV يحتوي على جميع DLLs من نوع NAME_NOT_FOUND و PATH_NOT_FOUND.
    2. مقارنة الـ DLLs المذكورة أعلاه ومحاولة تحديد الـ DLLs التي تم تحميلها بالفعل.
    3. لكل DLL "موجودة"، يتم إنشاء حل Visual Studio لتوكيل جميع دوال التصدير المحددة للـ DLL.

استخدام اختطاف DLL

جمع جميع الأحداث وحفظها في C:\Data\logs.pml. سيتم حفظ جميع الـ DLLs المعرضة للخطر في C:\Data\VulnerableDLLFiles.csv وجميع حلول الـ DLL الوكيلة في C:\Data\Solutions.

--mode dll --procmon C:\SysInternals\Procmon.exe --pml C:\Data\logs.pml --csv C:\Data\VulnerableDLLFiles.csv --solution C:\Data\Solutions --verbose

تحليل ملف سجل أحداث PML موجود، حفظ المخرجات إلى CSV، وإنشاء حلول Visual Studio وكيلة.

--mode dll --existing --pml C:\MyData\SomeBackup.pml --csv C:\Data\VulnerableDLLFiles.csv --solution C:\Data\Solutions --verbose

لقطات الشاشة

DLL Runtime

مخرجات CSV

اختطاف COM

وظيفة جديدة في Spartacus هي تحديد ثغرات اختطاف COM المحلية. طريقة عمله هي:

  1. إنشاء ملف تكوين ProcMon (PMC) بسرعة، بناءً على الوسائط التي تم تمريرها. المرشحات التي سيتم تعيينها هي:
    • العملية هي RegOpenKey.
    • اسم العملية ليس procmon.exe أو procmon64.exe.
    • تمكين Drop Filtered Events لضمان الحد الأدنى من حجم إخراج PML.
    • تعطيل Auto Scroll.
  2. تنفيذ Process Monitor والتوقف حتى يضغط المستخدم على ENTER.
  3. يقوم المستخدم بتشغيل/إنهاء العمليات، أو اتركه قيد التشغيل للمدة التي يحتاجها.
  4. إنهاء Process Monitor عند ضغط المستخدم على ENTER.
  5. تحليل ملف سجل الأحداث الناتج (PML).
    1. تحديد جميع مفاتيح التسجيل المفقودة التي تنتهي بـ InprocServer32 ونتيجتها هي NAME_NOT_FOUND.
    2. إذا كان المفتاح المحدد موجودًا تحت HKEY_CURRENT_USER، فابحث عن GUID الخاص به تحت HKEY_CLASSES_ROOT وقم بتضمين تفاصيله في ملف CSV المصدر (إذا تم العثور عليه).
    3. إنشاء مخرجات CSV تحتوي على جميع المعلومات التي تم جمعها.
  6. لا يقوم Spartacus تلقائيًا بإنشاء حل Visual Studio لاختطاف COM، ومع ذلك إذا كنت بحاجة إلى إنشاء DLL وكيل، يمكنك استخدام وضع proxy.

بالنسبة لاختطاف COM، يدعم Spartacus أيضًا فحص النظام المحلي للبحث عن إدخالات COM غير المضبوطة:

  1. تعداد جميع المفاتيح HKEY_CLASSES_ROOT و HKEY_CURRENT_USER و HKEY_LOCAL_MACHINE.
  2. البحث عن مفاتيح التسجيل المسماة InProcServer أو InProcServer32 أو LocalServer أو LocalServer32.
  3. تحديد أي مواقع EXE/DLL مفقودة، إلى جانب أي أخطاء في تكوين ACL مثل القدرة على تعديل أو حذف الملف بواسطة المستخدم الحالي.

استخدام اختطاف COM

جمع جميع الأحداث وحفظها في C:\Data\logs.pml. سيتم حفظ جميع معلومات COM المعرضة للخطر في C:\Data\VulnerableCOM.csv.

--mode com --procmon C:\SysInternals\Procmon.exe --pml C:\Data\logs.pml --csv C:\Data\VulnerableCOM.csv --verbose

معالجة ملف PML موجود لتحديد إدخالات COM المعرضة للخطر.

--mode com --existing --pml C:\Data\logs.pml --csv C:\Data\VulnerableCOM.csv --verbose

تعداد سجل النظام المحلي لتحديد مكتبات وبرامج COM المفقودة/غير المضبوطة.

--mode com --acl --csv C:\Data\VulnerableCOM.csv --verbose

لقطات الشاشة

COM Runtime

مخرجات CSV

توليد وكيل DLL

يدعم Spartacus توليد حلول Visual Studio عن طريق إنشاء مشاريع هيكلية لاستخدامك، بناءً على الـ DLL الذي ترغب في استغلاله.

  • إعادة توجيه جميع المكالمات عن طريق تصدير الدوال إلى الـ DLL الشرعي.
    • هذا يعني أنه يجب عليك تنفيذ الحمولة من دالة DllMain.
  • باستخدام Ghidra، استخراج أكبر عدد ممكن من تواقيع/تعريفات الدوال من الـ DLL المستهدف، وإنشاء دوال وكيلة لهذه.
    • بالنسبة لأي دالة تعذر استخراج توقيعها، سيتم إعادة توجيهها مباشرة إلى الـ DLL/الدالة الشرعية.
    • هذا يعني أنه يمكنك تنفيذ الحمولة من دالة خارج DllMain.
    • على سبيل المثال، إذا كنت ترغب في استغلال version.dll، يمكنك تشغيل الغرسة الخاصة بك من GetFileVersionInfoExW إذا تم استدعاء هذه الدالة بواسطة التطبيق المعرض للخطر.

استخدام توليد وكيل DLL

توليد حل يعيد توجيه جميع التصديرات (بدون توكيل الدوال).

تنزيل الأداة