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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
أدوات/GitHubGitHub/0xninjacyclone/asmldr
توليد الحمولةالتهرب من IDS/IPSشيل كودما بعد الاستغلالالفريق الأحمرتطوير الحمولات
GitHub0xninjacyclone/asmldr

AsmLdr

محمّل شيلكود ديناميكي مع قدرات مراوغة متطورة

عرض المستودع
346515منذ 11 أشهرتمت المراجعة من قبل Kitploit

الأكثر شعبية

عرض الكل →

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

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

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

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

AsmLdr: محمّل شيلكود ديناميكي لأنظمة Windows x64

نظرة عامة

AsmLdr هو محمّل شيلكود متقدم مكتوب بلغة التجميع x64، مصمم لبيئات Windows x64. الغرض الأساسي منه هو تنفيذ حمولات مشفرة مع تقليل احتمالية اكتشافه بواسطة برامج مكافحة الفيروسات المتقدمة، وأنظمة كشف نقطة النهاية والاستجابة (EDR)، وبيئات العزل (sandboxes)، ومصححات الأخطاء. يحقق ذلك من خلال حلّ الوحدات (modules) وواجهات البرمجة (APIs) واستدعاءات النظام ديناميكيًا في وقت التشغيل، مما يلغي الاعتماديات الثابتة مثل جداول الاستيراد أو العناوين المثبتة. هذا النهج يُنتج ملفًا ثنائيًا مضغوطًا ببصمة اكتشاف منخفضة.

يستخدم المحمّل تقنية module stomping لوضع الشيلكود داخل القسم القابل للتنفيذ لملف DLL موجود، ويفك تشفير الحمولة في الذاكرة، ثم يشغّلها عبر استدعاءات نظام غير مباشرة مع انتحال مكدس (stack spoofing). يتضمن ميزات مراوغة مثل إجراءات مضادة لتصحيح الأخطاء، وضبط التوقيت لمحاكاة أنماط التطبيقات الطبيعية، وتجاوز تتبع أحداث Windows (ETW). هذه الإمكانات تجعله أداة للفريق الأحمر (red teaming) والبحث الأمني. إخلاء مسؤولية أخلاقي: هذا المشروع لأغراض تعليمية وبحثية فقط. إنه يوضح التفاصيل الداخلية لنظام Windows منخفضة المستوى، بما في ذلك اجتياز PEB، وتحليل جدول التصدير، وفك ربط استدعاءات النظام (syscall unhooking)، والتلاعب بحمايات الذاكرة. استخدمه في بيئات خاضعة للتحكم (مثل الأجهزة الافتراضية). إساءة الاستخدام لأغراض ضارة غير قانونية وغير أخلاقية. لا يتحمل المؤلف أي مسؤولية عن أي إساءة استخدام.

الإمكانات الرئيسية

يقدم AsmLdr مجموعة من الميزات لتنفيذ الحمولات والمراوغة بشكل خفي. كل منها موصوف أدناه، مع التركيز على وظيفته وفوائده:

التهيئة والإقلاع

  • اكتشاف PEB و ntdll: يحدد المحمّل موقع PEB دون طرق الوصول القياسية لتجنب الاكتشاف.
    • الطريقة الأساسية (فحص المكدس): يفحص عناوين إرجاع المكدس لتحديد مؤشر صالح يقود إلى PEB. بمجرد العثور عليه، يسترجع العنوان الأساسي لـ ntdll من قائمة الوحدات ويجهّز معالجة استدعاءات النظام.
    • الطريقة الاحتياطية (فحص ترويسة PE): إذا فشلت الطريقة الأساسية، يبحث في الذاكرة عن تواقيع ملفات PE للعثور على ntdll.dll، ثم يستخدم استدعاء نظام لتأكيد موقع PEB.

آليات الحلّ الديناميكي

  • حلّ الوحدات عبر اجتياز PEB: يعدد المحمّل الوحدات قيد التشغيل باتباع سلسلة وحدات PEB. يطابق أسماء الوحدات عبر مقارنات Unicode للعثور على العنوان الأساسي للـ DLL المطلوب وإرجاعه. تتجاوز هذه الطريقة دوال التحميل القياسية، مما يقلل من خطر الاعتراض.

  • حلّ واجهات البرمجة من جداول التصدير: يفحص المحمّل دليل تصدير الـ DLL لتحديد موقع الدوال. يطابق واجهات البرمجة باستخدام التجزئة (hashing) أو اختياريًا فحوصات الأسماء المباشرة مع التحقق من الطول لمنع الخلط بين أسماء الدوال المتشابهة. يوفر ذلك عنوان الدالة دون الاعتماد على عمليات الاستيراد المرتبطة مسبقًا.

