
Proof-of-concept in Python per l'iniezione di comandi autenticata negli AP wireless Hikvision, che consente test di esecuzione remota di codice con endpoint e comandi personalizzabili.
Questo strumento è una proof‑of‑concept in Python per testare i punti di accesso wireless Hikvision per CVE‑2026‑0709, una vulnerabilità di command injection autenticata che può portare all'esecuzione remota di codice sui dispositivi interessati.
Solo per test di sicurezza e ricerca su sistemi di tua proprietà o per i quali sei esplicitamente autorizzato a effettuare valutazioni.
CVE‑2026‑0709 è una vulnerabilità autenticata: l'attaccante deve accedere con credenziali valide, quindi inviare una richiesta appositamente predisposta a un endpoint vulnerabile sul punto di accesso wireless Hikvision. Se il dispositivo è vulnerabile, l'input non sanificato viene passato al sistema operativo sottostante, consentendo l'esecuzione arbitraria di comandi con l'account di servizio del dispositivo.
Questo script:
Lo script è scritto come template: devi inserire il percorso reale dell'endpoint, il nome del parametro e la logica di login secondo l'avviso ufficiale del vendor o una proof‑of‑concept pubblica.
requestsInstalla le dipendenze:
pip install requests
Supponiamo che lo script sia salvato come hikvision_cve_2026_0709.py.
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 (obbligatorio): IP o nome host del punto di accesso target.
--port (opzionale): Porta target (predefinita: 80).
--https (flag): Usa HTTPS invece di HTTP.
-u, --user (obbligatorio): Nome utente per il login.
-p, --password (obbligatorio): Password per il login.
--cmd (opzionale): Comando da eseguire sul dispositivo (predefinito: id).
Lo script:
Costruirà l'URL di base da host, porta e schema (HTTP/HTTPS).
Autenticherà con le credenziali fornite.
Invierà un payload in cui un parametro contiene una sequenza di shell iniettata (ad esempio 127.0.0.1; id;).
Stamperà il codice di stato HTTP e il corpo della risposta.
Questo repository non codifica in modo rigido alcun endpoint o parametro specifico di Hikvision. Devi aggiornare lo script per corrispondere ai dettagli reali di CVE‑2026‑0709:
Funzione di autenticazione
In authenticate(...), sostituisci la logica di login segnaposto con quella reale:
Se il dispositivo utilizza un login basato su modulo, regola l'URL e i campi del modulo (ad es. /login, user, pwd).
Se utilizza l'autenticazione HTTP di base, potresti non aver bisogno di una richiesta di login separata; invece, configura la sessione per usare l'autenticazione di base.
Endpoint vulnerabile
In exploit_command_injection(...), imposta:
vuln_path al percorso effettivo (ad esempio, un endpoint API o diagnostico).
La chiave del parametro (ad esempio host, address, command) a quella vulnerabile.
Il metodo HTTP esatto (GET o POST) e il corpo/intestazioni come descritto nell'avviso.
Output del comando
A seconda di come si comporta il dispositivo:
La risposta potrebbe contenere direttamente l'output del comando.
Oppure potrebbe mostrare solo uno stato generico, e devi dedurre il successo tramite effetti collaterali (ad es., nuovo file, callback di rete).
Regola la tua logica di parsing di conseguenza se vuoi rilevare automaticamente il successo.
Leggi l'avviso ufficiale del vendor / il documento tecnico per CVE‑2026‑0709.
Identifica:
URL dell'endpoint (percorso).
Parametro vulnerabile.
Metodo di autenticazione richiesto.
Modifica lo script:
Aggiorna authenticate() con il percorso e i campi di login corretti.
Aggiorna exploit_command_injection() con il percorso e il nome del parametro corretti.
Esegui lo script in un laboratorio contro un dispositivo di test.
Controlla la risposta per prove di esecuzione del comando (ad es., output di id o uname -a).
Questa PoC è fornita a scopo educativo, di ricerca e di sicurezza difensiva. Non è un exploit o uno scanner di livello produttivo. Devi rivedere e testare attentamente il codice e seguire sempre le policy di sicurezza e i requisiti legali della tua organizzazione.