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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
DarkWidow — استدعاء نظام ديناميكي غير مباشر، SSN + ترتيب عنوان استدعاء النظام عبر نهج TartarusGate المعدل + حقن العملية عن بُعد عبر APC Early Bird + إنشاء عملية قربانية كعملية هدف + سياسة تخفيف (ACG+BlockDll) على العملية المستحدثة + تزوير PPID + حل واجهات برمجة التطبيقات من TIB + تجزئة API | Kitploit
أدوات/GitHubGitHub/reveng007/darkwidow
تصعيد الامتيازاتالاستغلالالتهرب من IDS/IPSما بعد الاستغلالتحليل البرمجيات الخبيثةتحليل الملفات الثنائيةالتعلم والتعليمالفريق الأحمرتطوير الحمولات
GitHubreveng007/darkwidow

DarkWidow

استدعاء نظام ديناميكي غير مباشر، SSN + ترتيب عنوان استدعاء النظام عبر نهج TartarusGate المعدل + حقن العملية عن بُعد عبر APC Early Bird + إنشاء عملية قربانية كعملية هدف + سياسة تخفيف (ACG+BlockDll) على العملية المستحدثة + تزوير PPID + حل واجهات برمجة التطبيقات من TIB + تجزئة API

8071043منذ 7 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

DarkWidow

أداة حقن مخصصة تستهدف ويندوز.


إشارات شرفية:

  1. بلاك هات آسيا 2024 - دعوة للأدوات
  2. بلاك هات الولايات المتحدة 2024 - دعوة للأدوات
  3. بلاك هات SecTor 2024 - دعوة للأدوات
  4. بلاك هات أوروبا 2024 - دعوة للأدوات
  5. مهرجان Wild West Hacking Fest 2024 - الترسانة
  • شكر جزيل لـ Soumyadeep Da المعروف بـ @SoumyadeepBas12 لتشجيعي على التقديم لهذه المؤتمرات، وإلا لما كنت فعلتها :)
  • شكر جزيل لـ Faran المعروف بـ @Chrollo_l33t لمساعدتي في إنشاء الشرائح والعرض التقديمي لهذه الأداة :)

الإمكانيات:

  1. استدعاء النظام الديناميكي غير المباشر. (MITRE ATT&CK TTP: T1106)
  2. ترتيب عناوين SSN + Syscall عبر نهج TartarusGate المعدل
  3. حقن العمليات عن بعد عبر APC Early Bird لقطع تتبع القياس عن بُعد من قبل EDR. (MITRE ATT&CK TTP: T1055.004)
  4. استحداث عملية تضحية كعملية مستهدفة، دون تعطيل العمليات المفتوحة بالفعل في البيئة.
  5. سياسة تخفيف ACG (حماية الكود التعسفي) / BlockDll على العملية المضحية المستحدثة.
  6. انتحال PPID (MITRE ATT&CK TTP: T1134.004)
  7. حل واجهات برمجة التطبيقات والمكتبات من TIB (مباشرة عبر الإزاحة (من TIB) -> TEB -> PEB -> حل Nt API) (MITRE ATT&CK TTP: T1106)
  8. تجزئة ملعونة لـ Nt API (MITRE ATT&CK ID: S0574)

مكافأة: إذا تم منح صلاحية المسؤول =>

  1. تعطيل سجل الأحداث عبر قتل خيوط خدمة EventLog (MITRE ATT&CK TTP: T1562.002)

العيب: إذا تم استئناف الخيوط، يتم تسجيل جميع الأحداث التي حدثت أثناء تعليق مسجل الأحداث، مرة أخرى!

لذا، فكرت في قتلهم بدلاً من ذلك!

"إنه أكثر تدخلاً من التعليق، لكن القرار دائمًا يعود للمشغل. إلى جانب ذلك، يتم تسجيل قتل الخيوط على مستوى النواة" - @SEKTOR7net

أثناء قتل تلك الخيوط فقط في أداة الاستدعاء غير المباشر، كنت أواجه خطأ. لم أتمكن من الحصول على قيمة "eventlog" SubProcessTag. لذا فكرت في قتل جميع الخيوط، أي قتل العملية بأكملها (svchost.exe المسؤولة). نعم، إنشاء مؤشر IOC!.

=

1. تجاوز ربط EDR/Ring-3/UserLand

2. يتم تنفيذ الاستدعاء النظامي وعبارة الإرجاع من ذاكرة ntdll.dll

3. يمكن تجاوز كشف EDR بناءً على التحقق من عنوان الإرجاع في مكدس الاستدعاءات.

التجميع:

root@kitploit:~
مباشرة عبر مترجم VS:

image

أضف أيضًا علامة المحول البرمجي /MT! => لربط دوال CRT بشكل ثابت معًا في الثنائي (نعم، لقد خمنت، هذا يزيد من حجم الأداة)

image

  1. أيضًا عبر compile.bat (يفضل الخيار 1.)
root@kitploit:~
./compile.bat

الاستخدام:

root@kitploit:~
PS C:> .\x64\Release\indirect.exe
[!] خطأ!
[->] الصيغة: .\x64\Release\indirect.exe <PPID للتزوير>

أثناء العمل:

https://github.com/reveng007/DarkWidow/assets/61424547/62a90c5b-84af-4389-8ddc-9f7926debdcf

تنفيذ ناجح دون إنشاء تنبيه على نقطة نهاية Sophos XDR:

SofosXDREvade


تحسينات إضافية:

  1. انتحال PPID (طريقة Emotet)
  2. حالة استخدام أكثر خفاءً لتعطيل سجل الأحداث!

أجزاء من الكود والروابط التي ساعدت:

  1. TIB:

    • https://en.wikipedia.org/wiki/Win32_Thread_Information_Block
    • https://www.wikiwand.com/en/Win32_Thread_Information_Block
  2. سجلا GS و FS:

    • https://stackoverflow.com/questions/39137043/what-is-the-gs-register-used-for-on-windows
    • https://stackoverflow.com/questions/10810203/what-is-the-fs-gs-register-intended-for#:~:text=The%20registers%20FS%20and%20GS,to%20access%20thread%2Dspecific%20memory.
  3. بنية PEB LDR:

    • بلاك هات - ما لا يريد مؤلفو البرامج الضارة أن تعرفه - حقن العمليات المجوفة المراوغة بواسطة @monnappa22

    • صورة لذاكرة العملية من الرابط أعلاه:
      نص بديل

    • من labs.cognisys.group، مدونة بواسطة @D1rkMtr :
      نص بديل

  4. TIB -> TEB -> PEB -> حل Nt API وتجزئة API

    • https://stackoverflow.com/questions/41277888/iterating-over-peb-dllname-shows-only-exe-name

    • https://doxygen.reactos.org/d7/d55/ldrapi_8c_source.html#l01124

    • labs.cognisys.group، مدونة بواسطة

root@kitploit:~

#include <stdint.h>
#include <stdio.h>
#include <Windows.h>

DWORD64 djb2(const char* str)
{
	DWORD64 dwHash = 0x7734773477347734;
	int c;

	while (c = *str++)
		dwHash = ((dwHash << 0x5) + dwHash) + c;


	return dwHash;
}

int main(int argc, char** argv)
{
	if (argc < 2)
	{
		printf("[!] Wrong!\n");
		printf("[->] Syntax: .\\%s <NTFuncName>\n\n", argv[0]);
		return 1;
	}

	const char* string = argv[1];

	DWORD64 hashvalue = djb2(string);

	printf("Hash Value: 0x%llX\n", hashvalue);

	return 0;
}

  1. سياسة تخفيف ACG (حماية الكود التعسفي) / BlockDll:

    • الروابط:
    • حماية برامجك الضارة بواسطة @xpn
    • Wraith بواسطة @winterknife
    • spawn و HOLLOW بواسطة @0xBoku نص بديل
  2. كشف انتحال PPID:

    • كشف انتحال PPID بواسطة @spotheplanet
    • إذا توفر الوقت، سأضيف جزء كشف لهذا الجزء! -> [المتبقي.................................................!]
  3. كشف Moneta و PESieve:\

    • Moneta:
      نص بديل

    • PESieve:
      نص بديل

  4. فحص Capa:
    نص بديل

  5. كيف يبدو مكدس الخيط لعملية الأداة:

عملية الأداةعملية Cmd الشرعية
نص بديلنص بديل

"يترتب على ذلك أنه من خلال تنفيذ تعليمة الإرجاع في ذاكرة ntdll.dll في POC الاستدعاء غير المباشر، يمكن تزوير عنوان الإرجاع بنجاح، ويمكن وضع ntdll.dll في أعلى مكدس الاستدعاءات وسيُفسر EDR شرعية أعلى." - @VirtualAllocEx من DirectSyscall مقابل Indirect Syscall
أيضًا شكرًا لـ @peterwintrsmith!

  1. تجنب رد اتصال الأجهزة: استخدمت هذا POC - syscall-detect بواسطة winternl_t

image

  1. تكوين مسجل الأحداث الذي استخدمته:

