
Exploit Python qui teste les contrôleurs de domaine pour Zerologon (CVE-2020-1472) et réinitialise le mot de passe du compte machine vulnérable via le contournement de l'authentification Netlogon.
Code de vérification et d'exploitation pour CVE-2020-1472 alias Zerologon
Teste si un contrôleur de domaine est vulnérable à l'attaque Zerologon ; si vulnérable, il réinitialise le mot de passe du compte du contrôleur de domaine à une chaîne vide.
NOTE : Cela risque de casser des choses dans les environnements de production (par ex. fonctionnalité DNS, communication avec les contrôleurs de domaine de réplication, etc.) ; les clients cibles ne pourront alors plus s'authentifier au domaine et ne pourront être resynchronisés que par une action manuelle.
Recherche originale et livre blanc sur Zerologon par Secura (Tom Tervoort) - https://www.secura.com/blog/zero-logon
Il tentera d'effectuer le contournement de l'authentification Netlogon. Lorsqu'un contrôleur de domaine est patché, le script de détection abandonnera après avoir envoyé 2000 paires d'appels RPC, concluant que la cible n'est pas vulnérable (avec une probabilité de faux négatif de 0,04 %).
L'exploitation ne réussira que si le contrôleur de domaine utilise le mot de passe stocké dans Active Directory pour valider la tentative de connexion, plutôt que celui stocké localement, car en changeant un mot de passe de cette manière, il n'est modifié que dans l'AD. Le système cible lui-même continuera à stocker localement son mot de passe d'origine.
1. git clone https://github.com/SecureAuthCorp/impacket
2. cd impacket
3. pwd ~/impacket/
4. virtualenv --python=python3 impacket
5. source impacket/bin/activate
6. pip install --upgrade pip
7. pip install
~/impacket/
cd examples
git clone https://github.com/Akash7350/CVE-2020-1472/tree/main
cd CVE-2020-1472
pip install -r requirements.txt
