
NebulousAD أداة تدقيق آلية لبيانات الاعتماد.
اعتبارًا من 14 أبريل، لن تستضيف NuID بعد الآن واجهة برمجة تطبيقات NebulousAD التي يتواصل معها هذا الكود. كفريق صغير من المطورين، وجدنا أنه ليس من المجدي دعم ومراقبة وتطوير كل من بوابة NebulousAD وبوابة المطورين الخاصة بالمصادقة Developer Portal بشكل فعال.
سيستمر الكود الخاص بفحص كلمات مرور Active Directory مقابل مجموعة من بيانات اعتماد المصادقة المخترقة علنًا في العيش في هذا المستودع، وسنقوم بدمج جميع الملاحظات الممتازة التي تلقيناها من خلال تجربتنا مع NebAD لتوفير خدمة قائمة سوداء سلسة لكلمات المرور جنبًا إلى جنب مع واجهة برمجة تطبيقات المصادقة الخاصة بنا في الأشهر القادمة. لذا ترقبوا!
نقدر مشاركتكم وملاحظاتكم في الماضي، ونتطلع إلى الاستماع منكم في المستقبل. لا تترددوا في التواصل معنا بخصوص أسئلة حول NebAD أو NuID أو أي شيء متعلق بالهوية الرقمية.
إلى اللقاء! -فريق NuID
NebulousAD هي أداة لتدقيق كلمات مرور مستخدمي Active Directory مقابل قاعدة بيانات لكلمات المرور المخترقة التي تم العثور عليها في خروقات البيانات. صُممت الأداة لمساعدة مسؤولي أنظمة Windows في العثور على استخدام كلمات المرور المخترقة ومعالجتها اختياريًا. يُوصى بهذا النهج بواسطة NIST 800-63B، ويمكن أن يساعد في الحماية من هجمات رش بيانات الاعتماد وحشوها.
تحتوي قاعدة بيانات Nebulous حاليًا على أكثر من 2.5 مليار تجزئة فريدة لكلمات مرور مخترقة.
تستخدم NebulousAD نموذج k-anonymity افتراضيًا للحفاظ على خصوصية وأمان كلمات المرور التي يتم فحصها مقابل واجهة برمجة التطبيقات. يتم إرسال الأحرف الخمسة الأولى فقط من تجزئة SHA-2 إلى واجهة برمجة التطبيقات. يمكنك قراءة المزيد عن k-anon هنا.
تم إصدار الأداة أصلاً في BSides Las Vegas 2019. فيديو عرض BSides موجود هنا.
الميزات القادمة:
ما عليك سوى تنزيل الإصدار المُجمّع مسبقًا (لا يتطلب مترجم بايثون)، أو البناء من المصدر:
تتطلب هذه الأداة Python2.7 (حاليًا).
قم بتشغيل git clone https://github.com/NuID/nebulousAD.git
بعد ذلك، قم بالتثبيت باستخدام python setup.py install
ثم قم بتهيئة مفتاحك. يمكنك الحصول على مفتاحك من خلال زيارة: https://nebulous.nuid.io/#/register بمجرد التسجيل، انقر فوق الزر لإنشاء مفتاح API الخاص بك وانسخه.
الآن يمكنك تهيئتها على النحو التالي: nebulousAD -init-key <api_key>
يمكنك الآن تشغيل الأداة. إذا لم تتمكن من العثور على مفتاح API الخاص بك، فقد تحتاج إلى إعادة تشغيل جلسة الطرفية الخاصة بك. يتم تخزين مفتاح API في متغير بيئة. تسجيل الخروج والعودة يعمل أيضًا.
يمكنك تنزيل ملف nebulousAD.exe لاستخدامه بدون مترجم هنا. بدلاً من ذلك، يمكنك تجميع الأداة من المصدر بنفسك:
pip install pyinstallergit clone https://github.com/NuID/nebulousAD.gitcd .\nebulousAD\nebulousADpyinstaller --onefile nebulousAD.pyسيقوم Pyinstaller بإخراج موقع الثنائي المُجمّع:

مثال لأمر لتفريغ جميع التجزئات وفحصها مقابل واجهة برمجة التطبيقات:
nebulousAD.exe -v -snap --check
NuID Credential Auditing tool.
optional arguments:
-h, --help show this help message and exit
-ntds NTDS NTDS.DIT file to parse
-system SYSTEM SYSTEM registry hive to parse
-csv CSV Output results to CSV file at this PATH.
-json JSON Output results to JSON file at this PATH
-init-key INIT_KEY Install your Nu_I.D. API key to the current users
PATH.
-c, --check Check against Nu_I.D. API for compromised
credentials.
-dk, --disable-k-anon
Disable k-anon hash searches against the API (speeds
up the audit).
-snap Use ntdsutil.exe to snapshot the system registry
hive and ntds.dit file to <systemDrive>:\Program
Files\NuID\
-shred When performing delete operations on files, use a 7
pass overwrite with sdelete.exe. Download here:
https://docs.microsoft.com/en-
us/sysinternals/downloads/sdelete
-no-backup Do not backup the existing snapshots, just overwrite
them instead.
-clean-old-snaps CLEAN_OLD_SNAPS
Clean backups older than N days.
display options:
-user-status Display whether or not the user is disabled
-pwd-last-set Shows pwdLastSet attribute for each account found
within the NTDS.DIT database.
-history Dump NTLM hash history of the users.
-v Enable verbose mode.
يؤدي تعطيل وظيفة فحص التجزئة باستخدام k-anonymity. هذا مفيد لتسريع وقت البحث، ولكنه سيؤدي إلى إرسال تجزئة SHA-256(NTLM) الكاملة إلى واجهة برمجة التطبيقات. نحن لا نسجل أو نخزن التجزئات المرسلة إلى واجهة برمجة التطبيقات.
ستقوم المعلمة -snap تلقائيًا بأخذ لقطة من Active Directory (باستخدام ntdsutil.exe)، وتفريغ ملف ntds.dit بالإضافة إلى خلية SYSTEM، إذا كانت لديك الصلاحيات.
يمكنك تفريغ هذا يدويًا باستخدام أي مجموعة من الطرق أو أداة ntdsutil.exe.
إذا قمت بالتفريغ يدويًا، يمكنك الإشارة إلى الملفات باستخدام -system path\to\SYSTEM و -ntds path\to\ntds.dit. هذا مفيد إذا كنت تريد تدقيق اللقطات القديمة.
يتطلب هذا مفتاح API من https://nebulous.nuid.io/#/register. بمجرد أن يكون لديك ذلك وقمت بتثبيته باستخدام -init-key، يمكنك فحص التجزئات مقابل واجهة برمجة تطبيقات NuID.
إذا قمت بتحديد -history، فسوف يتحقق أيضًا من تاريخ كلمة المرور لكل حساب لمعرفة ما إذا كانت هناك كلمة مرور استخدمها المستخدم سابقًا وتم اختراقها.
يضيف إخراجًا يشير إلى ما إذا كان الحساب ممكّنًا أو معطلاً في Active Directory.
يضيف إخراجًا يشير إلى تاريخ آخر تعيين لكلمة مرور الحساب. يمكن أن يكون هذا مفيدًا في اكتشاف انتهاكات سياسة الأمان للحسابات التي لا تتم إعادة تعيينها تلقائيًا كما هو محدد في GPO، مثل حسابات الخدمة.
يقوم أيضًا بتدقيق أو تفريغ تاريخ كلمة المرور المخزنة للحسابات.
استخدام تجاوز DoD بـ 7 تمريرات عند محو اللقطات. يتطلب ذلك وجود sdelete.exe في مسارك. يمكنك الحصول عليه من هنا: https://docs.microsoft.com/en-us/sysinternals/downloads/sdelete
ما عليك سوى تنزيله ووضعه في دليل %SYSTEMDRIVE\Windows\System32\ الخاص بك، أو إعداد متغير البيئة.
مفيد في تنظيف النسخ الاحتياطية عند تعيين هذا التطبيق للتشغيل مع جدولة المهام. يمكن أن تكون خلية SYSTEM وملف .dit كبيرة جدًا في المجالات الأكبر وتشغل مساحة كبيرة من القرص.
إذا كنت تستخدم جدولة المهام لإجراء تدقيق يومي، يمكنك استخدام هذا الخيار على النحو التالي: -clean-old-snaps 7 لتخزين لقطات أسبوع واحد فقط.
إذا اكتشفنا لقطة قديمة، فإننا نقوم بنسخها احتياطيًا إلى %SYSTEMDRIVE%\Program Files\NuID\snapshot-backups بشكل افتراضي.
يرجع ذلك إلى أن ntdsutil.exe يتطلب دليلاً فارغًا.
إذا كنت تريد تعطيل هذا النسخ الاحتياطي ومجرد محو اللقطة الحالية، استخدم هذه الوسيطة.
يتم توفير واجهة برمجة تطبيقات ويب RESTful تسمح للمستخدمين باستخدام رمز واجهة برمجة تطبيقات NuID، بمجرد إنشائه، لعميلك المخصص. يوضح هذا القسم الوظائف الصحيحة لواجهة برمجة تطبيقات الويب، والطلبات الصالحة، وأنواع الأخطاء، والمزيد.