نص بديل نص بديل

  1. تعيين صلاحية SeDebugPrivilege:
    من هنا: نص بديل إلى هنا: نص بديل

  2. قتل خيوط سجل الأحداث:

    • rto-win-evasion بواسطة @SEKTOR7net
    • Phant0m بواسطة @hlldz
    • Goblin بواسطة @winterknife
    • تعطيل سجلات أحداث ويندوز عن طريق تعليق خيوط خدمة سجل الأحداث بواسطة @spotheplanet
      من هنا:
      نص بديل
      إلى هنا:
      نص بديل
    • هذه الطريقة، انتهت بحدوث أخطاء في تنفيذ الاستدعاء غير المباشر. لذلك، انتهى بي الأمر بقتل جميع تلك الخيوط الموجودة داخل svchost.exe المسؤولة (السبب: اذهب للأعلى).

سيناريو تسجيل أحداث Sophos XDR:

  1. الحالة 1: عند تنفيذ DarkWidow تحت صلاحية عادية

image

لا يتم إنشاء أي تنبيهات حرجة باستثناء سجل واحد منخفض الخطورة!

  1. الحالة 2: عند تنفيذ DarkWidow تحت صلاحية المسؤول

image

سجل واحد منخفض الخطورة => حقن APC (كما في السابق)

image

سجل آخر متوسط الخطورة حدث بسبب تعيين SeDebugPrivilege.

image

DarkWidow V2:

للتغلب على كشف تسجيل الأحداث هذا، أضفت مفهوم تزوير مكدس الخيط بالإطار الاصطناعي إليه.

هذا هو شكل المكدس بعد تطبيق تزوير مكدس الخيط بالإطار الاصطناعي.

صورة

هذا هو مكدس خيط Nt API

صورة

هذا هو مكدس خيط الشيل كود (بالمناسبة، هذا ليس مخصصًا، إنه شيل كود Havoc :))

لتطوير الشيل كود، استخدمت havoc وهذه الإعدادات أدناه:

image

ملاحظة:

لم يكن تزوير عنوان بداية الخيط المنشأ حديثًا ضروريًا حقًا في هذا المشروع لأنه ضمن تقنية حقن APC، يختطف APC تنفيذ خيط قيد التشغيل بالفعل وشرعي. شكرًا لـ @C5pider!

صورة التنفيذ التجريبي:

1708744707672

فيديو تجريبي ضد Sophos XDR:

رابط فيديو يوتيوب تجريبي

الآن حالة سجلات الأحداث؟

image

لم يتم إنشاء أي سجلات. لقد أزلت أيضًا جزء قتل مسجل الأحداث من DarkWidow V2، مما يقلل أيضًا من توليد الأحداث!

يمكن العثور على فيديو عرض BlackHat Arsenal الخاص بي هنا:

رابط فيديو يوتيوب تجريبي

يمكن العثور على شريحة عرض WildWestHackinFest ورابط الفيديو الخاص بي هنا:

  1. رابط عرض Google Slides
  2. https://www.youtube.com/watch?v=xsibDZ6BpyA&t=1295s

التحديثات المستقبلية لهذا:

  1. نقل هذا الإصدار إلى مترجم C++ Clang، مما سيساعدنا في إجراء إخفاء LLVM.
  2. الترقية إلى NtCreateUserProcess() لتنفيذ الاستدعاء غير المباشر وتزوير المكدس.
  3. تطبيق قدرة تحميل المكتبة يدويًا لتجاوز ردود اتصال تحميل الصورة في النواة.
  4. تطبيق قدرة استبدال الوحدة.
  5. حقن شيل كود مشفر لتجنب فحوصات الذاكرة التي تطلقها النواة (Caro-Kann).

كشف تقنية تزوير المكدس (كما ذكر في إحدى ورش العمل/المحاضرات الخاصة بي):

صورة

شكر كبير لمساعدتي (بشكل مباشر/غير مباشر (التورية غير مقصودة :))):

  1. @SEKTOR7net
  2. @peterwintrsmith
  3. @Jean_Maes_1994
  4. @D1rkMtr
  5. @spotheplanet
  6. @0xBoku
  7. @Sh0ckFR
  8. @winterknife
  9. @monnappa22
  10. @xpn
  11. @hlldz
  12. @d_tranman
  13. @SoumyadeepBas12
  14. @jack_halon
  15. @KlezVirus
  16. @C5pider

أتمنى ألا أكون قد نسيت أحدًا!

هذا المشروع هو جزء من رحلتي لتعلم عالم EDR! => Learning-EDR-and-EDR_Evasion

تنزيل الأداة
@D1rkMtr
  • صورة للمقتطف من الرابط أعلاه، الذي استخدمته لحل API ديناميكيًا دون ترميز الإزاحات بشكل ثابت:
    نص بديل

  • كود تجزئة API الذي طبقته: