
PANW NGFW CVE-2024-0012
Dieses Python-Skript prüft das Vorhandensein einer kritischen Authentifizierungs-Bypass-Schwachstelle in der Palo Alto Networks PAN-OS Management-Weboberfläche, die als CVE-2024-0012 identifiziert wurde. Die Schwachstelle ermöglicht es einem nicht authentifizierten Angreifer, administrative Berechtigungen zu erlangen, die Konfiguration zu manipulieren oder andere Schwachstellen zur Rechteausweitung auszunutzen.
Zero Touch Provisioning und window.Pan für eine genaue Erkennung.-t oder eine Datei mit Zielen mit -f an.-d oder über eine Benutzereingabe im interaktiven Modus an.-e oder --explanation, um eine detaillierte, benutzerfreundliche Beschreibung von CVE-2024-0012 und CVE-2024-9474 auszugeben.rich, um Ergebnisse in einem sauberen, gut lesbaren Format anzuzeigen.requests für HTTP-Anfragenrich für formatierte Ausgabepip install -r requirements.txt
Um ein einzelnes Ziel interaktiv zu prüfen:
python main.py
Geben Sie einen einzelnen FQDN oder eine IP-Adresse an:
python main.py -t 127.0.0.1
Geben Sie eine Datei an, die eine Liste von Zielen enthält (eine pro Zeile):
python main.py -f targets.txt
Verwenden Sie das Flag -d oder --details, um automatisch detaillierte Ergebnisse für alle verwundbaren Ziele auszugeben:
python main.py -t 127.0.0.1 -d
Verwenden Sie das Flag -e oder --explanation, um eine detaillierte Erklärung der Schwachstellen CVE-2024-0012 und CVE-2024-9474 auszugeben:
python main.py -t 127.0.0.1 -d -e (or -de)
[!] Target -appears- vulnerable!
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
┃ Key ┃ Value ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┩
┃ URL ┃ https://127.0.0.1/php/ztp_gate.php/.js.map ┃
┃ Status Code ┃ 200 ┃
┃ Headers ┃ {"Date": "Wed, 20 Nov 2024 15:29:31 GMT", ... ┃
┃ Markers Found ┃ ...<title>Zero Touch Provisioning</title>... ┃
┃ ┃ ...window.Pan = window.Pan || {};... ┃
└─────────────────────────────┴──────────────────────────────────────────────────────────┘
[+] Target does not appear to be vulnerable.
Message: No matching conditions met.
Am Ende des Scans listet eine Zusammenfassungstabelle alle Ziele und deren Status auf:
┏━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━┓
┃ Target ┃ Status ┃
┡━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━┩
┃ 127.0.0.1 ┃ Vulnerable ┃
┃ example.com ┃ Not Vulnerable ┃
└───────────────────────┴─────────────────┘
Wenn das Flag -e oder --explanation verwendet wird:
CVE-2024-0012 Explained
CVE-2024-0012 is an authentication bypass vulnerability. This means attackers can skip the login process and access sensitive parts of a system without needing a username or password. In Palo Alto Networks’ PAN-OS, this vulnerability allows attackers to trick the system by sending specially crafted HTTP GET requests. These requests include a header called `X-PAN-AUTHCHECK`, which tells the system whether or not authentication is required. If this header is set to `off`, the system mistakenly grants access to restricted areas without checking if the person is logged in.
This vulnerability can be exploited together with CVE-2024-9474, a privilege escalation vulnerability, to gain full root access to the device. Once attackers achieve root access, they can control the firewall, steal sensitive data, or disable security features.
If this vulnerability is confirmed, patch the affected system as soon as possible to prevent exploitation. Additionally, restrict access to the management interface by IP whitelisting or using a dedicated management network.
[bold red]Error:[/bold red] HTTPSConnectionPool(host='127.0.0.1', port=443): Max retries exceeded with URL: /php/ztp_gate.php/.js.map (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x...>: Failed to establish a new connection: [Errno 11001] getaddrinfo failed'))
--target oder --file angegeben wird, fordert das Skript zur interaktiven Eingabe auf.-e bietet eine informative Übersicht über die Schwachstellen für Benutzer, die mehr Kontext benötigen.Dieses Skript wird unter der MIT-Lizenz veröffentlicht. Details finden Sie in der Datei LICENSE.
Dieses Skript wird „wie besehen“ ohne jegliche Gewährleistung bereitgestellt. Verwendung auf eigene Gefahr. Der Autor ist nicht verantwortlich für Schäden, die durch die Nutzung dieses Tools entstehen.
Dieses Skript wurde von der brillanten Arbeit des watchTowr-Teams inspiriert, dessen ursprüngliche Nuclei-YAML-Vorlage für CVE-2024-0012 als Grundlage für diese Python-Implementierung diente. Ihre Hingabe, kritische Sicherheitslücken zu identifizieren und zu beheben, setzt weiterhin einen hohen Standard in der Cybersicherheits-Community.