تقنيات المراوغة

  • حمايات مضادة لتصحيح الأخطاء: يكتشف المحمّل تصحيح الأخطاء من خلال فحوصات متعددة وينهي العمل بشكل نظيف إذا أشار أي منها إلى وجود تحليل.

    • فحوصات واجهة Kernel32: يستعلم عن وجود مصحح أخطاء وملحقات عن بُعد، وينهي العمل إذا تم اكتشاف ذلك.
    • فحص أعلام PEB: يراجع أعلام العملية بحثًا عن مؤشرات تصحيح أخطاء، مثل أوضاع التصحيح المفعّلة، ويتوقف إذا كانت مضبوطة.
    • كشف نقاط توقف العتاد: يسترجع سجلات التصحيح الخاصة بالخيط للتحقق من نقاط التوقف المضبوطة، ويتوقف إذا كان أي منها نشطًا.
    • الاستعلام عن منفذ التصحيح: يفحص العملية بحثًا عن منفذ تصحيح ملحق، وينهي العمل إذا كان موجودًا.
    • الخروج عند الاكتشاف: عند أي تنبيه، يستعيد المكدس ويعود مبكرًا لتجنب كشف السلوك.
  • توليد كود غير ضروري لمقاومة التحليل: يشغّل المحمّل تسلسلات من العمليات غير الأساسية لإنشاء أنماط مربكة في التفكيك، مما يجعل التحليل الثابت أصعب دون التأثير على كفاءة وقت التشغيل.

  • تطبيع التوقيت والسلوك: يقيس المحمّل سرعة النظام لتشغيل أعباء عمل محاكاة تطابق أنماط التطبيقات الطبيعية، مما يساعده على الاندماج مع العمليات المشروعة. كما يتوقف مؤقتًا لفترة وجيزة قبل الإجراءات الرئيسية لتطبيع توقيت التنفيذ.

  • تجاوز تسجيل ETW: يجهز المحمّل نقاط توقف عتاد على واجهات برمجة تسجيل ETW لاعتراض ومنع استدعاءات تسجيل الأحداث، مما يمنع ظهور آثار في سجلات النظام.

معالجة استدعاءات النظام

  • فك ربط متعدد الطبقات: يسترجع المحمّل ديناميكيًا أرقام استدعاءات النظام الصحيحة (SSNs) عن طريق فحص الدوال مباشرة، أو مسح الكود المجاور إذا كانت مربوطًا (hooked)، أو عدّ الأنماط في ntdll لتقدير الرقم، مع التعديل للاستثناءات المعروفة.

    التقنيات المستخدمة:

    • Hell's Gate
    • (Halo's/Tartarus) Gate
    • Veles' Reek
  • استدعاء نظام غير مباشر وانتحال المكدس: يجد المحمّل مسارات كود نظيفة في ntdll لاستدعاءات النظام ويسلسل حتى 32 عملية، مُخفيًا مكدس الاستدعاءات لتفادي التتبع. يستعيد الحالة الأصلية بعد الاكتمال.

حقن الحمولة وتنفيذها

  • إفراغ DLL (DLL Hollowing): يستحضر المحمّل DLL مستهدفًا، ويسمح مؤقتًا بالكتابة في قسم الكود الخاص به، ويدرج الشيلكود المشفر، ويفك تشفيره، ثم يعيد ضبط الحمايات لتكون للتنفيذ فقط.

  • فك التشفير في الذاكرة: يفك المحمّل تشفير الشيلكود بتطبيق نمط مفتاح متكرر مباشرة في الذاكرة المحقونة.

  • الدوال المساعدة: يتضمن المحمّل أدوات لقياس أطوال السلاسل، ومقارنة السلاسل (القياسية أو عريضة الأحرف)، وتجزئة الأسماء لعمليات البحث، والتحقق من صحة مؤشرات الذاكرة، وقراءة الطوابع الزمنية للتحكم في التوقيت.

ميزات إضافية

  • لا يُستخدم إذن ذاكرة RWX، فقط التبديل بين RW و RX لتحقيق الخفاء.
  • لا يوجد IAT، ولا حتى واجهة برمجة واحدة مرتبطة بشكل ثابت، لتجنب الروابط (hooks) والتحليل الثابت.
  • يعمل AsmLdr بصمت في الخلفية دون إظهار وحدة تحكم أو أي شيء مريب.
  • يتم حلّ جميع استدعاءات واجهات البرمجة المطلوبة باستخدام التجزئات للتعتيم.

منهجية تجهيز الشيلكود

يقوم السكريبت Python المسمى generate.py بتشفير ملف الشيلكود الخام. يضيف حشوًا للمحاذاة، وينشئ مفتاحًا أو يستخدم مفتاحًا موجودًا، ويطبق عملية XOR على كل بايت مع المفتاح بنمط متكرر. يُعرّف ملف الإخراج shellcode.asm الأحجام، والمصفوفات للبيانات المشفرة والمفتاح، وإجراءً لتحميل البيانات في وقت التشغيل. يتطابق فك التشفير في المحمّل مع هذه العملية في الذاكرة. لاحظ أن المفاتيح الأطول تزيد من زمن الانتظار.

الاستخدام

التجهيز

جهّز ملفًا ثنائيًا خامًا للشيلكود (مثل payload.bin). شغّل python generate.py payload.bin [optional_key] لإنتاج shellcode.asm.

التخصيص

عدّل szDllName (كلمات Unicode السداسية في evader.asm) لاستخدام ملفات DLL بديلة مثل urlmon.dll. أعد حساب تجزئات DJB2 لواجهات برمجة جديدة باستخدام منطق str_hash. علّق على وحدات الماكرو (مثل KILL_DEBUGGERS) لأغراض تصحيح الأخطاء.

القيود والاعتبارات

AsmLdr مُحسَّن لنظامي Windows 10 و 11 x64؛ قد تؤدي تحديثات النواة إلى تغيير الإزاحات (مثل PEB+0x18) أو أنماط NTDLL (مثل 0xb8d18b4c)، مما يتطلب التحقق. تعتمد معالجة الأخطاء على قيم إرجاع NTSTATUS (مثل <0 للفشل)، دون تسجيل مدمج. تستهلك العمليات الوهمية والمزيفة دورات معالجة، مما قد ينبّه مراقبي الموارد على الأنظمة المقيّدة. استخدمه حصريًا في بيئات خاضعة للتحكم.

تنزيل الأداة