
Python-Skript zum Testen von Domänencontrollern auf CVE-2020-1472 (Zerologon) unter Verwendung von Impacket. Führt die Erkennung von Netlogon-Authentifizierungsumgehungen mit minimalen falsch-negativen Ergebnissen durch.
Ein Python-Skript, das die Impacket-Bibliothek verwendet, um die Sicherheitslücke des Zerologon-Exploits (CVE-2020-1472) zu testen.
Es versucht, den Netlogon-Authentifizierungs-Bypass durchzuführen. Das Skript wird sofort beendet, wenn der Bypass erfolgreich durchgeführt wird, und führt keine Netlogon-Operationen aus. Wenn ein Domänencontroller gepatcht ist, gibt das Erkennungsskript nach dem Senden von 2000 Paaren von RPC-Aufrufen auf und schließt, dass das Ziel nicht verwundbar ist (mit einer Wahrscheinlichkeit von 0,04 % für falsch negative Ergebnisse).
Erfordert Python 3.7 oder höher und Pip. Installieren Sie die Abhängigkeiten wie folgt:
pip install -r requirements.txt
Beachten Sie, dass die Ausführung von pip install impacket ebenfalls funktionieren sollte, solange das Skript nicht durch zukünftige Impacket-Versionen beschädigt wird.
Mit dem Skript können ein DC oder ein Backup-DC als Ziel verwendet werden. Es funktioniert wahrscheinlich auch gegen einen schreibgeschützten DC, wurde aber nicht getestet. Bei einem Domänencontroller namens EXAMPLE-DC mit der IP-Adresse 1.2.3.4 führen Sie das Skript wie folgt aus:
./zerologon_tester.py EXAMPLE-DC 1.2.3.4
Der DC-Name sollte der NetBIOS-Computername sein. Wenn dieser Name nicht korrekt ist, wird das Skript wahrscheinlich mit einem Fehler STATUS_INVALID_COMPUTER_NAME fehlschlagen.
Ein Whitepaper zu dieser Sicherheitslücke wird hier veröffentlicht: https://www.secura.com/blog/zero-logon am Montag, 14. September.