Diginotar het bedrijf achter DigiD is gehackt. Via de site van de NOS een aantal antwoorden op veelgestelde vragen. Bottomline... voorlopig moet je websites die met DigiD worden beveiligd vermijden! Mijn persoonlijke vraag... hoe is dit mogelijk dat het meest beveiligde systeem (nota bene van de overheid) gekraakt wordt! Dit mag gewoon niet kunnen. Geeft wel te denken...

Hier de antwoorden op een aantal veelgestelde vragen:

Wat is het probleem nu precies?
Er is ingebroken bij een bedrijf dat de 'bewijzen van echtheid' van belangrijke websites uitgeeft, de zogenoemde PKI-certificaten. Telkens als je een (belangrijke) site zoals DigiD bezoekt, controleert de browser automatisch of de site 'echt' is. Dit is sinds de inbraak niet zeker meer.

Is het mogelijk dat je DigiD-wachtwoord nu al in handen is van anderen? (@janwillemjanse/@WendyAntalle)
Het is niet gegarandeerd dat dit niet zo is. Over de kans dat dit ook daadwerkelijk zo is, wordt door experts verschillend gedacht. De informatie die met hulp van DigiD verzonden is, zou in theorie ergens anders terechtgekomen kunnen zijn en (in theorie) zelfs opgeslagen kunnen zijn.

Welke risico's heb ik nou daadwerkelijk gelopen door al die tijd gewoon Belastingdienst.nl en zo te gebruiken? (@tomklaver)
Tot nu toe is alles nog theorie. Er zijn geen bewijzen voor misbruik. In de zogenoemde logfiles van DigiD zijn geen sporen van ongewenst verkeer gevonden. Het kan ook zijn dat die logfiles door derden zijn bewerkt. Ook dat is in theorie mogelijk.

Moet ik mijn wachtwoord van DigiD veranderen? (@EtienneHsum)
Minister Donner heeft daarover verder niets gezegd. Om online je wachtwoord te veranderen moet je met je oude wachtwoord inloggen. Het is verstandiger de komende dagen DigiD helemaal niet te gebruiken.

Wat hebben die Iraniërs nou precies gedaan bij de hack? Het rootcertificate van Diginotar te pakken gekregen? (@ruudgreven)
Op 19 juli is er ingebroken op het netwerk van Diginotar. Waarschijnlijk is de sleutel (root key) van buitenaf te benaderen geweest. De experts die de NOS gesproken heeft, vinden dit op z'n minst opmerkelijk. Waarschijnlijk heeft de hack (inbraak) vanuit Iran plaats gevonden.
Ik heb Firefox 6.0.1, en als ik naar een https-beveiligd pagina van digiD ga, dan zie ik geen melding? En er wordt nog keurig aangegeven dat Diginotar wordt gebruikt?

Waarom zie ik geen waarschuwing?

Welke risico's heb ik nou daadwerkelijk gelopen door al die tijd gewoon Belastingdienst.nl en zo te gebruiken?

Volgens mij gebruikt mijn.belastindienst.nl al tijden een Versign certificaat.

Deze hack is ook niet specifiek gevaarlijk voor websites die een certificaat van DigiNotar gebruikten, maar voor SSL in het algemeen. SSL werkt doordat alle gebruikers van SSL erop vertrouwen dat de bedrijven die SSL certificaten mogen verstrekken dat ook goed doen.

SSL certificaten werken met publieke en private sleutels om de echtheid te controleren. Een berichtje versleuteld met een de ene kan alleen ontsleuteld worden met de bijbehorende andere, en andersom. Er zijn een aantal CA's (Certificate Authorities) die door browsers standaard vertrouwd worden (Verisign, voorheen dus ook Diginotar) en waarvan de publieke sleutels standaard in de browser zit. Een deel (ik vermoed een sha1-sum oid) van een certificaat wordt door een CA met hun private sleutel gecodeerd en bij het certificaat gevoegd, en dit zou een CA alleen mogen doen als ze zeker zijn dat het certificaat echt is (bijv. dat een certificaat voor *.google.com ook echt is aangevraagd door Google zelf, en niet door een of andere overheid) Browsers kunnen dat door de CA gecodeerde deel weer decoderen met de publieke sleutel die ze hebben en controleren (met die sha1-sum) of het certificaat ook dat certificaat is dat de CA had goedgekeurd. En omdat het met de publieke sleutel kon worden gedecodeerd, en alleen data die met de private sleutel van de CA met de publieke sleutel kunnen worden gedecodeerd, weet de browser zeker dat het de CA was die het goedkeurde.

