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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
frostbyte — يجمع بين حقن AppDomain Manager وتضمين shellcode في ملفات ثنائية موقعة لتجاوز كشف EDR/AV لحمولات فريق الاختراق الأحمر. | Kitploit
أدوات/GitHubGitHub/pwn1sher/frostbyte
شيل كودتوليد شيفرة القشرة
GitHubpwn1sher/frostbyte

frostbyte

يجمع بين حقن AppDomain Manager وتضمين shellcode في ملفات ثنائية موقعة لتجاوز كشف EDR/AV لحمولات فريق الاختراق الأحمر.

عرض المستودع
383466منذ 4 سنواتتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

FrostByte

المقدمة:

في الأيام القليلة الماضية كنت أجرب تقنية حقن مدير AppDomain وحققت نجاحًا جيدًا بها في مهام الفريق الأحمر السابقة ضد بعض أنظمة EDR. على الرغم من أن هذا جيد جدًا كناقل وصول أولي، أردت إصدار POC يساعد في إخفاء شيلكودك في مكان آخر. لا مزيد من ملفات DLL المضمنة في الشيلكود!

المشكلة!

على الرغم من أنها تقنية ممتازة عند استخدامها بشكل مستقل، إلا أنها عندما تقترن بتقنية توصيل مثل إرسال C# ClickOnce داخل ملف ISO/ZIP/VHD/VHDX. المشكلة الحقيقية هي أن في 1 من كل 10 مرات، كان يتم اكتشاف DLL الخاص بـ appdomain بواسطة الاستدلالات AI/ML لبرنامج AV/EDR. وذلك لأن ملف DLL يحتاج إلى أن يُسقط على القرص قبل تهيئة appdomain. بصرف النظر عن تحميلات DLL عن بُعد في الوقت الحالي (مسارات UNC في .config)، فإن DLL الخاص بـ appdomain كان يحتوي على الشيلكود، وشعرت بشدة أن هذا هو سبب الاكتشاف الثابت المحتمل، لأن بقية الكود الذي هو استدعاءات WINAPI يمكن حلها ديناميكيًا وتعميتها جيدًا.

أردت تحسين هذه التقنية من حيث تقليل ما يحمله DLL في البداية. بدأت بإسقاط شيلكود مشفر في ملف منفصل على القرص إلى جانب DLL الحاقن، لكن بعد ذلك صادفت هذه المدونة الرائعة من Checkpoint حول حملة Zloader

النسخة المختصرة: يمكننا تضمين بيانات عشوائية في بعض الحقول داخل PE بطريقة لا تفسد توقيع الملف. لذلك سيتم تضمين بياناتنا وسيظل الملف التنفيذي موقّعًا رقميًا.

مزيد من المعلومات حول هذا - https://www.blackhat.com/docs/us-16/materials/us-16-Nipravsky-Certificate-Bypass-Hiding-And-Executing-Malware-From-A-Digitally-Signed-Executable-wp.pdf

لذا الفكرة هي تضمين شيلكود مشفر في ملف تنفيذي موقّع معروف مع الحفاظ على توقيعه كما فعل برنامج Zloader الخبيث. من خلال القيام بذلك، لن يحتوي DLL الخاص بـ AppDomain Manager على الشيلكود داخل نفسه بعد الآن، بل سيكون لديه فقط المنطق لاستخراج الشيلكود من ملف PE الثنائي الذي يقوم بتحميله لفك تشفيره وتنفيذه كسلسلة منفصلة. قد يؤدي هذا إلى تقليل معدل الكشف الثابت لـ DLL بينما يتم وضع الشيلكود الخاص بك بشكل جيد داخل ملف ثنائي موقّع.

كنت أحاول تحقيق ذلك عن طريق التلاعب اليدوي بعينات Zloader التي حصلت عليها من VirusTotal، لكن لاحقًا وجدت مشروعًا قام بالفعل بتنفيذ كل هذه التقنيات بشكل جيد - Sigflip. في هذا POC، استفدت من كود محمل Sigflip لبناء DLL الخاص بـ AppDomain ومحقن SigFlip لتضمين الشيلكود المشفر في ملف C# exe الخاص بنا.

المزايا:

لم يعد يتم تخزين كتل كبيرة من الشيلكود مثل شيلكود Cobalt Strike عديم الحالة على ملف DLL غير موقّع على القرص، بغض النظر عن تقنيات التعمية/الترميز المستخدمة. أصبح DLL أنظف وأصغر وأكثر خفاءً مع الحد الأدنى من الكود، مما يقلل من فرص الكشف.

آلية العمل

Diagram

خطوات بناء ملف تنفيذي موقّع للشيلكود

  • اختر أي ملف C# ثنائي x64 موقّع من اختيارك، وهو ملف ثنائي ترغب في أن يتواجد فيه منارة Cobalt Strike وينفذ: مثال: CasPol.exe إلخ.
  • قم بإنشاء شيلكود Cobalt Strike عديم الحالة - x64-stageless.bin
  • ضع كليهما في مجلد يحتوي أيضًا على SigFlip وقم بتشغيل الأمر التالي:
    SigFlip.exe -i "Z:\ZLoader\CasPol.exe" "Z:\ZLoader\x64-stageless.bin" "Z:\ZLoader\update.exe" "S3cretK3y"
  • بفضل SigFlip، أصبح لديك الآن ملف ثنائي (موقّع من ويندوز؟) باسم update.exe والذي سيكون PE موقّعًا رقميًا مع شيلكود مشفر مدمج فيه.

خطوات بناء DLL الخاص بمحمل AppDomain

  • خذ كود قالب C# من هنا
  • استبدل مفتاح التشفير السري الخاص بك بالمفتاح الذي اخترته عند تشغيل SigFlip في السطر 163 (قد تحتاج إلى تعديل بضع بايتات للتأكد من فك تشفير شيلكود CS بشكل صحيح)
  • استبدل مسار الملف الثنائي في السطر 146
  • قم بتغيير مسارات ملفات السجل في السطور 158، 165
  • قم بتجميع الكود كـ DLL باستخدام الأمر التالي - csc /target:library /out:test.dll test.cs
  • ضع ملف DLL المُجمّع وملف update.exe.config في نفس المجلد الذي تم فيه وضع ملف exe الخاص بالشيلكود الموقّع.
  • قم بتشغيل update.exe.

الخاتمة:

هذا POC هو مجرد فكرة خطرت ببالي لدمج تقنيتين مختلفتين تمامًا لتجنب الدفاع معًا، مما سيساعدني ويساعد أعضاء الفريق الأحمر الآخرين في بناء حمولات تنفيذ أولية أفضل لعملياتهم. يستخدم هذا المشروع حقن AppDomain Manager كمثال، ولكن هذه الفكرة قابلة للتطبيق على تقنيات الحقن الأخرى أيضًا مثل - DLL SideLoading، DLL Hijacking إلخ.

الإسناد:

الشكر الكامل لـ med0x2e، هذا POC مبني على مشروعه SigFlip

المراجع:

  • https://research.checkpoint.com/2022/can-you-trust-a-files-digital-signature-new-zloader-campaign-exploits-microsofts-signature-verification-putting-users-at-risk/
  • https://www.blackhat.com/docs/us-16/materials/us-16-Nipravsky-Certificate-Bypass-Hiding-And-Executing-Malware-From-A-Digitally-Signed-Executable-wp.pdf
  • https://pentestlaboratories.com/2020/05/26/appdomainmanager-injection-and-detection/
  • https://github.com/med0x2e/SigFlip
تنزيل الأداة