Quali sono le implicazioni di una collisione SHA-1 trovata?

63

Google ha annunciato la scoperta di una collisione SHA-1 tra due File PDF con contenuti distinti.

Sebbene gli hash SHA-1 non siano più consentiti per i fingerprint dei certificati SSL / TLS, e altre misure potrebbero impedire che le impronte digitali dei certificati vengano manipolate in questo modo, quali altri usi di SHA-1 sarebbero interessati?

Gli autori degli attacchi menzionano gli hash GIT come una possibilità, ma ci sono altri usi comuni che non hanno mitigazione se non l'aggiornamento ad un'altra famiglia di hash o successivamente al metodo SHA?

Per le risposte relative a come questa collisione è stata trovata, vedi questa altra domanda su Crypto.se

    
posta Matthew 23.02.2017 - 14:44
fonte

1 risposta

45

Attualmente, dato lo specifico metodo di collisione utilizzato, l'impatto è piuttosto limitato. In particolare, questo metodo non consente a un utente malintenzionato di generare una collisione con un file esistente, in cui è stato fornito un hash SHA-1. Ad esempio, non sarebbe possibile utilizzare questo metodo per generare un file eseguibile dannoso che corrisponda alla firma fornita sul sito Web di distribuzione legittimo.

Sarebbe possibile, in teoria, che un utente malintenzionato generi due file eseguibili che hanno lo stesso hash SHA-1, ma eseguono cose diverse durante l'esecuzione. Allo stesso modo, sarebbe possibile generare più immagini ISO che hanno lo stesso hash SHA-1. Tuttavia, in ogni caso, gli altri valori hash non corrispondono, ed è comune per i siti di download fornire diversi tipi di hash (ad esempio, Ubuntu fornisce gli hash MD5, SHA-1 e SHA256 per tutti i download). Questo può essere visto con i file shattered-1.pdf e shattered-2.pdf:

# sha1sum shattered-1.pdf
38762cf7f55934b34d179ae6a4c80cadccbb7f0a  shattered-1.pdf

# md5sum shattered-1.pdf
ee4aa52b139d925f8d8884402b0a750c  shattered-1.pdf

# sha1sum shattered-2.pdf
38762cf7f55934b34d179ae6a4c80cadccbb7f0a  shattered-2.pdf

# md5sum shattered-2.pdf
5bd9d8cabc46041579a311230539b8d1  shattered-2.pdf

Potrebbe essere possibile creare un tipo di file poliglotta che produce gli stessi valori di hash sia in SHA-1 che in MD5, ma questo non è stato dimostrato e fallirebbe, dato, ad esempio, un hash SHA-512 .

Analogamente, per qualsiasi sistema in cui un hash SHA-1 viene utilizzato come identificatore di file, potrebbe essere possibile ottenere una metà di una coppia di file in collisione nel sistema, quindi sostituirla con l'altra. Un esempio di questo potrebbe essere un sistema di backup che utilizza SHA-1 a livello di file per determinare se i file sono stati copiati correttamente. Tuttavia, sarebbe difficile fare in modo che un hash dell'intero contenuto del backup rimanga lo stesso in questo caso, poiché è improbabile che il file dannoso formi il prefisso per l'intero file di backup (è più probabile che sia qualcosa che identifica l'intero file come un backup).

Nel complesso, quindi, l'annuncio di Google conferma per lo più ciò che è stato sospettato per un po '- SHA-1 è vulnerabile alle collisioni, proprio come MD5, ma trovarli richiede molto impegno e la maggior parte del profilo veramente alto gli obiettivi (come la generazione di certificati CA) sono mitigati dalle collisioni MD5 molto simili trovate in precedenza. Gli esperti hanno consigliato di passare da SHA-1 per un po 'di tempo e questo consiglio è ancora valido.

Proprio come con MD5, tuttavia, questo non ha un impatto particolare sull'uso di HMAC-SHA1, poiché il metodo di combinazione specifico utilizzato nella costruzione dei valori HMAC rende irrilevante questo tipo di collisione.

    
risposta data 23.02.2017 - 18:37
fonte

Leggi altre domande sui tag