// 1 CRITICAL · 5 ZERO-DAY · 10 CVE · 11 EXPLOIT · 1 ADVISORY NELLE ULTIME 24H
ZDI-26-546 svela una falla critica nella piattaforma low-code Flowise. Il componente Airtable_Agent esegue codice Python senza validare input utente, permettendo RCE

ZDI-26-546 è diventata pubblica l'11 agosto 2026. L'advisory del Trend Micro Zero Day Initiative descrive una vulnerabilità di esecuzione remota di codice arbitrario nella piattaforma low-code Flowise, popolare tra sviluppatori e aziende per costruire workflow AI e LLM. Il punteggio CVSS è 9.8: critico. Non è richiesta autenticazione per l'exploit. La finestra di esposizione tra segnalazione al vendor e disclosure pubblica supera i 110 giorni.

Punti chiave
  • ZDI-26-546 (CVE-2026-69264) colpisce il metodo run della classe Airtable_Agent in Flowise con RCE pre-autenticazione.
  • La causa è mancata validazione di una stringa controllata dall'attaccante prima dell'esecuzione di codice Python dinamico.
  • Il meccanismo tecnico sfrutta Pyodide con js bridge verso globalThis, esponendo eval e child_process per breakout da sandbox.
  • Flowise ha rilasciato un aggiornamento correttivo; il CVE Record indica versione 3.1.3 come fix, ma resta un possibile disallineamento con la componente Airtable_Agent specifica.

Il motore nascosto: da interfaccia drag-and-drop a esecuzione codice arbitrario

Flowise permette di assemblare workflow AI trascinando blocchi visivi. Sotto l'interfaccia, però, gira un motore di esecuzione dinamica. Il componente Airtable_Agent — uno dei nodi predefiniti per integrare database Airtable nei flussi — elabora query generando ed eseguendo codice Python in runtime.

Secondo l'advisory ZDI, il difetto specifico risiede nel metodo run di questa classe. La stringa fornita dall'utente viene interpolata direttamente nel codice Python senza validazione preventiva. Un attaccante remoto può iniettare payload arbitrari che il motore eseguirà nel contesto dell'account di servizio.

Questo pattern — esecuzione dinamica di codice con input esterno non sanificato — è classico, ma la sua collocazione dentro una piattaforma low-code amplifica il rischio. L'utente finale che trascina un nodo Airtable nel canvas non ha visibilità sul sottosistema di esecuzione. L'amministratore di sistema, spesso, non si aspetta che un agent di integrazione database esegua codice Python con privilegi di processo.

Il breakout dalla sandbox: Pyodide, js bridge e primitive pericolose

Il record CVE-2026-69264, pubblicato su cve.org, aggiunge un livello di dettaglio sul meccanismo di exploit. Pyodide — l'interprete Python compilato in WebAssembly usato da Flowise — viene caricato con il js bridge predefinito verso globalThis. In ambiente Node.js, questo bridge espone primitive JavaScript pericolose: eval, dynamic import, e accesso a moduli built-in come child_process e fs.

"This vulnerability allows remote attackers to execute arbitrary code on affected installations of Flowise. Authentication is not required to exploit this vulnerability." — ZDI Advisory ZDI-26-546

L'attaccante rompe il literal string Python, passa una stringa JavaScript a js.eval, importa dinamicamente moduli Node e ottiene esecuzione a livello sistema operativo. La sandbox Python diventa un mero ostacolo formale.

Va notato un limite del dossier: il record CVE descrive nel testo una vulnerabilità in CSVAgent (non Airtable_Agent), pur essendo associato al medesimo identificatore CVE-2026-69264. Questo disallineamento, rilevato nella fonte primaria cve.org, impedisce di affermare con certezza che la versione 3.1.3 corretta indicata nel record si riferisca alla stessa componente Airtable_Agent dell'advisory ZDI. La convergenza sul meccanismo Pyodide/js bridge è chiara; la corrispondenza versione-componente meno.

Timeline e finestra di esposizione: oltre 110 giorni tra report e patch

La vulnerabilità è stata segnalata a Flowise il 22 aprile 2026. La disclosure pubblica coordinata è avvenuta l'11 agosto 2026: un intervallo di circa 112 giorni. Durante questo periodo, installazioni non aggiornate sono rimaste esposte a un attacco che non richiede credenziali, token, o interazione umana.

Flowise ha emesso un aggiornamento correttivo, come confermato testualmente dall'advisory: "Flowise has issued an update to correct this vulnerability." Il dossier non specifica quali versioni precedenti fossero vulnerabili, né quante installazioni siano esposte su internet. La piattaforma è distribuita tipicamente via Docker o Node.js, spesso su porte standard accessibili per servizi di prediction e API.

Cosa fare adesso

Le azioni prioritarie derivano direttamente dai fatti verificati nel dossier:

  • Verificare la presenza di istanze Flowise in esecuzione, con particolare attenzione ai nodi Airtable_Agent abilitati nei workflow.
  • Consultare l'advisory ZDI-26-546 e il record CVE-2026-69264 per confrontare la versione installata con la 3.1.3 indicata come correttiva nel database ufficiale.
  • Ispezionare i log di esecuzione del processo Flowise per richieste anomale al metodo run dell'agent con payload sospetti in stringhe di input.
  • Valutare la rimozione temporanea del nodo Airtable_Agent dai flussi produttivi fino a verifica completata dell'aggiornamento, dato che l'exploit non richiede autenticazione.

Il dossier non documenta exploit attivi in-the-wild né proof-of-concept pubblici al di fuori dell'advisory. Questo non diminuisce la gravità: la bassa barriera di attacco (nessuna autenticazione, payload semplice via stringa) rende la vulnerabilità riproducibile da attori con competenze minime una volta analizzata la logica del componente.

Perché questa RCE cambia il giudizio sul low-code AI

Il problema non è tecnico in senso stretto: è architetturale. Le piattaforme low-code promettono astrazione, ma spesso implementano quell'astrazione con motori di esecuzione dinamica completi — Python, JavaScript, WASM — che ereditano la superficie d'attacco di un runtime tradizionale senza ereditarne le contromisure. L'utente finale non scrive codice, ma il codice viene generato ed eseguito ugualmente.

Flowise non è un'eccezione isolata. L'ecosistema AI/LLM sta popolandosi di strumenti simili: Langflow, Dify, altri orchestratori visivi. Ciascuno nasconde sotto il canvas un motore di esecuzione con privilegi spesso eccessivi, esposto a internet per comodità di integrazione. ZDI-26-546 dimostra che il punto di ingresso può essere un nodo terzo — Airtable_Agent — non il core del prodotto, e che la sandbox (Pyodide) può essere aggirata con primitive documentate.

La lezione, qui, è che la valutazione del rischio di queste piattaforme non può fermarsi all'interfaccia utente. Serve mappare ogni percorso di esecuzione dinamica, ogni bridge tra linguaggi, ogni esposizione di globalThis o equivalente. Il low-code AI richiede audit di sicurezza con la stessa profondità del codice scritto a mano — forse di più, perché l'oscuramento è intenzionale.

Le informazioni sono state verificate sulle fonti citate e aggiornate al momento della pubblicazione.

Fonti


Fonti e riferimenti
  1. zerodayinitiative.com
  2. cve.org
  3. trendmicro.com