
Ein Skript, das dir die Zugangsdaten eines Pterodactyl-Panels liefert, das für CVE-2025-49132 anfällig ist.
/locales/locale.json mit den Query-Parametern locale und namespace möglich, beliebigen Code auszuführen, ohne authentifiziert zu sein. Mit der Fähigkeit, beliebigen Code auszuführen, könnte dies genutzt werden, um Zugriff auf den Server des Panels zu erhalten, Zugangsdaten aus der Konfiguration des Panels zu lesen, vertrauliche Informationen aus der Datenbank zu extrahieren, auf Dateien von Servern zuzugreifen, die vom Panel verwaltet werden, usw. Dieses Problem wurde in Version 1.11.11 behoben. Es gibt keine Software-Workarounds für diese Schwachstelle, aber die Verwendung einer externen Web Application Firewall (WAF) könnte helfen, diesen Angriff abzumildern.Der Angreifer sendet eine GET-Anfrage an /locales/locale.json. Wenn die Antwort dir eine JSON-Datei zurückgibt und die URL keinen Parameter hash= enthält, dann ist sie anfällig für CVE-2025-49132.
Um die Schwachstelle auszunutzen, musst du die Parameter locale= und namespace= gleichzeitig verwenden, um NUR PHP-DATEIEN zu lesen, und du erhältst eine JSON-Antwort mit den Variablen, die in der von dir ausgewählten PHP-Datei gespeichert sind.
Zum Beispiel: /locales/locale.json?locale=../../../pterodactyl&namespace=config/database
Um interessantere PHP-Dateien zum Lesen zu finden, kannst du dir das offizielle Pterodactyl-Repository ansehen ^^
Erhalte die Datenbank-Zugangsdaten mit dem Befehl: python3 CVE-2025-49132_PoC.py.py <url>
users erstellenAn diesem Punkt solltest du grundlegende Pentesting-Kenntnisse haben, um zu wissen, wie du eine Reverse-Shell erhältst.