
نص بايثون يستخدم Impacket لاختبار ثغرة CVE-2020-1472 (Zerologon) عبر تجاوز مصادقة Netlogon على وحدات تحكم المجال لـ Windows.
سكريبت بايثون يستخدم مكتبة Impacket لاختبار الثغرة الأمنية لاستغلال Zerologon (CVE-2020-1472).
يحاول تنفيذ تجاوز مصادقة Netlogon. سينتهي السكريبت فورًا عند نجاح التجاوز، ولن ينفذ أي عمليات Netlogon. عندما يكون وحدة تحكم المجال مصححة، سيتوقف سكريبت الكشف بعد إرسال 2000 زوج من استدعاءات RPC ويستنتج أن الهدف غير معرض للخطر (مع احتمال خطأ سلبي بنسبة 0.04%).
يتطلب Python 3.7 أو أعلى و Pip. قم بتثبيت التبعيات كما يلي:
pip install -r requirements.txt
لاحظ أن تشغيل pip install impacket يجب أن يعمل أيضًا، طالما أن السكريبت لا يتعطل بسبب إصدارات Impacket المستقبلية.
يمكن استخدام أهداف السكريبت لاستهداف DC أو DC احتياطي. من المحتمل أيضًا أن يعمل ضد DC للقراءة فقط، لكن هذا لم يتم اختباره. بالنظر إلى وحدة تحكم مجال باسم EXAMPLE-DC وعنوان IP 1.2.3.4، قم بتشغيل السكريبت كما يلي:
./zerologon_tester.py EXAMPLE-DC 1.2.3.4
يجب أن يكون اسم DC هو اسم الكمبيوتر NetBIOS الخاص به. إذا كان هذا الاسم غير صحيح، فمن المحتمل أن يفشل السكريبت مع خطأ STATUS_INVALID_COMPUTER_NAME.
سيتم نشر ورقة بيضاء حول هذه الثغرة الأمنية هنا: https://www.secura.com/blog/zero-logon يوم الاثنين 14 سبتمبر.
بدلاً من تشغيل السكريبت محليًا، يمكنك أيضًا تشغيل حاوية Docker كما يلي:
sudo docker run -it ttervoort/zerologon-tester EXAMPLE-DC 1.2.3.4