
Exploit für CVE-2024-49112, eine kritische Windows-LDAP-RCE-Schwachstelle, die über manipulierte Netlogon- und LDAP-Interaktionen einen Absturz auslöst.
Ein Exploit für CVE-2024-49112, gemeldet von Yuki Chen (@guhe120). Eine Schwachstelle im Windows Lightweight Directory Access Protocol (LDAP).
Erstellt von SafeBreach Labs (veröffentlicht am 1. Januar 2025). Die vollständige technische Analyse der Schwachstelle und wie wir sie ausgenutzt haben, finden Sie im Blogbeitrag hier
CVE-2024-49112 ist eine kritische Schwachstelle im Windows-LDAP-Client, die laut Microsoft Remote-Codeausführung ermöglicht. Dieser Exploit nutzt die Schwachstelle aus, um Ziel-Windows-Server-Systeme zum Absturz zu bringen, indem er mit deren Netlogon Remote Protocol (NRPC) und dem LDAP-Client interagiert.
https://github.com/user-attachments/assets/1cbda4a9-943a-4e07-a95a-b20e45863ec3
Abhängigkeiten installieren:
Stellen Sie sicher, dass alle erforderlichen Python-Pakete installiert sind. Sie können sie mit pip und der bereitgestellten Datei requirements.txt installieren:
pip install -r requirements.txt
Den Exploit konfigurieren:
target_ip: IP-Adresse des Zielsystems.port: TCP-Port für die RPC-Kommunikation (Standard: 49664).listen_port: UDP-Port, auf dem der Exploit-Server lauscht (Standard: 389). Wenn nicht geändert, muss das Tool mit Administrator- oder Root-Rechten ausgeführt werden.domain_name: Ein Domainname im Internet, der dem Angreifer gehört. Diese Domain muss über zwei DNS-SRV-Einträge verfügen. (SRV-Einträge ordnen eine Domain einem Port und einer anderen Domain zu):
domain_name -> listen_port Hostname des Angreifer-Rechnersdomain_name -> listen_port Hostname des Angreifer-RechnersHostname des Angreifer-Rechners funktioniert unter der Annahme, dass der Zielserver den Angreifer-Rechner über NBNS anhand seines Hostnamens finden kann. Anstelle des Hostnamens des Angreifers kann dieser Wert durch einen Domainnamen im Internet ersetzt werden, der auf die IP eines bösartigen LDAP-Servers zeigt, der die Schwachstelle ausnutzt.account: Kontoname-Parameter (Standard: Administrator).site_name: Standortname-Parameter (Standard: leere Zeichenfolge).python LdapNightmare.py <target_ip> --domain-name <domain_name> [Optionen]
Beispiel:
python LdapNightmare.py 192.168.1.100 --domain-name example.com
Startet den Exploit-Server:
Das Skript startet einen asynchronen LDAP-Server, der auf eingehende Verbindungen auf dem angegebenen UDP-Port lauscht.
Ruft DsrGetDcNameEx2 auf:
Das Skript ruft die Funktion DsrGetDcNameEx2 über das Netlogon Remote Protocol auf, um den Zielserver dazu zu bringen, eine LDAP-Abfrage an den Angreifer zu senden.
Löst die Schwachstelle aus:
Durch das Senden einer speziell konstruierten Antwort löst der Exploit die Schwachstelle CVE-2024-49112 aus, wodurch der Zielserver zum Absturz gebracht wird.
| Or Yair | Shahak Morag | |
|---|---|---|
| Or Yair | Shahak Morag | |
| @oryair1999 | @shahakmo |