C'è una nuova categoria di bersagli che gli attaccanti stanno imparando a colpire con entusiasmo: gli strumenti no-code per costruire applicazioni di intelligenza artificiale. L'ultimo esempio è Flowise, popolare piattaforma open source che permette, con un editor a nodi drag-and-drop, di assemblare chatbot e agenti basati su LLM. La CVE-2026-41264 — un'esecuzione di codice remoto senza autenticazione, punteggio CVSS 9.2 — mostra bene perché questi ambienti richiedono le stesse attenzioni di qualsiasi server esposto su Internet, se non di più.

Cosa è successo

La vulnerabilità, scoperta dalla Zero Day Initiative di Trend Micro, vive dentro il nodo "CSV Agent" di Flowise, la funzione che consente di interrogare in linguaggio naturale i dati di un file CSV. Dietro le quinte il nodo costruisce un prompt, lo invia a un LLM e ne fa generare uno script Python con pandas, che viene poi eseguito in un ambiente pyodide sul server.

Il problema è che quello script non viene eseguito in una sandbox reale. L'unica barriera è un elenco di "pattern proibiti" (una blocklist di espressioni regolari che dovrebbe impedire import, exec, open, os, subprocess e simili). Ma una blocklist incompleta è, per definizione, aggirabile. I ricercatori hanno mostrato che basta una riga come import pandas as np, os as pandas per importare il modulo os sotto mentite spoglie e poi invocare comandi di sistema con pandas.system(...). Attraverso una tecnica di prompt injection, un attaccante non autenticato può convincere l'LLM a produrre proprio quel tipo di codice, ottenendo l'esecuzione di comandi arbitrari con i privilegi dell'utente che esegue il server.

Sono interessate le versioni di Flowise dalla 1.3.0 alla 3.0.13; la correzione è nella 3.1.0. Non si tratta più di teoria: l'11 luglio 2026 Rapid7 ha rilasciato un modulo Metasploit dedicato (multi/http/flowise_auth_rce_cve_2026_41264), che abbassa drasticamente la barriera d'ingresso e rende lo sfruttamento accessibile anche ad attaccanti poco sofisticati.

Il vero tema: la blocklist come modello di sicurezza sbagliato

Vale la pena soffermarsi sul tipo di errore, perché si ripeterà. La difesa di Flowise si basava sull'enumerare tutto ciò che è pericoloso e vietarlo. È lo stesso approccio, storicamente fallimentare, dei filtri antimalware basati su firme o delle sanitizzazioni fatte con blacklist di parole. Il difensore deve prevedere ogni singola variante malevola; all'attaccante basta trovarne una non prevista.

Quando in mezzo c'è un LLM la situazione peggiora: il modello è una macchina progettata per generare testo in infiniti modi diversi, quindi produrrà con naturalezza formulazioni che nessuna blocklist aveva anticipato. La lezione, valida ben oltre Flowise, è che il codice generato da un modello va trattato come input non fidato ed eseguito in un isolamento reale (container effimeri, sandbox WASM con permessi negati per default, assenza di rete e di filesystem), non filtrato con un elenco di parole vietate.

Cosa significa per le aziende italiane

Molte aziende italiane, incluse PMI e team di innovazione, stanno sperimentando in questi mesi proprio strumenti come Flowise, Langflow o n8n per prototipare rapidamente assistenti interni e automazioni con l'IA. Sono nati per il prototipo, ma spesso finiscono esposti su Internet "per fare una demo veloce" e restano lì, dimenticati, con dentro chiavi API di modelli a pagamento e connessioni a database aziendali.

Un server Flowise compromesso non è solo un problema di quel container: significa esecuzione di codice nella rete interna, furto delle API key (con relativi costi di consumo LLM addossati alla vittima) e un possibile trampolino verso i dati collegati ai flussi. Non è un caso isolato — nei mesi scorsi Langflow è stata sfruttata in appena 20 ore dalla pubblicazione dell'avviso — ma un pattern ormai ricorrente: gli endpoint AI esposti sono diventati un bersaglio di prima scelta.

Sul piano normativo, se questi flussi trattano dati personali (cronologie di chat, ticket dei clienti, documenti interni) rientrano a pieno titolo nel GDPR: una RCE che li espone è una violazione da valutare per la notifica al Garante entro 72 ore, e per i soggetti NIS2 va considerata anche la notifica al CSIRT Italia. Il fatto che lo strumento fosse "solo un esperimento" non attenua gli obblighi.

Cosa fare subito

  • Aggiornare Flowise alla versione 3.1.0 o successiva, dove il nodo CSV Agent è stato corretto.
  • Verificare che nessuna istanza di Flowise (porta 3000/TCP) sia raggiungibile da Internet: metterla dietro VPN o reverse proxy con autenticazione forte.
  • Censire tutti gli strumenti no-code/low-code per l'IA usati in azienda, anche quelli avviati da singoli team senza passare dall'IT (shadow IT).
  • Ruotare le API key e le credenziali configurate in flussi potenzialmente esposti e applicare privilegi minimi ai token dei modelli.
  • Isolare gli ambienti che eseguono codice generato da LLM in container effimeri senza accesso a rete interna e filesystem sensibili.
  • Trattare per principio ogni output di un LLM come input non fidato: mai eseguirlo direttamente senza sandbox reale.

La comodità del drag-and-drop non cambia la sostanza: se uno strumento esegue codice e ascolta su una porta, è un server, e va protetto come tale.