I dispositivi Internet of Things (IoT), in particolare le telecamere IP di sorveglianza, rappresentano un elemento critico nelle architetture di rete moderne. La loro crescente diffusione ha parallelamente aumentato la superficie di attacco esposta, rendendo la sicurezza del firmware e la corretta configurazione imperative. Il presente articolo si concentra sull'analisi di un toolkit di penetration testing noto come "HikvisionExploiter" progettato per identificare e sfruttare in modo automatizzato le vulnerabilità note nelle telecamere IP Hikvision.
ATTENZIONE:
Danneggiare/violare un sistema informatico (anche da remoto) rappresenta un reato penale. Le informazioni contenute in questo articolo sono fornite esclusivamente a scopo didattico, informativo e di ricerca sulla sicurezza e vanno utilizzate solo per testare/verificare sistemi di cui si è titolari. Declino ogni responsabilità civile e penale derivante da un utilizzo non legale delle informazioni presentate in questo articolo a solo scopo didattico.
Architettura e Funzionalità del Toolkit di Analisi
Questo strumento di sicurezza, sviluppato in Python, è concepito per automatizzare le verifiche di sicurezza sulle telecamere di rete Hikvision, concentrandosi in particolare sugli endpoint non autenticati presenti in versioni firmware specifiche, come la Versione 3.1.3.150324, e sfruttando la ben nota vulnerabilità CVE-2021-36260.
La sua potenza risiede nella capacità di eseguire una serie di test complessi in modo sequenziale e multithreaded, offrendo ai security tester una visione rapida delle vulnerabilità dei dispositivi esposti.
Fasi di Esecuzione e Analisi
Il toolkit supporta la scansione di massa, leggendo elenchi di indirizzi IP e porte (da un file targets.txt). L'approccio multithread velocizza l'identificazione dei dispositivi potenzialmente vulnerabili.
- Verifica dell'Accesso Non Autenticato (Snapshot): In una fase iniziale, viene verificata la possibilità di accedere al feed video o alle snapshot in tempo reale senza autenticazione, indicando una potenziale violazione della privacy e un accesso improprio. Tale condizione può essere dovuta ad un grave errore di configurazione o una falla nel controllo degli accessi.
- Recupero e Decrittografia dei file di configurazione: Successivamente, lo strumento tenta di scaricare i file di configurazione del dispositivo. Se l'accesso ha successo, utilizza algoritmi noti come AES e XOR per decifrare questi file (utilizzando librerie come pycrypto). Dai dati decrittografati, spesso in formato XML, vengono estratti dettagli critici, quali:
- Credenziali utente (nomi utente e password hashing o in chiaro).
- Livelli di autorizzazione degli account.
- Informazioni di rete e configurazione del dispositivo. - Sfruttamento della Vulnerabilità Critica RCE (Remote Command Execution): Esegue un test mirato per confermare lo sfruttamento della CVE-2021-36260, provando l'esecuzione di comandi da remoto sul sistema operativo embedded della telecamera.
Prerequisiti e Configurazione dell'Ambiente di Test
- Ambiente Python: È richiesto Python 3.6 o superiore.
- Librerie Essenziali: L'installazione delle dipendenze è fondamentale. Queste sono generalmente specificate in un file requirements.txt e includono librerie come requests e pycrypto (per la gestione della decrittografia).
- FFmpeg (Opzionale): Sebbene non necessario per lo scanning di base, FFmpeg è richiesto per funzionalità avanzate, come l'ipotetica conversione automatica delle snapshot in un formato video continuo.
Analisi Dettagliata della Vulnerabilità CVE-2021-36260
- Impatto: L'esecuzione di codice con privilegi elevati (spesso root o admin) consente all'attaccante di assumere il controllo totale del dispositivo.
- Rilevanza: Questa falla ha interessato numerosi modelli (in particolare delle serie DS-2CD e DS-2DF) con firmware obsoleti. La sua gravità è testimoniata dall'inclusione nel catalogo KEV (Known Exploited Vulnerabilities) della CISA, indicando che è stata attivamente sfruttata in attacchi nel mondo reale.
Installazione
Per l’installazione di HikvisionExploiter
, una volta installato l’ambiente Python, si procede con la clonazione del repository e l'installazione delle
dipendenze:
git clone
https://github.com/HexBuddy/HikvisionExploiter.git
cd HikvisionExploiter
pip3 install -r requirements.txt
![]() |
| FIG 1 - Installazione di HikvisionExploiter |
Preparazione dell'Elenco dei Target
La prima fase richiede la creazione di un file semplice (plain text), come targets.txt, contenente l'elenco dei dispositivi da testare. Il formato standardizzato richiesto è IP:PORTA, ad esempio:
192.168.1.10:80
10.10.10.20:81
Questa preparazione garantisce che lo scanner operi solo sui sistemi per i quali è stata ottenuta una previa autorizzazione esplicita al testing.
Esecuzione dello Scanner Principale
L'esecuzione del modulo di controllo (checker.py) avvia la sequenza di test automatizzata:
python3 checker.py
![]() |
| FIG 2 - checker.py |
Questo processo non si limita a verificare la connettività, ma esegue attivamente i check sopra descritti: verifica l'accesso alle snapshot, tenta il download e la decrittografia della configurazione e, crucialmente, testa la presenza della vulnerabilità RCE (CVE-2021-36260). I risultati completi di ogni test sono meticolosamente archiviati in directory con timestamp (logs/IP_PORT_TIMESTAMP/) per la successiva analisi forense e di reportistica.
Come visibile in FIG 3, checker.py rileva se il dispositivo è vulnerabile e, oltre alle informazioni sul dispositivo (modello, serial number, versione firmware, ecc), viene rilevata anche la password di amministratore in chiaro.
![]() |
| FIG 3 - Dispositivo vulnerabile |
![]() |
| FIG 5 - Interfaccia web |
Shell Interattiva e Post-Exploitation
![]() |
| FIG 6 - Shell, modalità interattiva |
Tecniche di Identificazione Passiva dei Target
Strategie di Mitigazione e Difesa
- Aggiornamento del Firmware: La contromisura più critica è garantire che il firmware delle telecamere sia sempre aggiornato all'ultima versione fornita dal produttore. Tali aggiornamenti contengono le patch di sicurezza per vulnerabilità come la CVE-2021-36260.
- Segmentazione di Rete: Le telecamere IP dovrebbero essere isolate in una VLAN dedicata (ad esempio, una rete IoT o di sorveglianza) e separate dalla rete aziendale principale. L'accesso dall'esterno dovrebbe essere limitato tramite ACL (Access Control Lists) o Firewall che permettano solo il traffico strettamente necessario.
- Disabilitazione di Servizi Non Necessari: Disabilitare tutti i servizi di rete e gli endpoint che non sono essenziali per il funzionamento della telecamera riduce la superficie di attacco.
- Monitoraggio e Hardening: Utilizzare strumenti di monitoraggio del traffico di rete (IDS/IPS) per rilevare pattern di attacco noti e tentativi di sfruttamento. Inoltre, implementare una politica di password robuste e cambiare le credenziali di default.
- Utilizzo di Dorking/Scanner di Sicurezza: I tester possono utilizzare strumenti come Shodan o template come quelli di Nuclei (come menzionato nello strumento analizzato) per identificare proattivamente i propri dispositivi esposti con firmware obsoleto, replicando l'approccio degli attacker.







Nessun commento:
Posta un commento
I messaggi sono soggetti a moderazione da parte dell'amministratore prima della loro pubblicazione.