Rischi per milioni di sviluppatori: vulnerabilità XSS in vue.js

I manutentori di Vue.js , un popolare framework JavaScript, hanno annunciato la correzione di una pericolosa vulnerabilità cross-site scripting (XSS) nell’estensione del browser Chrome, facendo notare che dovevano attendere che il bug fosse completamente risolto prima di fare qualsiasi annuncio in merito. La vulnerabilità è stata scoperta dallo specialista della sicurezza informatica Jiantao Li della società di sicurezza Starlabs con sede a Singapore.

Come forse ricorderai, questo è un tipo molto comune di vulnerabilità nelle applicazioni web che consentirebbe a terzi di iniettare codice JavaScript o in un altro linguaggio simile nelle pagine web visitate da un utente vulnerabile.

Questo framework ha circa un milione di utenti nella comunità di sviluppo del software, quindi una campagna simile sarebbe potuta essere altamente rischiosa.

Sebbene all’inizio il ricercatore abbia cercato di notificare privatamente Vue.js, dopo due settimane senza ricevere una risposta Jiantao Lin ha deciso di provare un approccio più assertivo e pubblicare un rapporto di vulnerabilità e una prova di concetto (PoC) su un repository GitHub.

Il ricercatore è riuscito ad attirare rapidamente l’attenzione della comunità della sicurezza informatica, quindi solo poche ore dopo, la vulnerabilità era già stata risolta.

Il rapporto di Starlabs aggiunge ulteriori dettagli sul potenziale sfruttamento attivo della vulnerabilità: “In devtools-background.js, c’è un’iniezione di codice nella funzione toast; questa condizione potrebbe essere attivata da postMessage da qualsiasi scheda, determinando una condizione XSS universale all’apertura degli strumenti di sviluppo del browser”, Apparentemente, un attore di minacce potrebbe ospitare un sito Web appositamente progettato per sfruttare questa vulnerabilità e successivamente indurre l’utente di destinazione a entrare in quel sito Web e ad aprire gli strumenti di sviluppo in altre schede di Chrome. 

In una versione semplificata del rapporto, Jiantao Lin ha affermato: “Si tratta di un difetto di iniezione di codice in una popolare estensione del browser web; la vulnerabilità esiste perché i dati non verificati vengono eseguiti come codice. “Sul processo di exploit, il ricercatore aggiunge: “L’UXSS consentirà agli hacker dannosi di eseguire JavaScript da un dominio a qualsiasi altro dominio se viene sfruttato con successo.”

Gli sviluppatori di Vue.js devono ancora rispondere alle richieste di informazioni inviate da vari membri della comunità della sicurezza informatica, quindi maggiori dettagli potrebbero essere rivelati nei prossimi giorni.