Als de hacker dan zelf willekeurige certificaten konden ondertekenen (de sha1-sum versleutelen met de private sleutel) konden ze in principe een geldig SSL-certificaat maken voor iedere willekeurige website. En doordat de browser denkt dat de sleutel was ondertekend door een vertrouwd bedrijf, keurt die het automatisch goed. En tada: de hacker kan zich voordoen als iedere willekeurige site, klaar voor een man-in-the-middle attack.

Dat is de achilleshiel van SSL: het vertrouwen in de CA's. Dat zijn ook maar bedrijven die geld willen verdienen!

(Er wordt wel gewerkt aan alternatieven, bijvoorbeeld door in de DNS server ook mee te geven welke certificaten voor een domein gebruikt mogen worden (storing SSL/TLS keys in DNSSEC-secured DNS records) en Google Chrome heeft bijvoorbeeld de certificaten voor Googles domeinen zelf aan boord, en vertrouwd alleen die voor die domeinen, en niet andere certificaten die door een CA zijn uitgegeven.)
Dankewel voor de toelichting Jelmer. Als ik het dus goed begrijp, kan het zo zijn dat als ik op een overheidswebsite inlog en ik verstuur gegevens daar naartoe, dat er een computer tussenhangt (man-in-the-middle) die die gegevens opvangt? Begrijp ik het zo goed? En die gegevens zouden dus onder andere je gebruikersnaam en wachtwoord kunnen zijn?
Als jij normaal gesproken verbinding maakt met digid.nl dan krijg je een berichten van de server van digid.nl waarvan je weet dat het alleen met een bepaald certificaat kan zijn gemaakt (zelfde publieke-private sleutel verhaal, het certificaat wat je browser ontvangt en wat ondertekend is is de publieke sleutel voor die berichten) en daarvan uitgaande heeft de digid.nl website de private sleutel om die berichten te kunnen maken. En die houden ze natuurlijk goed geheim.

Als ik nu zelf een publieke en private sleutel maak en ik een CA zover kan krijgen dag ze voor mij de publieke sleutel met hun root certificate willen ondertekenen voor de domeinnaam digid.nl, dan kan ik een server ergens neerzetten en je naar mijn site toelokken. (door je /etc/hosts bestandje aan te passen en te laten verwijzen naar mijn ip-adres voor digid.nl, of door je dns-server te spoofen) Mijn site kan zich dan voordoen als digid.nl want de sleutels en certificaten kloppen allemaal, en je logt bij mij in in plaats van de echte digid.nl.

Ik kan me voorstellen dat de Iraanse overheid niet zover ging, maar meer als server in het midden ging hangen en dat ze dus zich voordeden als mail.google.com, en ondertussen al het verkeer doorstuurden naar de echte mail.google.com. Zo konden ze dus al het verkeer afluisteren. Normaal had dat niet gekund want ze kunnen berichtjes die over ssl worden verstuurd niet decoderen: zelfde publieke-private sleutel verhaal.

Zoiets is het volgens mij. Ik weet het niet helemaal zeker, ik heb me er niet echt in verdiept maar dit is hoe ik begrijp dat heel ssl werkt.
Oké, maar nu op dit moment... als je op een site inlogt die met DIgiD is beveiligd, wat kan er dan concreet misgaan?
Het zou kunnen dat je browser niet praat met en je wachtwoord verstuurt naar de servers van de overheid, maar met servers van iemand anders die een certificaat heeft vervalst. (Of de private key van de digid servers heeft gestolen, dat kan in theorie ook)
Oké. Wel raar... maar ik ga de komende dagen in ieder geval maar niet DigiD'en.
Gewoon geen geheime gegevens zoals wachtwoorden sturen naar sites die een certificaat van Diginotar gebruiken, omdat Diginotar certificaten blijkbaar zijn "afgegeven" aan mensen die niet de eigenaar zijn van zo'n site. Dus je weet niet zeker dat de server waarmee je praat van de eigenaar is van de site.
Concreet betekent dat dus dat je een aantal overheidssites tijdelijk niet kunt gebruiken.

Reageren