
CVE-Reproduktion: cve-2024-0012_9474-panos_authbypass_reproduction
| CVE | Beschreibung | CVSS |
|---|---|---|
| CVE-2024-0012 | PAN-OS Management-Interface Authentifizierungsumgehung | 9.3 |
| CVE-2024-9474 | PAN-OS Privilegieneskalation | 6.9 |
In einer Kette ermöglichen diese Schwachstellen eine nicht authentifizierte Remote-Codeausführung auf dem PAN-OS Management-Webinterface.
Beide wurden als Zero-Day aktiv in freier Wildbahn ausgenutzt und werden unter der Bezeichnung Operation Lunar Peek verfolgt. Die Forschung wurde ursprünglich von watchTowr veröffentlicht.
Das Palo Alto Networks PAN-OS Management-Webinterface ist von zwei kritischen Schwachstellen betroffen, die in Kombination einem Angreifer vollständigen Root-Zugriff ohne Authentifizierung ermöglichen:
Das Management-Webinterface validiert die Authentifizierung für bestimmte API- und PHP-Endpunkte nicht ordnungsgemäß. Durch Manipulation von HTTP-Anfragepfaden (z. B. Path-Traversal oder Doppelslash-Techniken) kann ein Angreifer geschützte Handler erreichen, die normalerweise eine gültige Sitzung erfordern. Dies gewährt effektiv nicht authentifizierten Zugriff auf die PHPRESTAPI und andere interne Endpunkte.
Die Grundursache liegt in den Nginx/Apache-Routingregeln, die bei bestimmten URI-Mustern keine Session-Prüfungen erzwingen, sodass Anfragen die Authentifizierungsmiddleware umgehen können.
Sobald der Angreifer authentifiziert ist (selbst als Nur-Lese- oder niedrig privilegierter Benutzer), liegt die Schwachstelle im PHP-Session-Serialisierungsmechanismus. Der session.save_path ist fehlkonfiguriert und der Session-Dateiname ist teilweise vom Benutzer kontrollierbar. Durch das Erstellen einer Session-ID, die Path-Traversal-Sequenzen enthält, kann ein Angreifer eine PHP-Session-Datei an einen beliebigen Speicherort schreiben (z. B. ../utils/webshell.php).
Da der Webserver als Root läuft, erbt die geschriebene Datei den Root-Besitzer, was dem Angreifer eine Root-Webshell verschafft.
| PAN-OS Version | Betroffen | Behoben in |
|---|---|---|
| 10.2 | < 10.2.12-h2 | 10.2.12-h2 |
| 11.0 | < 11.0.6-h1 | 11.0.6-h1 |
| 11.1 | < 11.1.5-h1 | 11.1.5-h1 |
| 11.2 | < 11.2.4-h1 | 11.2.4-h1 |
| 11.3 | Nicht betroffen | — |
| Cloud NGFW | Nicht betroffen | — |
Angreifer (nicht authentifiziert)
│
├─ CVE-2024-0012 ─────────────────────────────┐
│ Auth-Umgehung via manipulierter URI │
│ → Zugriff auf PHPRESTAPI-Endpunkt │
│ → Erstellen eines API-Schlüssels / Session │
│ mit niedrigen Berechtigungen │
└──────────────────────────────────────────────┘
│
├─ CVE-2024-9474 ─────────────────────────────┐
│ Verwende erhaltene Session / Schlüssel │
│ → Sende manipulierte PHP-Session-ID │
│ (mit Path Traversal) │
│ → Schreibe Session-Datei ins Webroot │
│ → Datei enthält PHP-Code (Webshell) │
└──────────────────────────────────────────────┘
│
▼
RCE als Root via Webshell
X-PAN- oder Cookie-basierten Session-ID, die ../-Traversal enthält, um eine PHP-Nutzlast in das webzugängliche Verzeichnis php/ zu schreiben./php/<shell>.php zu, um beliebige Befehle als Root auszuführen.Siehe exploit.py in diesem Verzeichnis für einen funktionsfähigen Proof-of-Concept, der beide CVEs kombiniert.