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

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

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

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

دليل الأدوات

الفئات

عرض جميع الفئات
Loading categories
Purple-Team-Automation — محاكاة الخصم الآلية (Caldera) ضد مختبر AD للتحقق من تغطية كشف Sigma وربط النتائج بـ MITRE ATT&CK. | Kitploit
أدوات/GitHubGitHub/joshuagodwin7929/purple-team-automation
ما بعد الاستغلالاختبار الاختراقالقيادة والسيطرةاستخبارات التهديداتالفريق الأحمرالاستجابة للحوادثتحليل السجلاتالهجوم العدائيمختبرات وتدريب عملي
GitHubjoshuagodwin7929/purple-team-automation

Purple-Team-Automation

محاكاة الخصم الآلية (Caldera) ضد مختبر AD للتحقق من تغطية كشف Sigma وربط النتائج بـ MITRE ATT&CK.

عرض المستودع
55111.8kمنذ 24 أياملم تتم المراجعة بعد

الأكثر شعبية

عرض الكل →

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

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

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

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

Purple-Team-Automation

التحقق الآلي من الفريق البنفسجي لقواعد كشف Sigma المبنية في detection-as-code-repo، باستخدام MITRE Caldera لتنفيذ مسار هجوم متسلسل للوصول إلى بيانات الاعتماد في Active Directory ضد مختبر نطاق موجود، وخريطة حرارية من ATT&CK Navigator لتصور التغطية.

لماذا Caldera بدلاً من Atomic Red Team

تم اختيار Caldera بدلاً من Atomic Red Team لهذا المشروع لأنه يوفر إطار عمل C2 كامل، مع وكلاء وملفات تعريف للخصوم وعمليات متسلسلة متعددة الخطوات، بدلاً من تنفيذ تقنية واحدة معزولة. وهذا يتوافق مع هدف هذا المشروع بشكل أوثق: ليس فقط "هل تم كشف هذه التقنية الواحدة"، بل "هل تنجو سلسلة هجوم واقعية ومرتبة من منظومة الكشف الحالية لدينا، من البداية إلى النهاية."

هيكل المستودع

Purple-Team-Automation/
├── abilities/                          Custom Caldera ability YAMLs
├── adversary-profiles/                 The chained adversary profile used in the operation
├── validation/                         Kibana evidence per technique + the LLMNR known-gap writeup
├── attack-navigator-heatmap.json       ATT&CK Navigator layer, load at mitre-attack.github.io/attack-navigator
├── purple-team-automation-report.md    Full write-up: scope, methodology, results, gap analysis
└── README.md                           This file

ما تم بناؤه

البنية التحتية

نشرت خادم Caldera مخصصًا عبر Docker Compose على جهاز افتراضي Ubuntu منفصل (caldera-server، 192.168.18.205) على نفس شبكة المختبر التي يوجد بها مختبر نطاق AD الحالي، مع إبقائه معزولًا عن منظومة ELK/SIEM. جاء Caldera v5.0.0 مع 2000 قدرة جاهزة و29 خصمًا جاهزًا من الصندوق.

مشكلات البناء التي تتبعت جذورها على طول الطريق:

  • بدا البناء الأولي مكتملًا لكنه لم ينتج صورة فعليًا، لذا اضطررت إلى إجراء إعادة بناء نظيفة.
  • دخلت الحاوية في حلقة انهيار بسبب واجهة Vue أمامية مبنية مسبقًا مفقودة (plugins/magma/dist/assets/). تتبعت ذلك إلى تركيب حجم Docker لكامل الدليل في docker-compose.yml الذي كان يستبدل الواجهة الأمامية المترجمة في الصورة بمصدر مضيف غير مترجم. تم الإصلاح بإزالة تركيب الدليل الكامل.
  • حاولت إعادة بناء الواجهة الأمامية في وقت تشغيل الحاوية، لكن ذلك فشل لأن Dockerfile يزيل عمدًا npm/nodejs بعد بناء الصورة للحفاظ على الصورة النهائية نحيفة.
  • بعد أن نجحت أخيرًا في تشغيل تسجيل الدخول، كانت الواجهة لا تزال غير فعّالة. كانت الواجهة الأمامية المترجمة تحتوي على localhost:8888 مضمّنًا كأساس API الخاص بها، مثبتًا في وقت بناء Vue عبر plugins/magma/.env (VITE_CALDERA_URL)، وهو غير متحكم به من إعداد app.frontend.api_base_url في وقت التشغيل في conf/local.yml. أصلحته بتحرير .env إلى عنوان IP الحقيقي للجهاز الافتراضي وإعادة البناء.
  • واجهت أيضًا فشلًا منفصلًا في مساحة القرص، تتبعت سببه إلى وحدة تخزين منطقية LVM تستخدم نصف القرص المخصص للجهاز الافتراضي فقط. تم الإصلاح باستخدام lvextend -l +100%FREE + resize2fs، بالإضافة إلى استعادة طبقات ذاكرة التخزين المؤقت للبناء عبر docker system prune -a --volumes.

