Achtergrond

Google breekt SHA-1 encryptiestandaard: is het internet nu onveilig?

Google kraakt als eerste de populaire SHA-1-encryptie. Enkele jaren geleden werd SHA-1 nog gebruikt om 90 procent van het internet te beveiligen. Vandaag is de impact gelukkig minder groot.

Het Secure Hash Algorithm is niet meer veilig. SHA-1 is een 20 jaar oud beveiligingsalgoritme dat ironisch genoeg werd uitgevonden door de NSA toen die Amerikaanse inlichtingendienst nog niet de ambitie had alles van iedereen altijd te lezen.

Wat SHA-1 doet

Een hashfunctie berekent een cryptografische hash aan de hand van gegeven input. Stel dat je een programma schrijft en dat online wil verdelen maar mensen wil behoeden van valse versies van je tooltje met een virus in. Je kan dan een hash van het .exe-bestand berekenen. Die hash is een reeks hexadecimale tekens die uniek is voor het specifieke bestand. Als iemand anders van een identieke kopie van jouw bestand een hash berekent, dan zal de uitkomst exact hetzelfde zijn. Is het oorspronkelijke bestand echter gewijzigd, dan zal de hash berekend door het SHA-algoritme niet meer dezelfde zijn.

Hashes zijn een hoeksteen van digitale beveiliging. Ze zijn eenvoudig te berekenen maar omgekeerd te werk gaan is in theorie onmogelijk. Je kan dus geen bestand maken waarvan je op voorhand weet dat het een specifieke hash heeft. De enige manier om zoiets te doen is met brute kracht: blijven proberen tot de hashfunctie toevallig van jouw input de gewenste hash geeft.

SHA-hashes worden onder andere gebruikt om het internet te beveiligen met certificaten. Websites bewijzen hun authenticiteit aan de hand van een met SHA ondertekend certificaat. Een computer kan snel zien of het certificaat te vertrouwen is: een aanvaller kan er niet mee prutsen want dat zou de hash veranderen, en het is in theorie onmogelijk te deduceren welke wijzigingen via een omweg toch eenzelfde hash zouden opleveren.

SHAttered

In de praktijk toont Google nu aan dat het wel kan. Met het SHAttered-project kraakte de zoekgigant het SHA-1 algoritme met een zogenaamde hash-botsing. Zo’n botsing komt voor wanneer twee bestanden toch dezelfde hash als resultaat geven. Een succesvol uitgevoerde hash-botsing betekent de doodsteek voor SHA-1. Het protocol is waardeloos als blijkt dat aanvallers malware kunnen voorzien van hashes die identiek zijn aan die van vertrouwde certificaten of software.

SHAttered is één van de meest complexe berekeningen uit de geschiedenis.

Het koste Google de nodige moeite om SHA-1 te kraken. Details krijgen we pas binnen 90 dagen wanneer getroffen partijen de kans krijgen om SHA-1 aan de deur te zetten, maar Google verklapt al wel hoe het in grote lijnen is tewerk gegaan. Google maakte geen gebruik van een bruteforce-aanval, waarbij combinaties geprobeerd worden tot er ééntje per toeval het gewenste resultaat oplevert. Zo’n aanval zou een computer met één krachtige gpu 12.000.000 jaar kosten en is in de praktijk geen bedreiging voor de veiligheid van SHA-1.

Extreme berekeningen

De SHAttered-aanval van Google was gebaseerd op een theoretische paper van Marc Stevens van het Centrum voor Wiskunde & Informatica in Amsterdam. De onderzoeker doet uit de doeken hoe een hash-botsing efficiënter uit te lokken is. Met de methode van Stevens heeft één gpu nog steeds 110 jaar nodig om SHA-1 te breken. Dat klinkt als een onpraktisch lange tijd, maar wie de nodige hardware ter beschikking heeft kan de kraak relatief snel uitvoeren.

Google brak SHA-1 in twee fases. De eerste fase was goed voor 6.500 jaar aan cpu-berekeningen, de tweede fase gebaseerd op de paper van Stevens deed daar de voorspelde 110 jaar aan gpu-rekentijd bovenop. Google gebruikte zijn cloud-infrastructuur om de nodige rekenkracht te voorzien. SHAttered is zo één van de meest complexe berekeningen uit de geschiedenis. Dat het moeilijk was, is momenteel niet relevant: als Google SHA-1 kan breken, kunnen anderen dat ook. Rekenkracht blijft bovendien goedkoper worden, waardoor de aanval na verloop van tijd door meer en meer mensen kan uitgevoerd worden.

Geen paniek

Google lijkt de tijd en de moeite vooral geïnvesteerd te hebben om een punt te bewijzen. In 2014 maakte ongeveer 90 procent van het beveiligde internetverkeer gebruik van SHA-1. Onder impuls van Google werden de meeste websites aangemaand over te stappen naar nieuwere varianten op het hash-systeem zoals SHA-3 en SHA-256. Die algoritmes zijn veel complexer en bijgevolg veel veiliger. Ondanks de paper van Stevens leek het dat Google een algoritme wilde afdanken waar in de praktijk niets mee verkeerd was. Door SHA-1 nu zelf te kraken, toont de zoekgigant aan dat hij gelijk had door een overstap van SHA-1 aan te moedigen. Het resultaat: vandaag maakt vrijwel niemand nog gebruik van het hash-algoritme.

De bekendste dienst die SHA-1 nog wel gebruikt is GIT. Dat laat aanvallers toe om een GIT-repository aan te maken dat identiek is aan een bestaande repository, maar geïnjecteerd is met malware. Verder zijn er nog wel websites die SHA-1-HTTPS-certificaten gebruiken maar die zijn zeldzaam en worden niet meer vertrouwd door Chrome. Ook Firefox keerde zich tegen SHA-1-certificaten.

De les die we moeten leren van Google is eenvoudig. Het internet staat vandaag niet op z’n kop omdat vrijwel iedereen geluisterd heeft naar de voorspellingen van enkele onderzoekers. Hadden Google maar ook Firefox en anderen de overstap niet zo agressief aangemoedigd, was het internet vandaag zo lek als een zeef.

Tot slot is een kanttekening nog relevant. Google is de eerste die de theorie van 2013 publiekelijk omzet in de praktijk. Het is verre van ondenkbaar dat andere instanties met veel computerkracht ter beschikking hetzelfde al niet stiekem eerder hebben gedaan. Denk maar naar de NSA of het Britse GCHQ.

Gerelateerde artikelen

Volg ons

Ga jij apps uit alternatieve appstores installeren?

  • Nee, App Store of Play Store is goed genoeg (57%, 109 Votes)
  • Alleen als ik een app écht nodig heb (29%, 56 Votes)
  • Ja, ik wil apps van andere bronnen installeren (14%, 27 Votes)

Aantal stemmen: 194

Laden ... Laden ...
69% korting + 3 maanden gratis

69% korting + 3 maanden gratis

Bezoek NordVPN

Business