Beveiligingsonderzoekers hebben een gemakkelijk uit te voeren manier getoond om het sha-1-hash-algoritme te breken. Het is met de aanval mogelijk om identieke hashes te produceren van verschillende soorten input.
De kwetsbaarheid werd gevonden door twee beveiligingsonderzoekers van het Franse wetenschappelijk onderzoeksinstituut Inria en de Technische Universiteit van Singapore. Ze beschrijven de aanval op een website. Die krijgt de naam 'Sha-1 is a Shambles'. De onderzoekers vergelijken de zwakte in het algoritme met die van md5, dat al sinds jaren niet meer veilig is. "Alle aanvallen die praktisch mogelijk waren op md5, zijn nu ook praktisch mogelijk op sha-1", schrijven ze. De onderzoekers hebben ook een whitepaper geschreven met meer technische achtergrond.
De kwetsbaarheid kan worden uitgebuit met een zogeheten chosen-prefix collision attack. Daarbij wordt veel rekenkracht gebruikt om met brute forcing op zoek te gaan naar twee gelijke hashes van verschillende input. Bij een standaard collision-aanval moet een aanvaller net zo lang zoeken tot hij twee identieke hashes vindt, wat een paar jaar geleden al voor het eerst werd getoond. Bij een chosen-prefix-aanval kan een aanvaller juist een hash vinden van een specifieke input. Op die manier is het mogelijk een hash te vervalsen omdat er een ander bericht achter zit dan het origineel. Zo kan een aanvaller een ssl-certificaat of pgp-privésleutel nabootsen.
Chosen-prefix collision-aanvallen waren jarenlang moeilijk en duur om uit te voeren, omdat er veel meer berekeningen moeten worden uitgevoerd om een identieke hash te vinden. De onderzoekers hebben nu een manier gevonden om die kosten te drukken. Volgens hen zou het zo'n 45.000 dollar kosten om de aanval uit te voeren. Die kosten zouden over vijf jaar nog maar op tienduizend euro liggen, stellen zij. Beperkingen in de onderzoeksopzet zorgden ervoor dat het kraken van een hash langer duurde dan gedacht. De onderzoekers hebben een proof of concept laten zien waarin zij twee dezelfde hashes hebben gemaakt van verschillende pgp-sleutels.
Sha-1 wordt als hash-algoritme al jaren langzaam uitgefaseerd vanwege de beperkingen, en omdat er inmiddels veel betere alternatieven zijn. Toch gebruikt een aantal belangrijke applicaties het algoritme nog steeds. Onder andere GnuPG en OpenSSL maken er nog gebruik van. De onderzoekers hebben 'een groot aantal' ontwikkelaars op de hoogte gebracht, maar lang niet iedereen. Sommige daarvan, zoals GnuPG, gaan overwegen sha-1 nu helemaal uit te faseren. Dat is nog niet overal gebeurd.