Microsoft ha recentemente corretto un problema critico di HTTP.sys
Come capita spesso, qualcuno ha analizzato le differenze per scoprire il tipo di problema che è stato corretto e i risultati delle analisi portano a suggerire di aggiornare immediatamente IIS, prima che dobbiate essere costretti a farlo da una serie di BSOD.
ATTENZIONE!
Il danneggiamento, anche da remoto, di sistemi informatici è un reato penale.
Utilizzare le istruzioni che seguono solamente per verificare i sistemi di cui si è titolari.
Il problema corretto dall’aggiornamento CVE-2015-1635 risiede nell’errata gestione dell’header HTTP Range, utilizzato per scaricare solamente una parte di un file; l’header è utile, ad esempio, nel caso in cui si vogliano riprendere dei download interrotti.
Non tutti i server HTTP onorano quella richiesta.
Se ad IIS viene passato un numero troppo grosso nell’header Range, il gestore della richiesta può crashare. Dal momento che, per una decisione scellerata, il gestore delle richieste HTTP è un driver del kernel, se questo crasha a livello di HTTP porta con sé tutto il sistema.
Teoricamente una richiesta opportunamente contraffatta potrebbe portare all’esecuzione di codice arbitrario con privilegi di kernel sul server vittima, ma al momento della prima redazione di questo articolo non sono noti exploit di questo tipo.
Se si invia questa richiesta
curl -v [indirizzo]/static.png -H "Host: test" -H "Range: bytes=0-18446744073709551615"
ad un IIS opportunamente patchato, il sistema non dovrebbe risentirne e dovrebbe rispondere con
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd"> <HTML><HEAD><TITLE>Bad Request</TITLE> <META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD> <BODY><h2>Bad Request - Invalid Header</h2> <hr><p>HTTP Error 400. The request has an invalid header name.</p> </BODY></HTML>
Se la risposta fosse Requested header range not satisfiable
, il sistema potrebbe essere a rischio e potrebbe non essere stato aggiornato.
Se il range specificato nella richiesta parte da 20 anziché da zero, potrebbe essere possibile mandare il sistema in BSOD.
Aggiornamento 19/4/2015 – Stanno proliferando pagine web con tool gratuiti per il controllo di questa vulnerabilità. Pensateci bene prima di dare a sconosciuti l’indirizzo di un IIS che oggi potrebbe non essere vulnerabile, ma se uscisse una nuova vulnerabilità in seguito…
Aggiornamento 21/4/2015 – Qualys ha pubblicato un’analisi approfondita del baco, della patch e di come può essere sfruttato da malintenzionati. In questo momento sono in circolazione degli exploit che permettono di guadagnare il controllo del computer remoto.
Lascia un commento