In precedenza, noi
Stranamente, Kolsek inizialmente non è stato in grado di riprodurre l'attacco descritto e dimostrato da John, in cui ha utilizzato Internet Explorer in esecuzione su Windows 7 per scaricare e quindi aprire un file MHT dannoso. Sebbene il suo responsabile del processo abbia mostrato che system.ini, che avrebbe dovuto essere rubato a lui stesso, è stato letto da uno script nascosto nel file MHT, ma non è stato inviato al server remoto.
"Sembrava una classica situazione da marchio del Web", scrive Kolsek. "Quando un file viene ricevuto da Internet, le applicazioni Windows correttamente eseguite come browser Web e client di posta elettronica aggiungono un'etichetta a tale file nel modulo
Il ricercatore ha verificato che IE avesse effettivamente impostato tale etichetta per il file MHT scaricato. Kolsek ha quindi provato a scaricare lo stesso file utilizzando Edge e ad aprirlo in IE, che rimane l'applicazione predefinita per i file MHT. Inaspettatamente, l’exploit ha funzionato.
Innanzitutto, il ricercatore ha controllato "mark-of-the-Web", si è scoperto che Edge memorizza anche la fonte di origine del file in un flusso di dati alternativo oltre all'identificatore di sicurezza, il che potrebbe sollevare alcune domande sulla privacy di questo metodo. Kolsek ha ipotizzato che le righe extra avrebbero potuto confondere IE e impedirgli di leggere il SID, ma a quanto pare il problema era altrove. Dopo una lunga analisi, lo specialista della sicurezza ha trovato la causa in due voci dell'elenco di controllo degli accessi che aggiungevano il diritto di lettura del file MHT a un determinato servizio di sistema, che Edge ha aggiunto lì dopo averlo caricato.
James Foreshaw del team dedicato alle vulnerabilità zero-day - Google Project Zero -
Successivamente, il ricercatore voleva capire meglio le cause del fallimento del sistema di sicurezza di IE. Un'analisi approfondita utilizzando l'utilità Process Monitor e il disassemblatore IDA ha infine rivelato che la risoluzione impostata di Edge impediva alla funzione Win Api GetZoneFromAlternateDataStreamEx di leggere il flusso di file Zone.Identifier e restituiva un errore. Per Internet Explorer, un errore del genere durante la richiesta dell'etichetta di sicurezza di un file era del tutto inaspettato e, a quanto pare, il browser ha ritenuto che l'errore equivalesse al fatto che il file non aveva un marchio "mark-of-the-Web", che lo rende automaticamente affidabile, dopo il motivo per cui IE ha consentito l'esecuzione dello script nascosto nel file MHT e l'invio del file locale di destinazione al server remoto.
"Vedi l'ironia qui?" chiede Kolsek. "Una funzionalità di sicurezza non documentata utilizzata da Edge ha neutralizzato una funzionalità esistente, senza dubbio molto più importante (marchio del Web) in Internet Explorer."
Nonostante la crescente importanza della vulnerabilità, che consente a uno script dannoso di essere eseguito come script affidabile, non vi è alcuna indicazione che Microsoft intenda correggere il bug in tempi brevi, se mai verrà risolto. Pertanto, ti consigliamo comunque, come nell'articolo precedente, di modificare il programma predefinito per l'apertura dei file MHT su qualsiasi browser moderno.
Naturalmente, la ricerca di Kolsek non è andata senza un po' di auto-PR. Alla fine dell'articolo, ha dimostrato una piccola patch scritta in linguaggio assembly che può utilizzare il servizio 0patch sviluppato dalla sua azienda. 0patch rileva automaticamente il software vulnerabile sul computer dell'utente e applica piccole patch letteralmente al volo. Ad esempio, nel caso descritto, 0patch sostituirà il messaggio di errore nella funzione GetZoneFromAlternateDataStreamEx con un valore corrispondente a un file non attendibile ricevuto dalla rete, in modo che IE non consenta l'esecuzione di script nascosti in conformità con il built- nella politica di sicurezza.
Fonte: 3dnews.ru