Cerca nel blog

2009/11/20

Falla SMB in Windows 7, quanto è grave?

Windows 7 paralizzabile da remoto? Facciamo il punto


L'articolo è stato aggiornato dopo la pubblicazione iniziale.

Windows 7, il nuovo gioiello di Microsoft, debutta col buco. E che buco, stando al suo scopritore Laurent Gaffié: è possibile paralizzare Windows 7 (e anche alcune versioni di Windows Server 2008) semplicemente inducendo l'utente a cliccare su un link appositamente confezionato, per esempio per visitare un sito Web ostile. Niente schermo blu classico, ma un blocco completo: il computer cessa di rispondere ai comandi. È quindi necessario riavviarlo, con conseguente perdita dei dati non salvati. Imbarazzante.

Microsoft sta già lavorando all'aggiornamento per turare la falla, ma nel frattempo le dimostrazioni dell'estrema facilità con la quale si può sfruttare il difetto cominciano a circolare in Rete.

La prima dimostrazione, naturalmente, è quella dello scopritore, che l'11 novembre ha pubblicato poco responsabilmente tutto il codice Python da usare. Per questo ho aspettato inizialmente a diffondere la notizia (il mio primo accenno pubblico è del 17), ma ora che tutti i dettagli sono disponibili nei principali siti di riferimento per la sicurezza (nella mailing list Full Disclosure, per esempio) è inutile mantenere ulteriormente l'embargo.

Come funziona la falla? È abbastanza semplice. Il software Microsoft che in Windows 7 gestisce il protocollo SMB (Server Message Block), quello utilizzato normalmente nei computer Windows per la condivisione di file e stampanti, non gestisce adeguatamente eventuali incoerenze nei dati trasmessi nell'ambito di questa condivisione. Specificamente, Windows 7 si blocca completamente (va in loop infinito) se riceve l'header di un pacchetto di dati SMB che dichiara una lunghezza diversa da quella reale. È sufficiente un singolo byte di differenza, secondo i test di PraetorianPrefect.com. Se succede, l'unica cosa che si può fare è premere il pulsante di spegnimento del computer e poi riavviare.

Un malintenzionato non deve fare altro che predisporre un server sul quale gira il codice pubblicato da Gaffié, lasciarlo in ascolto e indurre la vittima, tramite un qualunque espediente psicologico (mail allettante, invito in chat), a visitare una pagina Web contenente un link speciale che rimanda al server ostile. Quando la vittima contatta la pagina Web, si attiva una connessione SMB che manda il pacchetto malformato a Windows 7, che si paralizza. Ci sono anche altri metodi (un comando dir \\indirizzo ip\risorsa condivisa fasulla dalla macchina della vittima), ma questo è probabilmente il più pernicioso.

Microsoft ha pubblicato un advisory in inglese, in cui raccomanda agli utenti Windows 7 di bloccare le porte TCP 139 e 445 al firewall e di bloccare ogni comunicazione SMB da e verso Internet. Di norma dovreste già essere configurati in questo modo (se avete dubbi, chiedete a un esperto fidato di controllare per voi), per cui la falla sarebbe sfruttabile solo dai vostri colleghi dispettosi. Tuttavia secondo alcune fonti esisterebbe un modo per sfruttare Internet Explorer per scavalcare anche un firewall e colpire la vittima da remoto: "includere un file presente su una condivisione nell'HTML di una pagina Web", dice Tyler Reguly di nCircle citato da PCWorld.com.

L'advisory di Microsoft indica che Windows XP e Windows Vista non sono affetti da questa vulnerabilità e sottolinea che per ora non sono noti siti che la sfruttano e non è possibile sfruttarla per eseguire codice o prendere diversamente il controllo del computer della vittima: il peggio che vi può capitare, insomma, è trovarvi con il computer improvvisamente bloccato. Proprio come ai vecchi tempi.

Fonti aggiuntive: CVE; ZDNet, The Inquirer, Slashdot, The Register.

Nessun commento: