Skip to content
KitploitKITPLOIT
ToolsBlog
Log in
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
CVE-2026-22557-check — Sicher erkennen, ob ein UniFi Network Application controller anfällig für CVE-2026-22557 ist | Kitploit
Tools/GitHubGitHub/bishopfox/cve-2026-22557-check
AufklärungSchwachstellenanalyseExploitationWebanwendungs-ExploitationInformationsbeschaffungPenetrationstests
GitHubbishopfox/cve-2026-22557-check

CVE-2026-22557-check

Sicher erkennen, ob ein UniFi Network Application controller anfällig für CVE-2026-22557 ist

Repository anzeigen
15vor 4 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

CVE-2026-22557 Schwachstellenbewertungswerkzeug

Erkennen Sie sicher, ob ein UniFi Network Application Controller anfällig für CVE-2026-22557 ist, ohne Störungen zu verursachen. Siehe den vollständigen Bericht im Bishop Fox Blog.

Beschreibung

CVE-2026-22557 ist eine nicht authentifizierte Path-Traversal-Sicherheitslücke im Gast-Captive-Portal der UniFi Network Application, die es entfernten Angreifern ermöglicht, beliebige Dateien als Benutzer des Controller-Prozesses zu lesen (CVSS 10.0). Die Schwachstelle betrifft UniFi Network Application 10.1.85 und früher auf dem 10.1.x-Zweig sowie entsprechende frühere Versionen auf den Zweigen 10.2.x und 9.0.x. Ubiquiti hat Korrekturen in 10.1.89, 10.2.97 und 9.0.118 ausgeliefert (SAB-062).

Das Gästeportal rendert die Fehlerseite, indem es den page_error-Parameter aus der Anfrage liest und ihn wörtlich als relativen Pfad im Portal-Ressourcenlader verwendet, ohne Validierung. Wenn portal_customized: true für die angefragte Site gesetzt ist (diese Konfiguration erhält jedes gebrandete Captive-Portal, z. B. von Hotels, Einzelhandel oder Cafés), löst der Lader diesen Pfad gegen das Portalverzeichnis auf der Festplatte auf, und der Pfad kann dieses verlassen.

Dieses Werkzeug führt eine zerstörungsfreie Schwachstellenprüfung durch, indem es:

  1. Die gemeldete Version des Controllers von /status ausliest und mit den SAB-062-Korrekturlinien vergleicht.
  2. Bestätigt, dass das Gästeportal an der angegebenen URL ausgeliefert wird.
  3. Den page_error-Parameter auf /guest/<site>/wechat/sign mit ../-Tiefen 1-8 gegen einen Dateinamen mit zwei Zweigen abfragt, um festzustellen, ob der Traversal überhaupt ausgelöst wird.
  4. Wenn der Traversal ausgelöst wird, einen zusätzlichen Lesevorgang gegen eine nicht sensible Laufzeitkatalogdatei (firmware.json) durchführt, um festzustellen, ob der angepasste Portal-Dateisystemzweig aktiv ist.

Das Werkzeug fordert nur die Laufzeitkatalogdatei als Orakel für den aktiven Zweig an. Es liest keine Anmeldeinformationen, TLS-Material, Datenbankzustände oder Backups und schreibt keinen Dateiinhalt auf stdout oder die Festplatte. Nur das Urteil wird ausgegeben.

  • Anfällige Controller mit portal_customized: true auf der angefragten Site geben die Katalogdatei in der kalibrierten Tiefe zurück und bestätigen VULNERABLE.
  • Teilweise exponierte Controller mit einer anfälligen Version, aber portal_customized: false auf der angefragten Site lösen den Traversal im Kalibrierungsschritt aus, geben aber keinen Festplatteninhalt im Bestätigungsschritt zurück → PARTIALLY EXPOSED. Die Anwendungsbinärdatei ist immer noch anfällig; Patchen ist erforderlich, auch wenn diese Site nicht im ausnutzbaren Zustand ist.
  • Gepatchte Controller (10.1.89+ / 10.2.97+ / 9.0.118+) weisen den Traversal auf jeder Tiefe zurück → NOT VULNERABLE.
  • Nicht erreichbare Sites oder Verbindungen ergeben NOT EXPOSED.

Installation

git clone https://github.com/BishopFox/CVE-2026-22557-check
cd CVE-2026-22557-check

