
Python-Skript mit Impacket zum Testen der Zerologon-Sicherheitslücke (CVE-2020-1472) durch einen versuchten Netlogon-Authentifizierungs-Bypass gegen Domänencontroller.
Ein Python-Skript, das die Impacket-Bibliothek verwendet, um die Schwachstelle des Zerologon-Exploits (CVE-2020-1472) zu testen.
Es versucht, die Netlogon-Authentifizierungsumgehung durchzuführen. Das Skript wird sofort beendet, wenn die Umgehung erfolgreich durchgeführt wurde, und führt keine Netlogon-Operationen durch. Wenn ein Domänencontroller gepatcht ist, gibt das Erkennungsskript nach dem Senden von 2000 Paaren von RPC-Aufrufen auf und schlussfolgert, dass das Ziel nicht anfällig 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.
Die Skript-Ziele können verwendet werden, um einen DC oder Backup-DC zu testen. Es funktioniert wahrscheinlich auch gegen einen schreibgeschützten DC, aber dies wurde nicht getestet. Geben Sie einen Domänencontroller mit dem Namen EXAMPLE-DC und der IP-Adresse 1.2.3.4 an und führen Sie das Skript wie folgt aus:
./zerologon_tester.py EXAMPLE-DC 1.2.3.4
Der DC-Name sollte sein NetBIOS-Computername sein. Wenn dieser Name nicht korrekt ist, wird das Skript wahrscheinlich mit einem STATUS_INVALID_COMPUTER_NAME-Fehler fehlschlagen.
Ein Whitepaper zu dieser Sicherheitslücke wird hier veröffentlicht: https://www.secura.com/blog/zero-logon am Montag, den 14. September.