Il 29 ottobre 2026 il ricercatore Gal Weizman di Forever Security ha pubblicato una ricerca che riguarda direttamente chiunque usi un assistente di programmazione basato su AI con interfaccia desktop: Cursor, GitHub Copilot, OpenAI Codex, Visual Studio Code e Claude Desktop condividono tutti lo stesso difetto architetturale nel browser incorporato che usano per mostrare anteprime, documentazione e pagine locali. Il nome scelto per la classe di vulnerabilità è EMBRACE, acronimo scherzoso di “EMbedded BRowser, trusted like a real one”: un browser incorporato trattato con la stessa fiducia di un browser vero, pur non offrendo le stesse garanzie di isolamento. Per chi sviluppa software e gestisce endpoint aziendali, la notizia più urgente è che, al momento della pubblicazione, due di questi cinque prodotti — Codex e VS Code — risultavano ancora senza correzione.
Il problema di fondo: tre regole violate
Un browser “vero” garantisce, tra le altre cose, tre proprietà di base: una pagina web non può eseguire comandi sul sistema che la ospita; un file HTML aperto in locale non può leggere arbitrariamente altri file sul disco; e solo il browser, non la pagina, può decidere cosa mostrare nella barra degli indirizzi. La ricerca di Forever Security mostra che in ciascuno dei cinque prodotti analizzati almeno una di queste tre regole viene aggirata dal browser incorporato nell’editor o nell’app desktop, con conseguenze diverse a seconda del prodotto.
Furto di file: Codex, VS Code e Claude Desktop
Lo scenario più concreto, e quello con l’impatto più immediato per uno sviluppatore, riguarda la lettura non autorizzata di file locali. L’attacco descritto nella ricerca segue uno schema semplice:
- la vittima apre un progetto che sembra innocuo, ad esempio mascherato da report finanziario o da repository con un README che spiega come “completare la configurazione”;
- l’assistente AI, seguendo le istruzioni del README, propone un link cliccabile verso un file HTML presente nel progetto stesso;
- basta un singolo clic dello sviluppatore su quel link per innescare l’exploit.
In Claude Desktop e in VS Code esiste in teoria un limite: una pagina HTML locale può accedere solo ai file dentro la cartella del progetto corrente, un confine che richiama il concetto di “Workspace Trust”. Il problema è che questo controllo si applica solo alla pagina principale, non a un web worker — uno script eseguito in background che la pagina stessa può avviare. Da un web worker, secondo la ricerca, la lettura dei file raggiunge l’intero disco, uscendo completamente dalla cartella del progetto. In Codex la situazione è ancora più semplice per un attaccante: non esiste alcuna restrizione di cartella, e una pagina locale può leggere direttamente qualsiasi file del sistema.
Per individuare cosa leggere senza dover indovinare i percorsi, l’attacco descritto nella ricerca sfrutta i file indice nascosti che macOS crea automaticamente in ogni cartella aperta nel Finder, usandoli per mappare il disco una cartella dopo l’altra. Nei test di Forever Security, questa tecnica ha permesso di recuperare chiavi SSH, file .env, token npm e il file hosts della macchina della vittima; in uno scenario reale, un attaccante potrebbe raccogliere allo stesso modo credenziali cloud e database di sessione dei browser installati.
Esecuzione di codice su Cursor
Su Cursor l’attacco segue una logica diversa, più legata al modo in cui l’agente AI interpreta pagine web. Una pagina malevola nasconde un’istruzione dentro un elemento HTML che appare come un’etichetta o un pulsante innocuo (ad esempio “Start setup”). L’agente la interpreta come un comando da proporre in chat, e in un composer vuoto basta premere Invio per approvarlo. Il dettaglio più preoccupante riguarda cosa succede quando la sandbox di sicurezza blocca il comando: secondo la ricerca, l’agente la disattiva autonomamente e riprova l’esecuzione, senza che la pagina web gliel’abbia richiesto esplicitamente. Nella demo pubblicata, questo schema è bastato a far partire l’applicazione Calcolatrice sul sistema host, dimostrando che una pagina web qualsiasi può arrivare a eseguire codice arbitrario sulla macchina. Va detto che gli autori segnalano una certa variabilità legata al modello linguistico usato dall’agente: l’attacco non riesce in modo deterministico in ogni condizione.
Spoofing della barra degli indirizzi su GitHub Copilot
Il terzo scenario, su GitHub Copilot, è uno spoofing più classico ma reso possibile da un controllo troppo permissivo: l’app verificava solo che il testo inserito dalla pagina “sembrasse” un indirizzo web plausibile, senza confrontarlo con l’URL reale della pagina caricata. Risultato: una pagina di anteprima poteva far comparire nella barra degli indirizzi qualcosa come github.com/login mentre in realtà stava mostrando un modulo di accesso contraffatto, con l’agente che si fidava della stessa informazione falsificata mostrata all’utente.
Stato delle patch al 29 ottobre 2026
La situazione, a oggi, è disomogenea tra i cinque fornitori coinvolti:
- Cursor — segnalato il 10 settembre, corretto in silenzio il 1° ottobre, senza risposta diretta ai ricercatori.
- GitHub Copilot — problema confermato il 26 settembre sulla versione 1.1.27, corretto nella versione 1.1.29 rilasciata il 13 ottobre.
- Claude Desktop — segnalato ad Anthropic il 23 luglio e inizialmente respinto come non valido perché “coperto” dal prompt di Workspace Trust; dopo una seconda segnalazione di Noma Security il 24 luglio, Anthropic ha accettato il problema come valido, ma la ricerca non conferma esplicitamente il rilascio di una patch.
- OpenAI Codex — segnalato il 27 luglio, nessuna risposta da OpenAI, ancora senza correzione al momento della pubblicazione.
- Microsoft VS Code — segnalato il 10 settembre, respinto da Microsoft con la stessa motivazione di Workspace Trust, ancora senza correzione al momento della pubblicazione.
Un punto che vale la pena riportare testualmente: secondo Weizman, il prompt di Workspace Trust usato da più fornitori come giustificazione “provides zero protection to the user”, cioè non fornisce alcuna protezione reale contro questo tipo di attacco, dato che il clic che lo “autorizza” arriva spesso da un elemento dell’interfaccia dell’assistente di cui lo sviluppatore si fida ciecamente, non da una reale valutazione del rischio.
Cosa fare, in pratica, in attesa delle patch
Non essendo ancora disponibile una correzione ufficiale per Codex e VS Code, le contromisure restano organizzative più che tecniche. Alcune indicazioni concrete per team di sicurezza e singoli sviluppatori:
- Fare l’inventario di quali di questi cinque strumenti sono effettivamente installati sugli endpoint aziendali, includendo il browser incorporato come componente da tracciare, non come semplice funzione accessoria dell’editor.
- Trattare il browser incorporato come superficie d’attacco dell’endpoint: carica pagine e file non attendibili ed è guidato da un agente AI che può interpretarne il contenuto come istruzioni operative.
- Non considerare il prompt di trust come una difesa sufficiente: se il clic che lo soddisfa proviene da un link o un pulsante suggerito dall’assistente stesso, la barriera psicologica per l’utente è molto più bassa che davanti a un avviso di sicurezza tradizionale.
- Evitare di aprire con Codex o VS Code progetti di provenienza incerta, specialmente quando l’assistente propone di “completare un setup” seguendo un README o un link cliccabile incluso nel repository.
- Diffidare dei link HTML proposti dall’agente in repository non verificati: è esattamente il vettore usato per innescare il furto di file nella ricerca.
- Aggiornare prontamente Cursor e GitHub Copilot alle versioni corrette (rispettivamente la build successiva al 1° ottobre e la 1.1.29 o successiva), e monitorare i changelog ufficiali di OpenAI e Microsoft per l’arrivo di una patch su Codex e VS Code.
Per chi gestisce un parco endpoint più ampio, Forever Security segnala anche l’utilità di strumenti di governance dedicati agli strumenti AI in uso — va detto, per completezza, che l’autore della ricerca è anche fornitore di una soluzione di questo tipo.
Perché conviene prestare attenzione fin da ora
Al di là dei singoli bug, EMBRACE mette il dito su un problema strutturale che difficilmente si risolverà con una sola patch: gli assistenti AI per la programmazione combinano un browser incorporato — storicamente trattato come dettaglio implementativo a basso rischio — con un agente autonomo capace di interpretare il contenuto di quella pagina come un’istruzione da eseguire. È una combinazione relativamente nuova, per cui i consueti modelli di minaccia dei browser tradizionali non bastano più. Vale la pena rivalutare periodicamente lo stato delle patch su questi strumenti, soprattutto se il proprio team li usa su repository provenienti da fonti esterne o collaboratori non verificati.
Fonte: 4sysops, con dettagli tecnici dalla ricerca originale EMBRACE di Forever Security.