Python 3.9+ wird benötigt. Das Werkzeug verwendet nur die Python-Standardbibliothek, daher ist kein pip install-Schritt erforderlich.

Verwendung

Testen Sie einen UniFi Network Application Controller unter <TARGET>. Richten Sie das Werkzeug auf die URL, die die Weboberfläche des Controllers erreicht; der anfällige Handler wird sowohl auf dem Admin-Port (Standard 8443/TCP) als auch auf den dedizierten Gästeportal-Ports (8843, 8880) ausgeliefert.

python3 cve_2026_22557_check.py <BASE_URL> [--site NAME]

Der Standard-Site-Slug ist default. UniFi-Bereitstellungen mit mehreren konfigurierten Sites sollten das Werkzeug mit --site <name> für jede Site erneut ausführen. Ein Controller ist ausnutzbar, sobald irgendeine seiner Sites portal_customized: true hat.

Die folgenden Beispiele verwenden --brief für ein einzeiliges Ergebnis pro Host. Führen Sie es ohne --brief aus, um das vollständige Banner, den schrittweisen Fortschritt und einen Ergebnisblock mit empfohlenen Abhilfemaßnahmen zu erhalten.

Beispiel: Anfälliger Controller

Der Controller befindet sich in einer anfälligen Version und die Voraussetzung des angepassten Portals ist für die angefragte Site aktiv, sodass der nicht authentifizierte Lesepfad erreichbar ist.

$ python3 cve_2026_22557_check.py https://192.168.1.100:8443 --brief
[VULNERABLE]        https://192.168.1.100:8443 site=default

Beispiel: Teilweise exponierter Controller

Der Controller befindet sich in einer anfälligen Version, aber die angefragte Site hat portal_customized: true nicht aktiviert, sodass die Festplattenlese-Voraussetzung für diese Site nicht erfüllt ist. Die Anwendungsbinärdatei muss dennoch gepatcht werden; eine andere Site auf demselben Controller kann sich möglicherweise noch im ausnutzbaren Zustand befinden.

$ python3 cve_2026_22557_check.py https://192.168.1.100:8443 --brief
[PARTIAL]           https://192.168.1.100:8443 site=default

Beispiel: Gepatchter Controller

Der Controller befindet sich in einer behobenen Version (10.1.89, 10.2.97, 9.0.118 oder später), sodass der Traversal auf keiner angefragten Tiefe ausgelöst wird.

$ python3 cve_2026_22557_check.py https://192.168.1.200:8443 --brief
[NOT VULNERABLE]    https://192.168.1.200:8443 site=default

Optionen

--site NAME       UniFi site slug to probe (default: "default")
--max-depth N     maximum ../ traversal depth to try (default: 8)
--no-tls-recon    skip TLS certificate subject/SAN display
--no-color        disable ANSI color output (also honored: NO_COLOR env var)
--timeout N       per-request timeout in seconds (default: 20)
--brief           print a single-line result, no banner or steps

Exit-Codes: 0 VULNERABLE, 1 teilweise exponiert / nicht anfällig / nicht exponiert, 2 Transportfehler.

Voraussetzungen

Das Werkzeug kann nur dann ein VULNERABLE-Urteil abgeben, wenn die folgenden Bedingungen erfüllt sind:

  • Das Ziel läuft mit einer anfälligen UniFi Network Application-Version (10.1.85 oder früher auf dem 10.1.x-Zweig oder die entsprechenden früheren Punktversionen auf 10.2.x / 9.0.x).
  • Das Gästeportal ist unter der angegebenen URL erreichbar. Der /guest/*-Handler wird sowohl auf dem Admin-Port (8443) als auch auf den dedizierten Gästeportal-Ports (8843, 8880) ausgeliefert; das Werkzeug fragt nur die ihm gegebene URL ab.
  • Die angefragte Site hat portal_customized: true in ihrer guest_access-Einstellung, was die Voraussetzung für den Festplattenlese-Codepfad ist. Ein Controller mit mehreren Sites ist ausnutzbar, wenn irgendeine seiner Sites dies aktiviert hat.

Wenn eine Bedingung nicht erfüllt ist, fällt das Werkzeug auf ein konservativeres Urteil zurück. Ein PARTIALLY EXPOSED-Ergebnis bedeutet dennoch, dass die Anwendung anfällig ist und gepatcht werden muss; die angefragte Site setzt lediglich den Festplattenlesepfad nicht frei.

Abhilfe

Tool herunterladen