
Python-PoC für authentifizierte Command Injection in Hikvision-WLAN-Access-Points, die Remote-Code-Ausführungstests mit anpassbaren Endpunkten und Befehlen ermöglicht.
Dieses Tool ist ein Python-Proof-of-Concept zum Testen von Hikvision-Wireless-Access-Points auf CVE-2026-0709, eine authentifizierte Command-Injection-Schwachstelle, die auf betroffenen Geräten zur Remote-Codeausführung führen kann.
Nur für Sicherheitstests und Forschung an Systemen, die Ihnen gehören oder für die Sie ausdrücklich autorisiert sind.
CVE-2026-0709 ist eine authentifizierte Schwachstelle: Der Angreifer muss sich mit gültigen Anmeldedaten anmelden und anschließend eine speziell präparierte Anfrage an einen verwundbaren Endpunkt des Hikvision-Wireless-AP senden. Wenn das Gerät verwundbar ist, werden nicht bereinigte Eingaben an das zugrunde liegende Betriebssystem weitergegeben, was die Ausführung beliebiger Befehle unter dem Dienstkonto des Geräts ermöglicht.
Dieses Skript:
Das Skript ist als Vorlage geschrieben: Sie müssen den tatsächlichen Endpunktpfad, den Parameternamen und die Anmeldelogik gemäß der offiziellen Herstellerberatung oder einem öffentlichen Proof-of-Concept ausfüllen.
requestsAbhängigkeiten installieren:
pip install requests
Angenommen, das Skript ist als hikvision_cve_2026_0709.py gespeichert.
python hikvision_cve_2026_0709.py \
--host 192.168.1.50 \
--port 80 \
--user admin \
--password MyStrongPassword \
--cmd "id"
python hikvision_cve_2026_0709.py \
--host ap.example.local \
--port 443 \
--https \
--user admin \
--password MyStrongPassword \
--cmd "uname -a"
--host (erforderlich): IP oder Hostname des Ziel-AP.
--port (optional): Zielport (Standard: 80).
--https (Flag): HTTPS anstelle von HTTP verwenden.
-u, --user (erforderlich): Benutzername für die Anmeldung.
-p, --password (erforderlich): Passwort für die Anmeldung.
--cmd (optional): Befehl, der auf dem Gerät ausgeführt werden soll (Standard: id).
Das Skript wird:
Die Basis-URL aus Host, Port und Schema (HTTP/HTTPS) erstellen.
Sich mit den angegebenen Anmeldedaten authentifizieren.
Eine Nutzlast senden, bei der ein Parameter eine injizierte Shell-Sequenz enthält (z. B. 127.0.0.1; id;).
Den HTTP-Statuscode und den Antworttext ausgeben.
Dieses Repository kodiert keinen Hikvision-spezifischen Endpunkt oder Parameter fest. Sie müssen das Skript aktualisieren, damit es den tatsächlichen Details von CVE-2026-0709 entspricht:
Authentifizierungsfunktion
Ersetzen Sie in authenticate(...) die Platzhalter-Anmeldelogik durch die echte:
Wenn das Gerät eine formularbasierte Anmeldung verwendet, passen Sie die URL und die Formularfelder an (z. B. /login, user, pwd).
Wenn es HTTP-Basisauthentifizierung verwendet, benötigen Sie möglicherweise keine separate Anmeldeanfrage; konfigurieren Sie stattdessen die Sitzung für die Verwendung der Basisauthentifizierung.
Verwundbarer Endpunkt
Setzen Sie in exploit_command_injection(...):
vuln_path auf den tatsächlichen Pfad (z. B. einen API- oder Diagnose-Endpunkt).
Den Parameterschlüssel (z. B. host, address, command) auf den, der verwundbar ist.
Die genaue HTTP-Methode (GET oder POST) sowie Body/Header wie in der Beratung beschrieben.
Befehlsausgabe
Je nachdem, wie sich das Gerät verhält:
Die Antwort kann die Befehlsausgabe direkt enthalten.
Oder sie zeigt nur einen allgemeinen Status, und Sie müssen den Erfolg über Nebeneffekte ableiten (z. B. neue Datei, Netzwerk-Callback).
Passen Sie Ihre Parsing-Logik entsprechend an, wenn Sie den Erfolg automatisch erkennen möchten.
Lesen Sie die offizielle Herstellerberatung / den technischen Bericht für CVE-2026-0709.
Identifizieren Sie:
Endpunkt-URL (Pfad).
Verwundbaren Parameter.
Erforderliche Authentifizierungsmethode.
Bearbeiten Sie das Skript:
Aktualisieren Sie authenticate() mit dem korrekten Anmeldepfad und den korrekten Feldern.
Aktualisieren Sie exploit_command_injection() mit dem korrekten Pfad und Parameternamen.
Führen Sie das Skript in einem Labor gegen ein Testgerät aus.
Überprüfen Sie die Antwort auf Hinweise auf Befehlsausführung (z. B. Ausgabe von id oder uname -a).
Dieser PoC wird für Bildungs-, Forschungs- und defensive Sicherheitszwecke bereitgestellt. Es handelt sich nicht um einen produktionsreifen Exploit oder Scanner. Sie sollten den Code gründlich überprüfen und testen und stets die Sicherheitsrichtlinien und gesetzlichen Anforderungen Ihrer Organisation befolgen.