
AD Miner هي أداة تدقيق لـ Active Directory تستخدم استعلامات Cypher لتحليل البيانات من قاعدة البيانات البيانية #Bloodhound بهدف كشف نقاط الضعف الأمنية.
ميزات التقرير القائم على الويب:
تصنيف قائم على المخاطر لنقاط الضعف في Active Directory، بالإضافة إلى مسارات تخفيف شاملة.
شريط بحث وعناصر تحكم مصممة بعناية لتحديد أكثر التهيئات الخاطئة خطورة.
يمكنك أيضًا ملاحظة المؤشرات بمرور الوقت للمساعدة في قياس كفاءة التخفيف.
تم إنشاء AD Miner في البداية بواسطة Forvis Mazars ويتم صيانته بواسطة فريق تدقيق الأمن السيبراني والاستشارات في Grant Thornton.
لتشغيل AD Miner، يجب أولاً أن يكون لديك قاعدة بيانات neo4j تحتوي على كائنات Active Directory:
[!CAUTION] نوصي بشدة باستخدام BloodHound Automation، حيث يقوم بتثبيت إضافة Graph Data Science من Neo4j، والتي:
- تحسن بشكل كبير وقت الحساب والأداء العام.
- تتيح استخدام المسار الأذكى بدلاً من دالة Neo4j المضمنة shortestPath() (أي المسارات التي يسهل استغلالها بدلاً من أقل عدد من القفزات العقدية).
لإعداد بيئة BloodHound الخاصة بك (بما في ذلك الواجهة الرسومية وقاعدة بيانات Neo4j)، يوصى بشدة باستخدام BloodHound Automation بسبب تكامله السلس مع إضافة Graph Data Science. على الرغم من أنه لا بأس من استخدام تثبيت BloodHound CE الافتراضي، فكن على علم أنك ستفوت فوائد GDS (مثل: إيجاد مسارات أكثر ذكاءً، سرعة تنفيذ محسنة، إلخ).
بشكل افتراضي، ينشئ BloodHound قاعدة بيانات neo4j يمكن الوصول إليها على المنفذ 7687.
أسهل طريقة هي تنفيذ الأمر التالي باستخدام pipx:
pipx install 'git+https://github.com/AD-Security/AD_Miner.git'
ADMiner متاح أيضًا على بعض توزيعات Linux:
pacman -S ad-minernix-env -iA nixos.ad-minerصورة Docker متاحة للبناء. قم ببناء الصورة بالأمر التالي:
docker build -t ad-miner .
لتشغيل هذا على Windows باستخدام بيانات BloodHound Community Edition، استخدم الأوامر أدناه:
docker run -v ${PWD}:/tmp ad-miner AD-miner -b bolt://host.docker.internal:7687 -u neo4j -p mypassword -cf YOUR_PREFIX
لتشغيل هذا على Linux باستخدام بيانات BloodHound Community Edition، استخدم الأوامر أدناه:
docker run -v ${PWD}:/tmp --network host ad-miner AD-miner -b bolt://localhost:7687 -u neo4j -p mypassword -cf YOUR_PREFIX
لاحظ أن تثبيت وحدة التخزين باستخدام -v أمر بالغ الأهمية للحصول على مخرجات البيانات. يفترض هذا أن خادم BHCE يعمل على مضيف Docker بالإعدادات الافتراضية.
قم بتشغيل الأداة:
AD-miner [-h] [-b BOLT] [-u USERNAME] [-p PASSWORD] [-e EXTRACT_DATE] [-r RENEWAL_PASSWORD] [-a] [-c] [-l LEVEL] -cf CACHE_PREFIX [-ch NB_CHUNKS] [-co NB_CORES] [--rdp] [--evolution EVOLUTION] [--cluster CLUSTER]
مثال:
AD-miner -cf My_Report -u neo4j -p mypassword
يتم إنشاء ملفات التخزين المؤقت (cache) عند اكتمال كل طلب Neo4j. تتيح لك هذه الميزة إيقاف AD Miner مؤقتًا أو إيقاف تشغيله في أي نقطة أثناء عملية التشغيل دون فقدان النتائج المحسوبة سابقًا. لاستخدام التخزين المؤقت، استخدم المعامل -c. يتم تخزين ملفات التخزين المؤقت في مجلد cache_neo4j في المستودع الحالي لديك. لكي يتم استخدام التخزين المؤقت، يجب أن يتطابق اسم التقرير مع بادئة اسم ملف التخزين المؤقت:
AD-miner -c -cf My_Report -u neo4j -p mypassword
للتعامل بشكل أفضل مع مجموعات البيانات الكبيرة، من الممكن تمكين تعدد الخيوط وكذلك استخدام مجموعة من قواعد بيانات neo4j، كما هو موضح في المثال التالي (حيث يتعامل الخادم server1 مع 32 خيطًا ويتعامل الخادم server2 مع 16):
AD-miner -c -cf My_Report -b bolt://server1:7687 -u neo4j -p mypassword --cluster server1:7687:32,server2:7687:16
إذا كانت سياسة تجديد كلمة المرور معروفة، فيمكنك تحديدها باستخدام المعامل -r لضمان توافق ضوابط تجديد كلمة المرور مع إعدادات بيئتك (الافتراضي هو 90 يومًا). على سبيل المثال، إذا كانت سياسة كلمة المرور مضبوطة على 180 يومًا، يمكنك استخدام ما يلي:
AD-miner -c -cf My_Report -b bolt://server:7687 -u neo4j -p mypassword -r 180
[!TIP] كلمة المرور الافتراضية لقاعدة بيانات neo4j الخاصة بـ Bloodhound CE هي
bloodhoundcommunityeditionأوneo5jإذا كنت تستخدم BloodHound Automation
الخيارات: