Un team di ricercatori e docker di sicurezza e accademici ha rotto un pezzo di tecnologia Internet. Hanno fatto il loro lavoro pubblico al 25 ° Congresso di Communication Chaos a Berlino oggi. Il team è stato in grado di creare un’autorità di certificazione canaglia e utilizzarla per emettere certificati SSL validi per qualsiasi sito che desiderano. L’utente non avrebbe alcuna indicazione che la loro connessione HTTPS fosse stata monitorata / modificata.
Questo attacco è possibile a causa di un difetto in MD5. MD5 è un algoritmo di hashing; Ogni file distinto ha un hash distinto. Nel 2004, un team di ricercatori cinesi ha dimostrato di creare due file diversi che avevano lo stesso hash MD5. Nel 2007, un’altra squadra ha mostrato attacchi teorici che hanno approfittato di queste collisioni. La squadra si è concentrata sui certificati SSL firmati con MD5 per il loro exploit.
Il primo passo stava facendo alcune scansioni ampie per vedere quali autorità di certificazione (CA) stavano emettendo i CERTI firmati MD5. Hanno raccolto 30K cerent di Firefox Trusted Cas. 9k di loro erano firmati MD5. Il 97% di quelli provenivano da RapidSSL.
Avendo selezionato il loro obiettivo, la squadra aveva bisogno di generare il loro certificato canaglia per trasferire la firma a. Hanno impiegato la potenza di elaborazione di 200 PlayStation 3s per ottenere il lavoro fatto. Per questo compito, è l’equivalente di 8000 core della CPU convenzionali o $ 20k di Amazon EC2 Time. L’attività richiede ~ 1-2 giorni per calcolare. La parte impegnativa era conoscere il contenuto del certificato che sarebbe stato emesso da RapidSSL. Avevano bisogno di prevedere due variabili: il numero di serie e il timestamp. I numeri di serie di Rapidssl erano tutti sequenziali. Dal test, sapevano che RapidSSL firmerebbe sempre sei secondi dopo che l’acquisto è stato riconosciuto. Conoscere questi due fatti sono stati in grado di generare un certificato nel progresso e quindi acquistare il certificato esatto che volevano. Avrebbero l’acquisto di certificati per avanzare il numero di serie e quindi acquistare sull’ora esatta che hanno calcolato.
Il certificato è stato rilasciato al loro particolare dominio, ma poiché controllarono il contenuto, hanno cambiato le bandiere per renderti un’autorità di certificazione intermedia. Ciò ha dato loro l’autorità di emettere qualsiasi certificato che volevano. Tutti questi certi “validi” sono stati firmati usando SHA-1.
Se si imposta il tuo orologio prima di agosto 2004, puoi provare il loro sito DEMO dal vivo. Questa volta è solo una misura di sicurezza e sicurezza per l’esempio e questo funzionerebbe identicamente con un certificato che non è scaduto. C’è un sito di progetto e una recensione molto più completa di questo.
Per risolvere questa vulnerabilità, tutti i CAS stanno ora usando SHA-1 per la firma e Microsoft e Firefox saranno chiariti in lista nera la CA Rogue del team nei loro prodotti del browser.