القدرات المخصصة

لا يوفر Stockpile سوى قدرة أصلية لاستخراج بيانات الاعتماد القائم على LSASS/Mimikatz (T1003.001). التقنيات الأربع التي احتجتها لهذا المشروع، Kerberoasting وAS-REP Roasting وPassword Spraying وDCSync، جميعها تطلبت قدرات مخصصة بنيتها حول Impacket (GetUserSPNs.py، GetNPUsers.py، secretsdump.py) وKerbrute، لأن قدرات Kerberoasting الموجودة في Stockpile (Rubeus، WinPwn) خاصة بـ Windows/.NET فقط وغير متوافقة مع وكيل Sandcat القائم على Linux في هذا المختبر.

واجهت مشكلتين في البناء أثناء تأليف هذه:

  • يستخدم مخطط القدرات الحقيقي في Caldera v5 وحدات محلل مبنية خصيصًا لكل أداة (مثل plugins.stockpile.app.parsers.katz) مع حقول source/edge/target، وليس محلل pattern عام بتعبير نمطي كما افترضت في الأصل. تسبب هذا في TypeError('ParserConfig.__init__()') صامت عند التحميل. نظرًا لعدم وجود محلل مدمج لمخرجات Impacket الخام، أسقطت كتلة parsers: بالكامل من القدرات الأربع جميعها. يتم التقاط النتائج كملفات مخرجات/تجزئة خام والتحقق منها يدويًا مقابل Kibana (انظر /validation).
  • تم حفظ اثنين من ملفات YAML للقدرات (password spray، DCSync) في البداية كملفات بحجم 0 بايت بعد فشل لصق nano بصمت. اكتشفت هذا بفحص كل ملف باستخدام cat/wc -l قبل إعادة تشغيل الحاوية.

نشر الوكيل

نشرت وكيل Sandcat (Linux، المجموعة red) على جهاز Kali الافتراضي (192.168.18.70)، باستخدام اسم العملية splunkd للتمويه في OPSEC، وأكدت أنه ظهر حيًا وموثوقًا، يعمل كـ root مع منفذ proc/sh.

ملف تعريف الخصم والعملية

بنيت ملف تعريف الخصم AD Credential Access Chain لتسلسل القدرات المخصصة الأربع بالترتيب الذي يحاول به المهاجم الداخلي الانتهازي عادةً:

    → Password Spray (Kerbrute)
    → Kerberoasting (GetUserSPNs.py)
    → AS-REP Roasting (GetNPUsers.py)
    → DCSync (secretsdump.py)

تم استبعاد تسميم LLMNR/NBT-NS (T1557.001) عمدًا من ملف تعريف Caldera. انظر validation/llmnr-known-gap.md لمعرفة السبب، وكيف لا يزال مُدرجًا كضابط سلبي للفجوة المعروفة.

النتائج

تم تأكيد كشف جميع التقنيات الأربع المنفذة مقابل قواعد Sigma في detection-as-code-repo، مع التحقق المتبادل مباشرة في Kibana. لا يزال تسميم LLMNR/NBT-NS فجوة مفتوحة وموثقة.

التقنيةالحالة
T1110.003 – Password Spraying🟢 مكتشفة
T1558.003 – Kerberoasting🟢 مكتشفة
T1558.004 – AS-REP Roasting🟢 مكتشفة
T1003.006 – DCSync🟢 مكتشفة
T1557.001 – LLMNR/NBT-NS Poisoning🔴 فجوة

التفاصيل الكاملة: validation/detection-results.md التقرير الكامل: purple-team-automation-report.md الخريطة الحرارية التفاعلية: attack-navigator-heatmap.json

الخطوات التالية

  1. إصلاح إعدادات Sysmon (تمكين Event ID 3 و22) لسد فجوة LLMNR.
  2. كتابة وضبط قاعدة Sigma جديدة لتسميم LLMNR/NBT-NS.
  3. إعادة تشغيل هذه العملية لتأكيد الإصلاح وتحديث الخريطة الحرارية.
  4. يغذي خارطة طريق مشاريع SOC الأوسع (المشروع D وما بعده).
تنزيل الأداة