Quello in corso può senza ombra di dubbio essere considerato l'anno nero per il browser di casa Microsoft. Le vulnerabilità scoperte si susseguono oramai ad un ritmo tale da non far presagire niente di buono per il futuro. Gli ultimi mesi, in particolare, sono stati caratterizzati dalla diffusione di Siti Web compromessi diffondono un trojan che sfruttando vulnerabilità multiple sono riusciti a minacciare seriamente la sicurezza e la privacy degli utenti internet.
Allo stato attuale tutte le maggiori organizzazioni che si occupano di sicurezza sono concordi nello sconsigliare l'uso di Internet Explorer per evitare di incorrere in possibili problemi dato che molte delle vulnerabilità scoperte rimangono ancora prive di patch. Evidentemente Microsoft non le ritiene sufficientemente critiche da meritare una immediata soluzione. Come dimostrano i recenti eventi però è spesso un insieme di piccole criticità, la maggior parte delle volte non particolarmente pericolose se prese singolarmente, a dare la possibilità di violare un sistema.
Da tempo il browser della casa di Redmond soffre di questo genere di problemi, soffocato dalla sua stessa pesantezza e dalle mille tecnologie che gli gravitano attorno.
La causa fondamentale è che Internet Explorer non è un semplice programma per navigare sulla rete ma un vero e proprio componente del sistema operativo che gestisce risorse locali e gran parte dell'interfaccia grafica di windows.
Molte delle sue vulnerabilità più critiche possono essere ricondotte a falle in una delle seguenti tecnologie:
- Modello di sicurezza a zone: esistono domini di protezioni all'interno dei quali determinate operazioni possono essere eseguite.
- Modello a oggetti DHTML: la tecnologia che tramite VBscript o Jscript permette di realizzare pagine
HTML dinamiche. - L'utilizzo dei tipi MIME per la visualizzazione di oggetti e documenti.
- ActiveX: la tecnologia che consente l'utilizzo di componenti riusabili scaricabili anche dalla rete.
Di seguito si illustreranno alcune delle vulnerabilità scoperte nei mesi recenti catalogate dal sito danese
Secunia.
Lo scopo principale non sarà quello di fornirne un elenco esaustivo delle vulnerabilità ma piuttosto quello di far conoscere quali sono le tipologie di rischi a cui va incontro l'utente ed eventualmente quali sono i metodi per difendersi. Per un riferimento più completo si rimanda direttamente alla pagina dedicata ad IE6 sul sito di
Secunia.
Internet Explorer frame injection
È una delle ultime vulnerabilità individuate ed in realtà coinvolge molti dei browser presenti sul mercato.
Su una scala di pericolosità da 1 a 5 Secunia le assegna un valore pari a 3 che corrisponde ad una falla di sicurezza moderatamente critica. Nel caso specifico significa che la vulnerabilità potrebbe permettere una compromissione del sistema ma necessita di un qualche intervento da parte dell'utente per realizzarla pienamente.
Il problema consiste nel fatto che IE consente ad un sito di aprire una propria pagina in un frame appartenente ad un'altra finestra.
Questo significa che se stiamo navigando su un sito non proprio sicuro, un click su uno dei suoi link potrebbe forzare il caricamento di una pagina arbitraria in un frame di una pagina in cui è caricato un altro sito. Immaginiamo, per esempio, che quest'ultimo sia quello della nostra banca e supponiamo che la pagina iniettata contenga un form in cui si chiede di reintrodurre il codice segreto per la visualizzazione del nostro conto corrente. Se l'utente non si accorge del problema può essere indotto a digitare i dati richiesti che però verranno inviati al sito contenente il link dannoso. Quello che rischiamo quindi è il furto di informazioni riservate.
La tecnica adottata è denominata spoofing cioè imbroglio, truffa e prevede una qualche falsificazione dell'origine dei dati presentati all'utente.
Una dimostrazione pratica del funzionamento della vulnerabilità è disponibile alla seguente pagina.
Come possiamo difenderci da questo genere di attacchi? I maggiori browser affetti da questo problema hanno provveduto ad aggiornare i loro software o fornire apposite patch.
Microsoft invece consiglia per il suo browser di personalizzare il livello di protezione in modo da disattivare la voce "Esplora sottoframe in domini diversi". (Opzioni internet->Protezione->Personalizza livello).
In ogni caso è sempre consigliabile prestare la massima attenzione quando si cliccano i link di un sito che può essere ritenuto non affidabile.
Internet Explorer Local resource access
Internet Explorer Cross-zone scripting
Come detto in precedenza spesso è l'utilizzo contemporaneo di più vulnerabilità a renderle veramente pericolose. Quello considerato ne è un esempio lampante che viene classificato da Secunia con il massimo indice di pericolosità, pari a 5.
Prese singolarmente queste due falle non possono arrecare grossi danni alla sicurezza di un sistema. Usate contemporaneamente danno origine ad una miscela esplosiva che può permettere, a nostra insaputa, lo scaricamento e l'esecuzione di programmi sul nostro computer. Sono già diversi i trojan rilevati che installano spyware usando questa tecnica.
La prima vulnerabilità (Local Resource Access) consente ad un sito di far aprire sul browser, per esempio in un frame della pagina, una risorsa locale del computer dell'utente. Questo avviene attraverso l'abuso da parte del server della variabile Location: negli header HTTP. La risorsa visualizzata consiste in genere in un file dell'help di windows (estensione .chm) poiché la sua posizione risulta facilmente predicibile anche da remoto.
Tutto questo di per sé non risulta particolarmente pericoloso perché il sito non può avere accesso alle risorse visualizzate. Il problema che nasce è un altro: il nostro frame, contenendo un oggetto locale, sarà soggetto alle stesse restrizioni che competono agli oggetti appartenenti al sistema locale.
Il modello di sicurezza di IE si basa sulle zone o aree di protezione. Oltre alle zone Internet, Intranet Locale, Siti attendibili e Siti con restrizioni gestibili dalle Opzioni Internet, esiste una ulteriore zona denominata Local Machine ('Sistema locale') che raggruppa tutti gli oggetti presenti sul nostro computer. Logicamente quest'ultima avrà restrizioni estremamente basse in quanto i file locali vengono giudicati attendibili.
La seconda vulnerabilità (Cross-zone scripting) permette proprio di infrangere la separazione tra le zone di protezione. In questo modo è possibile far eseguire con i diritti di Local Machine uno script dannoso scaricato dalla rete che verrebbe altrimenti bloccato perché teoricamente appartenente ad una zona più restrittiva.
Operativamente la cosa avviene mediante l'iniezione di codice nel frame aperto dalla prima vulnerabilità. Internet Explorer erroneamente non verifica correttamente il cambio di zona e il codice può essere eseguito senza limitazioni.
Lo script nocivo iniettato nel frame infine provvederà a scaricare il programma dannoso (uno spyware, una backdoor ...) tramite l'ActiveX ADODB.stream. Quest'oggetto normalmente permette di gestire letture e scritture di dati sull'hard disk del computer solo all'interno dell'ambiente protetto Local Machine. Nel nostro caso grazie al Cross-zone scripting potrà essere eseguito anche da Internet.
Per arginare il problema Microsoft ha reso disponibile una patch che disabilita l'oggetto ADODB.stream. La vulnerabilità quindi rimane, semplicemente non sarà più possibile salvare il codice su disco. Restiamo in attesa che il Cross-zone scripting venga sfruttato in qualche altro
modo...
Riferimenti:
Advisory Secunia
Patch per disabilitare ADODB.stream
Analisi dettagliata e codice dell'exploit
Internet Explorer File Download Extension Spoofing
Questa vulnerabilità consiste in un altro tipo di spoofing che coinvolge l'estensione dei file scaricabili dal web.
In genere gli utenti hanno molta fiducia nell'estensione del nome del file che il nostro browser visualizza quando clicchiamo sul link di un oggetto scaricabile e, in molti casi, si è portati a scegliere di aprire direttamente il file invece che salvarlo preventivamente su disco. Tutti siamo infatti abituati a veder associate determinate estensioni ai reletivi programmi di visualizzazione: un file .jpg ci verrà mostrato dal nostro visualizzatore di immagini, un .pdf da Acrobat Reader e un .mpg dal media player di turno.
La vulnerabilità considerata, classificata di livello 3 da Secunia, permette ad Internet Explorer di ingannare l'utente consentendo l'apertura di un file con un programma che non è quello associato all'estensione visualizzata dal browser.
L'inganno avviene inglobando all'interno del nome del file il codice CLSID (una lunga serie di numeri tra parentesi graffe) dell'estensione associata al programma che si vuole usare per aprire il file. Inserendo nel nome del file il CLSID relativo all'estensione .jpg per esempio, questo verrà aperto con il visualizzatore di immagini indipendentemente dalla sua estensione.
La situazione più a rischio riguarda CLSID che fanno riferimento a programmi eseguibili. In questo caso qualsiasi file con estensione apparentemente innocente potrebbe in realtà contenere un programma ed essere eseguito.
Attraverso il seguente link è possibile testare la vulnerabilità:
http://secunia.com/Internet_Explorer_File_Download_Extension_Spoofing_Test/
Allo stato attuale l'unica soluzione per non incorrere nel problema è salvare preventivamente il file sul computer per verificare la presenza del codice CLSID sospetto nel nome del file.
Internet Explorer/Outlook Express Restricted Zone Status Bar Spoofing
L'ultima vulnerabilità considerata non è particolarmente pericolosa ma ci permette di constatare che anche con del semplice codice HTML è possibile operare uno spoofing. La falla in oggetto consente di operare la falsificazione degli URL visualizzati sulla bara di stato quando si passa con il mouse sopra un link.
Come accennato la particolarità di questo problema del motore di IE consiste nel fatto che non è necessario nessun tipo di script per operare lo spoofing ma è sufficiente del semplice codice HTML. In questo modo è quindi possibile bypassare eventuali restrizioni impostate sull'esecuzione degli script in aree ad alta protezione. Lo stesso tipo di problema affligge Outlook Express nella gestione delle email in formato HTML poichè utilizza lo stesso motore di visualizzazione di IE.
Sfruttando questa tecnica è quindi possibile ingannare un utente portandolo a visitare un sito dannoso
attraverso un click su un link di cui ha fiducia. L'unica soluzione adottabile per non incorrere nel problema è evitare i link di siti ritenuti poco affidabili. A riguardo è possibile seguire i seguenti consigli di Microsoft: http://support.microsoft.com/?id=833786.