Démonstration pédagogique de la détection de CVE-2020-1472 (ZeroLogon) à l'aide des journaux d'événements Windows et de Suricata IDS, ainsi que l'atténuation via Windows Updates. Inclut un script de test de vulnérabilité et des règles Suricata personnalisées.
Démo de détection et d'atténuation de CVE-2020-1472 (ZeroLogon)
Ce projet démontre la détection et l'atténuation de la vulnérabilité Windows critique CVE-2020-1472, également connue sous le nom de ZeroLogon. Cette vulnérabilité permet à des attaquants d'obtenir un accès administratif non authentifié. Ce projet a été développé dans le cadre d'un projet scolaire de cybersécurité. Le crédit du code PoC revient à Tom Tervoort (Secura) et le crédit du jeu de règles Suricata revient à Proofpoint Emerging Threats.
Composants clés :
Tester la vulnérabilité d'un contrôleur de domaine à l'aide d'un script PoC
Surveiller les indicateurs via les journaux d'événements Windows
Mettre en œuvre Suricata IDS avec des règles personnalisées
Appliquer les mises à jour Windows
Techniques de détection démontrées
1. Script de test de vulnérabilité
Script Python de Tom Tervoort (Secura)
Utilise la bibliothèque impacket pour tester la vulnérabilité d'un contrôleur de domaine via le contournement de l'authentification Netlogon
2. Analyse des journaux d'événements Windows
Recherchez ces événements clés :
4624 : Ouverture de session réussie avec les identifiants du contrôleur de domaine
4672 : Privilèges spéciaux attribués à l'attaquant (par exemple, administrateur)
Remarque de configuration :
La configuration de Suricata a été modifiée à l'aide de Notepad++ :
HOME_NET a été défini sur l'adresse IP de la machine cible
La section rule-files a été mise à jour pour utiliser le fichier emerging-all.rules
Démonstration des approches de détection
Étape 1 : Déterminer le nom d'ordinateur et l'adresse IP de la machine cible
Ouvrez le Gestionnaire de serveur.
Accédez à Serveur local. Notez le nom d'ordinateur et l'adresse IP trouvés sous Ethernet. Dans cette démonstration, le nom d'ordinateur est FTB4-Victim-Win et l'adresse IP est 10.0.2.4
Étape 2 : Lancer le script de test de vulnérabilité
Sur la machine de l'attaquant, ouvrez le Terminal
Exécutez le script de test Python avec le nom d'ordinateur et l'adresse IP de la machine cible :
Le script se terminera par un message indiquant que le contrôleur de domaine peut être entièrement compromis par une attaque ZeroLogon.
Étape 3 : Analyse des journaux d'événements Windows
Maintenant, sur la machine cible, lancez l'Observateur d'événements. L'icône se trouve dans la barre des tâches.
Accédez à Journaux Windows, puis à Sécurité.
Comme illustré ci-dessous, il y a deux événements de sécurité liés au contournement ZeroLogon : l'événement 4672 et l'événement 4624.
Accédez à Système, également sous Journaux Windows. Faites défiler jusqu'à l'événement dont le Niveau est Erreur et la Source NETLOGON. Sélectionnez-le. Il s'agit d'un autre événement lié au contournement ZeroLogon.
Sur la machine cible, ouvrez l'Invite de commandes en tant qu'administrateur.
Exécutez la commande suivante pour lancer Suricata :
root@kitploit:~
cd C:\Program Files\Suricata\
Exécutez la commande suivante avec l'adresse IP appropriée :
root@kitploit:~
suricata -c suricata.yaml -i <target IP> -l log
Ouvrez l'Explorateur de fichiers à partir de l'icône de la barre des tâches. Accédez à C:\Program Files\Suricata\log
Tapez powershell dans la barre de navigation et appuyez sur Entrée. Windows PowerShell se lancera.
Dans Windows PowerShell, tapez get-content .\fast.log -wait et appuyez sur Entrée. Ignorez tous les journaux précédents car ils proviennent de tests antérieurs et faites défiler jusqu'à l'espace vide.
Sur la machine de l'attaquant, lancez à nouveau le script de test Python.
Revenez maintenant à la machine cible et notez les nouvelles alertes générées. Ces alertes indiquent une tentative ou une exploitation de ZeroLogon.
Vous pouvez fermer les fenêtres Windows PowerShell et Invite de commandes.
Ouvrez fast.txt. Les journaux sont enregistrés dans ce fichier.
Démonstration de l'approche d'atténuation
L'atténuation la plus efficace pour CVE-2020-1472 (ZeroLogon) consiste à installer les dernières mises à jour de sécurité Windows.
Étapes :
Sur la machine cible, ouvrez l'application Paramètres.
Accédez à Mise à jour et sécurité → Windows Update
Cliquez sur « Rechercher des mises à jour » et laissez le système télécharger et installer les dernières mises à jour.
Redémarrez la machine si nécessaire.
Ces mises à jour appliquent le correctif de Microsoft pour la vulnérabilité ZeroLogon en imposant l'utilisation de protocoles distants sécurisés et en activant le mode d'application par défaut sur les contrôleurs de domaine.
Remarque sur les limites
Les approches de détection et d'atténuation démontrées dans ce projet sont conçues à des fins pédagogiques dans un environnement de laboratoire contrôlé. Bien qu'efficaces pour illustrer les concepts derrière CVE-2020-1472 (ZeroLogon), elles présentent des limites et ne sont pas entièrement pratiques pour un déploiement dans des environnements d'entreprise réels. Comme il s'agit d'un projet scolaire, l'accent est mis sur l'apprentissage et la compréhension des techniques de cybersécurité plutôt que sur la mise en œuvre de solutions prêtes pour la production.
Proofpoint Emerging Threats pour leurs règles Suricata utilisées pour détecter les tentatives d'exploitation ZeroLogon https://rules.emergingthreats.net/open/
Ce dépôt a été créé à des fins éducatives uniquement.
Tous les outils, scripts et techniques démontrés sont destinés à aider à comprendre les vulnérabilités de cybersécurité dans un environnement de laboratoire contrôlé. N'essayez pas d'utiliser l'un des éléments fournis sur des systèmes ou des réseaux que vous ne possédez pas ou pour lesquels vous n'avez pas l'autorisation explicite de tester.
L'auteur n'est pas responsable de toute utilisation abusive des informations fournies.