JavaScript e le librerie insicure

JavaScript e le librerie insicure

I ricercatori evidenziano la scarsa vocazione alla sicurezza del linguaggio di scripting più popolare, una tecnologia usata universalmente che però dipende troppo dalle librerie di codice non aggiornate. Il futuro? Problematico
I ricercatori evidenziano la scarsa vocazione alla sicurezza del linguaggio di scripting più popolare, una tecnologia usata universalmente che però dipende troppo dalle librerie di codice non aggiornate. Il futuro? Problematico

Il futuro del Web è insicuro e il presente è ancora peggio. Questa, almeno, è una delle conclusioni che si possono trarre dalla lettura del nuovo studio realizzato dai ricercatori della Northeastern University sull’uso, anzi l’abuso delle librerie JavaScript (JS) obsolete in un numero estremamente alto di siti Web. Un problema, tra l’altro, di facile soluzione a meno di uno sforzo a opera dell’intera industria.

Analizzando le “dipendenze” di codice dei 75.000 principali siti della classifica Alexa e di 75.000 siti “.com” scelti a caso, i ricercatori del Massachusetts hanno scoperto che l’88 per cento dei siti Alexa e il 47 per cento dei siti . com fa uso di almeno una libreria JS affetta da vulnerabilità di sicurezza già note.

JavaScript è un linguaggio di scripting “notorio” per le sue falle, spiegano i ricercatori, ma anche per essere la tecnologia di sviluppo più popolare al mondo se si esclude l’ecosistema dei gadget mobile; una parte significativa di questa popolarità è ovviamente dovuta alla possibilità di “estendere” le funzionalità del linguaggio grazie a librerie esterne già strutturate come jQuery, Angular e Bootstrap.

Ma una volta implementato il codice di un sito basandosi su una di queste librerie, spiegano i ricercatori, i coder tendono ad “abbandonare” le necessarie pratiche di sicurezza operativa (opsec) trascurando il necessario aggiornamento di tutti i “pezzi” di codice presenti sul server.

Le librerie vulnerabili più “popolari” usate dai siti analizzati comprendono jQuery (36,7 per cento), Angular (40,1 per cento), Handlebars (86,6 per cento) e persino la defunta Yahoo! User Interface Library (YUI) nell’87,3 per cento dei casi. In media, il codice JS di un sito Web si basa su una libreria vecchia di 1.177 giorni rispetto alla release più recente disponibile.

A peggiorare ulteriormente le cose , poi, ci si mettono i framework e i siti Web che includono diverse versioni di una libreria JS aumentando esponenzialmente la superficie di attacco da parte dei cyber-criminali; l’integrazione di script per l’advertising e il supporto dei social network, infine, apre le porte a un ulteriore livello di rischio, visto che in questo caso l’eventuale uso di librerie vulnerabili non dipende dall’amministratore del sito.

Come si esce da una situazione del genere? Stando ai ricercatori non se ne esce, almeno non nell’immediato futuro : l’uso di possibili contromisure ai rischi delle librerie vulnerabili (ad esempio tramite l’impiego di funzionalità avanzate di una rete CDN ) sono estremamente rari, e finché l’industria tecnologia non troverà il modo di tenere traccia di tutte le dipendenze JS fallate in circolazione la sicurezza continuerà a non essere una priorità per i listati JavaScript.

Alfonso Maruccia

Link copiato negli appunti

Ti potrebbe interessare

Pubblicato il
15 mar 2017
Link copiato negli appunti