CVE-2025-52694: SQL Injection in Advantech SaaS Composer
Questo repository contiene strumenti Proof-of-Concept (PoC) per CVE-2025-52694, una vulnerabilità critica di SQL Injection non autenticata che colpisce Advantech IoTSuite e prodotti IoT Edge.
Panoramica della vulnerabilità
Attributo
Dettagli
CVE ID
CVE-2025-52694
Vendor
Advantech
Prodotto
Prodotti IoTSuite e IoT Edge
Severità
Critica
Tipo di vulnerabilità
SQL Injection (CWE-89)
Endpoint interessato
/displays/{filename}.json?org_id=
Versioni interessate
IoTSuite SaaSComposer precedenti alla versione 3.4.15
IoTSuite Growth Linux docker precedenti alla versione V2.0.2
IoTSuite Starter Linux docker precedenti alla versione V2.0.2
IoT Edge Linux docker precedenti alla versione V2.0.2
IoT Edge Windows precedenti alla versione V2.0.2
Descrizione tecnica
La vulnerabilità esiste perché il parametro filename nel percorso URL viene concatenato in modo non sicuro direttamente in una query PostgreSQL.
Vettore d'attacco: Attaccanti non autenticati possono iniettare query impilate (stacked queries).
Meccanismo: Utilizzando funzioni come pg_sleep(), un attaccante può confermare la vulnerabilità tramite analisi temporale.
Impatto potenziale: Un exploit riuscito può consentire all'attaccante di estrarre l'intero database, modificare dati sensibili o potenzialmente ottenere Esecuzione di codice in remoto (RCE) a seconda dei privilegi del database.
Istruzioni per l'uso
Questo repository fornisce due metodi principali per test e verifica:
1. Script Python PoC (cve-2025-52694-poc.py)
Uno script standalone per eseguire un test di SQL Injection basato sul tempo.
--org: L'ID dell'Organizzazione (valore predefinito 1). Potrebbe essere necessario provare diversi valori (1-5) per trovare un contesto organizzativo valido.
2. Template Nuclei (cve-2025-52694.yaml)
Per scansioni automatiche su più target.
Esecuzione:
root@kitploit:~
nuclei -t cve-2025-52694.yaml -u <TARGET_URL>
Il template utilizza un attacco clusterbomb per iterare sui valori comuni di org_id.
Si ferma automaticamente al primo match positivo (ritardo della risposta ≥ 6s).
Rimedio
Applicare le patch: Installare immediatamente gli ultimi aggiornamenti di sicurezza forniti da Advantech.
Validazione degli input: Assicurarsi che il parametro filename sia adeguatamente sanificato o utilizzare query parametrizzate per prevenire la concatenazione SQL.
Dichiarazione di esclusione di responsabilità
Questo strumento è solo per scopi educativi e test di sicurezza autorizzati. L'accesso non autorizzato a sistemi informatici è illegale. L'autore non si assume alcuna responsabilità per eventuali usi impropri o danni causati da questo strumento.
Autore: Loi Nguyen Thang (HCMUTE Information Security Club).