
أداة بحث دفاعية توثّق نقاط نهاية API ووكلاء المستخدم القابلة للملاحظة الخاصة بالأدوات الهجومية التي تستهدف Microsoft Entra ID، مما يدعم هندسة الكشف والاستجابة للحوادث.
EntraTrace هي أداة بحث أمني دفاعي لتوثيق وتحديد السلوك القابل للملاحظة للأدوات الهجومية التي تستهدف Microsoft Entra ID.
يبني المشروع قاعدة معرفية تلقائية حول أدوات مثل AzureHound وAADInternals وO365Enum وPingCastle وغيرها، مع التركيز على آثار UserAgent وAPI التي تولّدها.
🚧 قيد التطوير
يجري تطوير المشروع بنشاط. ستتطور البيانات وتغطية الأدوات والوظائف بمرور الوقت.
نرحب بالمساهمات والأبحاث والتصحيحات وتحليلات الأدوات الإضافية.
يركز EntraTrace على المعلومات التي قد تكون مفيدة للمدافعين، بما في ذلك:
الهدف هو تسهيل فهم سلوك الأدوات الهجومية على الفرق الدفاعية وتحويله إلى معلومات قابلة للتنفيذ.
| الأداة | واجهات API الفريدة | استدعاءات API الفريدة | وكلاء المستخدم |
|---|---|---|---|
| aadinternals | 4 | 110 | 18 |
| AzureHound | 2 | 28 | 0 |
| Graphpython | 3 | 119 | 17 |
| GraphRunner | 4 | 67 | 21 |
| GraphSpy | 2 | 38 | 2 |
| MFASweep | 4 | 17 | 11 |
| MicroBurst | 3 | 78 | 0 |
| MSOLSpray | 1 | 1 | 0 |
| o365enum | 1 | 1 | 2 |
| o365spray | 1 | 1 | 2 |
| pingcastle | 3 | 14 | 1 |
| PowerZure | 3 | 29 | 0 |
| ROADtools | 4 | 434 | 7 |
| ropci | 3 | 15 | 0 |
| Stormspotter | 3 | 4 | 0 |
| TeamFiltration | 3 | 62 | 2 |
| TokenSmith | 2 | 8 | 0 |
| TokenTactics | 4 | 8 | 16 |
| TokenTacticsV2 | 4 | 30 | 23 |
تُستخدم أدوات الأمن الهجومي بشكل متكرر لتقييم بيئات الهوية ومهاجمتها. إن فهم كيفية تفاعل تلك الأدوات مع Entra ID يمكن أن يساعد المدافعين على تحديد استخدامها والتحقيق في النشاط المشبوه وتحسين تغطية الكشف.
يهدف EntraTrace إلى سد الفجوة بين أبحاث الأدوات الهجومية وعمليات الأمن الدفاعي.
يمكن استخدام EntraTrace من أجل:
يمكن استخدام استعلامات البحث KQL التالية لإجراء مسح مؤشرات الاختراق (IOC) على بيانات السجلات لديك:
يُحدَّث المستودع يوميًا، لكن النشر المحلي مدعوم. للتشغيل محليًا من جذر المستودع باستخدام Python. استخدم مخرجات المساعدة المدمجة لتأكيد الخيارات المتاحة قبل تشغيلها.
⚠️ - قد يؤدي تشغيل السكربت محليًا إلى تنبيهات أمنية حيث يتم تنزيل المستودعات التي تحتوي على أدوات هجومية محليًا لاستخراج المعلومات اللازمة لإنشاء ملف تعريف.
# Extract API behavior from a repo or refresh all profile entries
python .\Scripts\ExtractToolBehavior.py --all-profiles --output-dir .\Profiles
# Export tool user agents from YAML profiles into a CSV
python .\Scripts\SummarizeUserAgents.py --profiles-dir .\Profiles --output .\Indicator Lists\UserAgents.csv
SummarizeUserAgents.py بتصدير بيانات وكيل المستخدم من ملفات تعريف YAML إلى ملف CSV للبحث والتحري.ExtractToolBehavior.py عناوين URL للمستودعات من Profiles\Tools.txt عند وجوده، وإلا فإنه يعود إلى كل repository_url موجود في ملفات تعريف YAML في دليل الإخراج.-h أو --help لعرض مجموعة المعاملات الكاملة والسلوك.🤖 تم تطوير EntraTrace بمساعدة الذكاء الاصطناعي. يُستخدم الذكاء الاصطناعي طوال عملية التطوير والبحث، مع مراجعة بشرية والتحقق من العمل الناتج.
راجع LICENSE للحصول على معلومات الترخيص.