MD5-beveiligingsmechanisme achter vertrouwde websites gekraakt

Nou, mooi is dat. Ben ik net uit bed na een erg leuke oudejaarsavond, blijken een stel beveiligingsonderzoekers e-commerce gekraakt te hebben. Of nou ja, de beveiligingstechniek achter een hoop e-commerce sites. Dit omdat het MD5-algoritme, een klein maar cruciaal deel van de gebruikte beveiligingstechniek al drie -pardon, vier, het is 2009- jaar bijzonder zwak blijkt te zijn. Dankzij deze zwakte kan een aanvaller een nepsite voorzien van volstrekt authentiek uitziende certificaten, zodat niemand meer kan detecteren dat het een nepsite is.

Beveiligde websites, veel gebruikt bij e-commerce sites, maken gebruik van certificaten waarmee een browser kan vaststellen of hij met de echte site communiceert. Die certificaten worden uitgegeven door onafhankelijke instanties zoals CACert of Thawte, en zijn voorzien van hun digitale handtekening zodat er niet mee te knoeien valt.

De fout zit in het MD5-algoritme, dat gebruikt wordt bij het genereren van die digitale handtekening. MD5 genereert een hash, een korte code die uniek is voor het te signeren certificaat, en vervolgens wordt de handtekening geplaatst over die hash. Dit is veel sneller dan het hele certificaat zelf signeren. Het blijkt namelijk veel eenvoudiger dan gedacht om een tweede certificaat te genereren met inhoud naar keuze dat dezelfde hash heeft als het certificaat van zo’n instantie. En daarmee zal iedere browser dat nepcertificaat accepteren als authentiek.

Al in 2005 was bekend dat het MD5-algoritme deze zwakheid had, maar tot nu toe werd dit door veel mensen als een puur theoretische mogelijkheid afgedaan. Met deze publicatie wordt duidelijk dat dit een reële dreiging is. Gelukkig hebben zowel Microsoft als Mozilla maatregelen aangekondigd.

Klikken jullie trouwens ook al die irritante waarschuwingen over certificaten weg zonder ze te lezen? Ik zou het liever niet doen, maar soms heb je weinig keus als je een bepaalde website wilt gebruiken.

Arnoud

8 reacties

  1. Het versleutelen van het netwerkverkeer is in de praktijk veel belangrijker dan het verzekeren van de identiteit van de server. Ik bedoel, hoe moet tante Miep uit Meppel nu op basis van de gegevens uit een digitaal certificaat vaststellen dat het echt haar bank is waarmee ze zaken doet? En die waarschuwingen die browsers wel of niet geven maken het alleen maar erger. Schijnzekerheid…

    Maar terug naar het “probleem”. De diverse certificaten uitgevers zullen dus nu met enige spoed moeten overstappen op een SHA1 hash in plaats van MD5. (Dat hadden ze eigenlijk al veel eerder moeten doen. 😉 En dan is de E-commerce voorlopig weer even gered.

  2. Om antwoord te geven op je vraag, Arnoud: mijn surfgedrag is een beetje veranderd toen Firefox expliciet ging vragen of je akkoord was met een certificate. Sinds de laatste grote update vraagt Firefox bij elke self-signed certificate wat je ervan vindt. Dat is een beetje onhandig omdat die certificates vrijwel uitsluitend door (legitieme) open source projekten wordt gebruikt, en ik bezoek veel van die sites. Het is wel handig bij bedrijfswebsites, want als ik daarover wordt gevraagd door Firefox zie ik vaak algeheel af van het bekijken van die website (regeringswebsites vallen hier opvallend vaak door de mand). Of als ik de website toch wil zien, kies ik er in dat laatste geval altijd voor om het certificaat tijdelijk te accepteren.

  3. Bij telebankieren of andere sites waar ik gevoelige gegevens gebruik let ik er zeker op dat het beveiligd is met het juiste certificaat. Bij overige sites let ik er nauwelijks op en accepteer ik ook self-signed certificates.

  4. Ik blijf het vreemd vinden dat bijna nog geen enkele bank in Nederland gebruik maakt van Extended Validation.

    De Postbank zei in het consumenten programma kassa er alles aan te doen om de veiligheid te kunnen garanderen. Hoewel ik Tancodes op een papier geen beveiliging noem, maar dat is een ander verhaal.

    Bij 3xkloppen.nl attenderen ze er op altijd te controleren of je wel op de website van je bank bent. Maar een adres is ook te vervalsen heeft MS bewezen met een oude bug die iedereen in staat stelde om het adres anders voor te laten doen! (Is inmiddels alweer gefixt). En ok? het kost een duid geld (minimaal 300 euro) maar voor een bank is dat niets, vergeleken met de vele 1000e euro’s die ze nu moeten vergoeden en reputatie schaden die ze lopen.

    Zelf heb ik ook deze kwetsbaarheid, maar gelukkig kan ik hem gratis laten vervangen 🙂 De CA’s hebben aangegeven dat het in principe niet nodig is het certificaat te vervangen, maar als je kosteloos een risico kan uitsluiten ben je gek als je dat niet doet.

    PS: De beste wensen nog aan allemaal 😉

  5. Voor degenen die het hele systeem begrijpen is het niet zo moeilijk om te beoordelen of ze ja of nee moeten klikken bij zo’n waarschuwing (ja als je die URL zelf hebt ingetikt/uit de bladwijzers geopend, en als je niet op een openbaar wifi-netwerk zit…). Voor de rest van de wereld is het allemaal koeterwaals… helaas is een gebruikersvriendelijker beveiligingssyteem nog niet uitgevonden 🙁

Geef een reactie

Handige HTML: <a href=""> voor hyperlinks, <blockquote> om te citeren, <UL>/<OL> voor lijsten, en <em> en <strong> voor italics en vet.