Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!
CVE-2020-1472-ZeroLogon-Demo-Detection-Mitigation — Bildungsdemo zur Erkennung von CVE-2020-1472 (ZeroLogon) mittels Windows-Ereignisprotokollen und Suricata IDS, plus Minderung durch Windows-Updates. Enthält ein Sicherheitslücken-Testskript und benutzerdefinierte Suricata-Regeln. | Kitploit
Bildungsdemo zur Erkennung von CVE-2020-1472 (ZeroLogon) mittels Windows-Ereignisprotokollen und Suricata IDS, plus Minderung durch Windows-Updates. Enthält ein Sicherheitslücken-Testskript und benutzerdefinierte Suricata-Regeln.
CVE-2020-1472 (ZeroLogon) Erkennungs- und Abwehr-Demo
Dieses Projekt demonstriert die Erkennung und Abwehr der kritischen Windows-Sicherheitslücke CVE-2020-1472, auch bekannt als ZeroLogon. Die Schwachstelle ermöglicht es Angreifern, sich ohne Authentifizierung administrativen Zugriff zu verschaffen. Dies wurde im Rahmen eines Schulprojekts zur Cybersicherheit entwickelt. Der PoC-Code stammt von Tom Tervoort (Secura) und die Suricata-Regeln von Proofpoint Emerging Threats.
Schlüsselkomponenten:
Testen der Anfälligkeit eines Domänencontrollers mit einem PoC-Skript
Überwachung auf Indikatoren über Windows-Ereignisprotokolle
Implementierung von Suricata IDS mit benutzerdefinierten Regeln
Anwenden von Windows-Updates
Demonstrierte Erkennungstechniken
1. Schwachstellen-Testskript
Python-Skript von Tom Tervoort (Secura)
Nutzt die impacket-Bibliothek, um die Anfälligkeit eines Domänencontrollers über die Netlogon-Authentifizierungsumgehung zu testen
2. Windows-Ereignisprotokoll-Analyse
Achten Sie auf diese wichtigen Ereignisse:
4624: Erfolgreiche Anmeldung mit DC-Anmeldeinformationen
4672: Besondere Berechtigungen dem Angreifer zugewiesen (z. B. Administrator)
5805: Netlogon-Fehlerereignisse (Indikator für Ausnutzung)
3. Intrusion Detection mit Suricata
Verwendet Suricata zur Analyse des Netzwerkverkehrs auf dem Domänencontroller
Implementiert benutzerdefinierte Regeln aus dem Proofpoint Emerging Threats-Regelsatz
Erkennt Sequenzen von Nullbytes, die häufig im ZeroLogon-Exploit verwendet werden
Anforderungen
Für die Nachstellung dieser Demonstration ist folgende Einrichtung erforderlich:
Angreifer-Maschine
Virtual - VirtualBox (mit NATNetwork für VM-Netzwerk)
Konfigurationshinweis:
Die Suricata-Konfiguration wurde mit Notepad++ geändert:
HOME_NET wurde auf die IP-Adresse der Ziel-Maschine gesetzt
Der Abschnitt rule-files wurde aktualisiert, um die Datei emerging-all.rules zu verwenden
Demonstration der Erkennungsansätze
Schritt 1: Computernamen und IP-Adresse der Ziel-Maschine ermitteln
Server-Manager öffnen.
Navigieren Sie zu Lokaler Server. Notieren Sie sich den Computernamen und die IP-Adresse, die unter Ethernet zu finden sind. In dieser Demonstration lautet der Computername FTB4-Victim-Win und die IP-Adresse 10.0.2.4
Schritt 2: Schwachstellen-Testskript starten
Öffnen Sie auf der Angreifer-Maschine das Terminal
Führen Sie das Python-Testskript mit dem Computernamen und der IP der Ziel-Maschine aus:
Das Skript wird mit der Nachricht abgeschlossen, dass der Domänencontroller durch einen ZeroLogon-Angriff vollständig kompromittiert werden kann.
Schritt 3: Windows-Ereignisprotokoll analysieren
Öffnen Sie nun auf der Ziel-Maschine die Ereignisanzeige. Das Symbol befindet sich in der Taskleiste.
Navigieren Sie zu Windows-Protokolle, dann Sicherheit.
Wie unten gezeigt, gibt es zwei Sicherheitsereignisse im Zusammenhang mit dem ZeroLogon-Bypass: Ereignis 4672 und Ereignis 4624.
Gehen Sie zu System, ebenfalls unter Windows-Protokolle. Scrollen Sie nach unten, bis Sie das Ereignis mit der Ebene Fehler und der Quelle NETLOGON sehen. Wählen Sie es aus. Dies ist ein weiteres Ereignis im Zusammenhang mit dem ZeroLogon-Bypass.
Sie können die Ereignisanzeige schließen.
Schritt 4: Intrusion Detection mit Suricata
Öffnen Sie auf der Ziel-Maschine die Eingabeaufforderung als Administrator.
Führen Sie den folgenden Befehl aus, um Suricata zu starten:
root@kitploit:~
cd C:\Program Files\Suricata\
Führen Sie den folgenden Befehl mit der entsprechenden IP-Adresse aus:
root@kitploit:~
suricata -c suricata.yaml -i <Ziel-IP> -l log
Öffnen Sie den Datei-Explorer über das Symbol in der Taskleiste. Navigieren Sie zu C:\Program Files\Suricata\log
Geben Sie powershell in die Navigationsleiste ein und drücken Sie die Eingabetaste. Windows PowerShell wird gestartet.
Geben Sie in Windows PowerShell get-content .\fast.log -wait ein und drücken Sie die Eingabetaste. Ignorieren Sie alle vorherigen Protokolle, da sie von vorherigen Tests stammen, und scrollen Sie nach unten zum leeren Bereich.
Starten Sie auf der Angreifer-Maschine das Python-Testskript erneut.
Gehen Sie nun zurück zur Ziel-Maschine und notieren Sie die neuen generierten Warnungen. Diese Warnungen deuten auf einen Versuch oder eine Ausnutzung von ZeroLogon hin.
Sie können die Windows PowerShell- und Eingabeaufforderungsfenster schließen.
Öffnen Sie fast.txt. Die Protokolle werden in dieser Datei gespeichert.
Demonstration des Abwehransatzes
Die effektivste Abwehrmaßnahme für CVE-2020-1472 (ZeroLogon) ist die Installation der neuesten Windows-Sicherheitsupdates.
Schritte:
Öffnen Sie auf der Ziel-Maschine die Einstellungen-App.
Navigieren Sie zu Update und Sicherheit → Windows Update
Klicken Sie auf "Nach Updates suchen" und lassen Sie das System die neuesten Updates herunterladen und installieren.
Starten Sie die Maschine bei Bedarf neu.
Diese Updates wenden Microsofts Fix für die ZeroLogon-Sicherheitslücke an, indem sie die Verwendung sicherer Remoteprotokolle erzwingen und den Erzwingungsmodus standardmäßig auf Domänencontrollern aktivieren.
Hinweis zu Einschränkungen
Die in diesem Projekt demonstrierten Erkennungs- und Abwehransätze sind für Bildungszwecke in einer kontrollierten Laborumgebung konzipiert. Obwohl sie effektiv die Konzepte hinter CVE-2020-1472 (ZeroLogon) veranschaulichen, haben sie Einschränkungen und sind nicht vollständig für den Einsatz in realen Unternehmensumgebungen geeignet. Da es sich um ein Schulprojekt handelt, liegt der Fokus auf dem Lernen und Verstehen von Cybersicherheitstechniken und nicht auf der Implementierung produktionsreifer Lösungen.
Dieses Repository wurde ausschließlich zu Bildungszwecken erstellt.
Alle gezeigten Tools, Skripte und Techniken dienen dazu, Schwachstellen in der Cybersicherheit in einer kontrollierten Laborumgebung zu verstehen. Versuchen Sie nicht, die bereitgestellten Materialien auf Systemen oder Netzwerken zu verwenden, die Ihnen nicht gehören oder für die Sie keine ausdrückliche Berechtigung zum Testen haben.
Der Autor ist nicht verantwortlich für jeglichen Missbrauch der bereitgestellten Informationen.