Ik neem aan dat u het goede nieuws al lang meegekregen heeft. Diginotar is gekraakt. Ja, dat nieuws was inderdaad moeilijk te missen. Hoezo goed nieuws? Nou, voor ons op een Security beurs waar we allemaal onze spullenboel willen verkopen, is dat goed nieuws. Meer aandacht voor beveiliging is meer geld voor ons. We hebben eerst rotzooi verkocht, een puinhoop aangericht en zijn daar goed voor betaald. Nu zullen we betaald worden om het beter te doen.
De vraag waar ik op in wil gaan bij Diginotar is de Waarom vraag. Die is in dit dossier nog niet gesteld. We zijn als echte IT-ers als wilden op het oplossen van het incident gesprongen, om zodra dat gelukt is, zo snel mogelijk weer over te gaan tot de orde van de dag. Niet goed. Laten we dan nu even stilstaan bij het waarom. Waarom is PKI het doel van deze aanval?
PKI is een wereldwijd beveiligingssysteem. Het is het enige wereldwijde beveiligingssysteem en de technologie zit in vrijwel ieder ander systeem ingebakken. Het is een onmisbare schakel in iedere beveiliging. Deze schakel is de afgelopen jaren slecht onderhouden. Zwaktes die aan het licht zijn gekomen, worden zelden gefixed. En er zijn nogal wat zwaktes bekend, sommige al sinds 1995. En sommige zijn erg goed gedocumenteerd.
Zijn er dan geen andere en betere doelen voor een aanvaller? Er zijn wel andere wereldwijde systemen, zoals BGP en DNS, maar die zijn al vaak aangevallen en inmiddels zijn ze heel robuust. Bovendien zitten die niet in allerlei andere systemen. Er is geen vergelijkbaar doelwit.
Om aan te tonen waarom PKI tegenwoordig zo zwak is kan ik natuurlijk alle gaten in PKI gaan uitleggen. Maar dan moet ik eerst uitleggen hoe PKI werkt, in alle varianten, om dan per variant de problemen te benoemen. Ik heb maar 45 minuten, dus dat gaat niet. Bovendien verzuip ik je dan in al de details en onthoud je waarschijnlijk helemaal niets. Daarom doe ik het als geschiedenisles - zodat hoofdlijnen hopelijk beter naar voren komen.
In den beginne, nou ja in 1978, waren er drie heren die met een oplossing kwamen voor het grootste probleem van cryptografie, te weten het op de juiste plek krijgen van de sleutels. Twee van hen - Diffie en Hellman - werden wereldberoemd in de cryptografie en gaven hun naam aan de eerste asymmetrische cryptografie.
We gaan nu niet in op het klassieke verhaal van Bob en Alice waarmee asymmetrische cryptografie normaal toegelicht wordt - daar gaat het helemaal niet om. We moeten alleen scherp hebben dat iedere gebruiker een private en een publieke sleutel krijgt. De private is jouw sleutel en de publieke is voor de rest van de wereld. En met deze combinatie kun je door middel van allerlei slimme trucjes veilig communiceren met andere mensen. Diffie, Hellman en Merckle konden het probleem net niet helemaal oplossen. Wat overbleef was de vraag hoe je publieke sleutel bij iemand die je niet kent te krijgen.
In 1988 kwam het antwoord, vanuit de leidende hype van dat moment. Stop de publieke sleutels in een hiërarchie, een directory. Dat zou dan het telefoonboek van het internet worden. Dat was nodig, want er zaten al een paar duizend mensen op en die kenden elkaar niet allemaal. Zo werd de "I" van PKI werkelijkheid en kreeg het de codenaam X509, omdat het onderdeel van X500, de wereldwijde directory werd. Hiermee kon iedere persoon zich identificeren op Internet. Identiteit was nodig om vertrouwen mogelijk te maken; je moet immers weten wie je voor je hebt, nietwaar?
Bij PKI heb je het over 'trust', vertrouwen. Maar wel over verplicht vertrouwen. Die directory moet je vertrouwen. En die PKI sleutel, die je krijgt, die moet je met je leven bewaken. Anders ben jij de sigaar. Waarom moet dat? Omdat het anders niet werkt. En je hebt daar niets in te willen.
Met de directory kwam de exploitant van de directory prominent in beeld. Deze exploitant staat bovenaan de voedselketen en moet dus door iedereen geaccepteerd worden. Hiervoor kwam de naam Trusted Third Party in zwang. X500 ging uit van het AT&T van voor de splitsing in baby bells in 1984, een monolithisch staatsbedrijf dat gewend was dat alles en iedereen deed wat het bedrijf wilde. Omdat het een telefoonmaatschappij was, noemden ze het geheel een telefoongids. Vandaar de kreet directory.
De praktijk bleek echter weerbarstiger. AT&T werd vanwege onoorbare monopolistische handelingen opgesplitst en niemand anders kon de wereldwijde rol overnemen. Bovendien bleek de X500 directory een technisch gedrocht.
"The X.500 linkage [...] has led to more failed PKI deployments in my experience than any other. For PKI deployment to succeed you have to take X.500 and LDAP deployment out of the critical path".
- Phillip Hallam-Baker, Verisign principal scientist
X509 werd een oplossing voor een probleem zonder eigenaar. In 1993 werd de volgende poging gewaagd om tot één wereldwijde PKI structuur te komen, met PEM (Privacy Enhanced e-Mail). Ook hierbij kreeg ieder individu één PKI certificaat om met andere individuen te kunnen communiceren. PEM introduceerde een drielagenmodel met een strikte hiërarchie. Alleen: niemand durfde het aan om aan de top van de hiërarchie te staan: de top zou dan immers aansprakelijk zijn voor de schade. PEM verdween in een bureaulade, terwijl PKI X509 vanwege PEM inmiddels v2 was geworden.
Vlak daarna deed het World Wide Web zijn intrede. In plaats van enkele tienduizenden kwamen er miljoenen gebruikers. Dat bracht de nodige nieuwe problemen met zich mee, en PKI was als oplossing op zoek naar een probleem de aangewezen kandidaat om het grootste probleem van het opkomende web op te lossen.
Dat grote probleem was DNS - de identiteit van de server. Hoe weet een gebruiker dat ie op de juiste machine uitgekomen is? Van een client side oplossing voor identiteit werd PKI een middel om een server side DNS probleem op te lossen. PKI werd SSL. Zo werd X509v3 geboren. Volgens PKI-goeroe Peter Gutmann "an expensive way of doing authenticated DNS lookups with a TTL of one year". Sinds de opsplitsing van AT&T was er geen aangewezen Trusted Third Party meer, maar er waren wel een paar ondernemingen die dit durfden te worden. Maar wel met het expliciet uitsluiten van aansprakelijkheid.
Iedere TTP begon een eigen certificaathiërarchie, en deze werden hier en daar middels cross-signing aan elkaar geknoopt. Zo ontstond een jungle van meerdere directories waarin niemand de baas was en niemand aansprakelijk was. En omdat de ketens aan elkaar geknoopt werden, ontstond een langere keten met meerdere zwakke en deels onzichtbare schakels.
De oplossing van het DNS vraagstuk was verder echter een voltreffer. Om aan de vraag te kunnen voldoen werden TTP's uit de grond gestampt. In de internet bubble werd gesteld dat een goede PKI randvoorwaardelijk was voor e-Commerce, zodat iedereen wel TTP wilde worden. Voor veel mensen wás beveiliging alleen maar PKI. Overheden investeerden miljarden en in ons land leidde dit tot een merkwaardig stukje wetgeving rond digitale handtekeningen die er ook nu nog niet zijn. Het grote belang dat aan PKI werd toegekend leidde tot veel aandacht: voor mooie auto's, luxe kantoren en interessante optieregelingen. Helaas ging dat wel ten koste van de aandacht voor PKI: het product was eigenlijk ergens anders voor bedoeld en nog niet af. De tekortkomingen werden niet opgelost bij gebrek aan aandacht. Nu ja, de showroom van een BMW-dealer is voor de meeste mensen nu eenmaal veel interessanter dan een stuk code.
Op 10 maart 2000 knapte de internet bubble en begon de lange val. PKI was niet doorgebroken en de internethype leidde tot een ongekende financiële crisis. En PKI viel nog harder dan de rest. De val van PKI eindigde met een harde klap toen in 2003 een topspeler in PKI-land, Baltimore, ooit 7 miljard dollar waard, verdween.
Na 2003 herstelde de ICT zich van de internetbubble. PKI herstelde zich echter niet: het was een besmette term vanwege tal van dramatisch mislukte projecten en iedereen hield zich daar dan ook zo ver mogelijk van. De tekortkomingen werden niet opgelost bij gebrek aan aandacht. We bleven bij X509 versie 3.
Nu werden er in die jaren wel verbeteringen bedacht, deels hele goede. Maar deze werden door vrijwel niemand doorgevoerd. PKI moest vooral goedkoop en dat leidde tot broodjeszaken zoals Diginotar, die nooit genoeg geld kregen om de beveiliging goed te doen of hun producten te voltooien. Hoeveel jaar heeft Diginotar ook al weer winst gemaakt? Precies: goedkoop is duurkoop en onze overheid liep hierbij voorop. Het is dan ook goedkoop om Diginotar alle schuld in de schoenen te schuiven.
In dezelfde periode groeide het gebruik van PKI door tot in de haarvaten van alle nieuwe technologie, omdat de behoefte aan sterke cryptografie nu eenmaal groot was. Smartphones, de Cloud, SOA, smartcards, tablets, iedere vernieuwing leunde op het fundament van PKI. Helaas is dit fundament nog steeds wankel.
Security is intussen een eerzaam beroep geworden, waarin tal van mensen een mooie carrière vonden. Kennis opdoen van hoe de "I" van PKI in feitelijk in elkaar zit, hoorde echter niet in het curriculum. Het bleef een besmet onderwerp. Het adagium is dat we certificaten gebruiken omdat het anders niet werkt. Maar voorbij dat punt komt vrijwel niemand. Zo besteedt het gemiddelde CISSP leerboek meer bladzijden aan exotische algoritmes als Twofish die niemand gebruikt dan aan PKI - en dat zit overal in. Dit gebrek aan aandacht en kennis is een recept voor rampen en de voornaamste reden van de wankele staat van PKI.
We kregen in 2010 een vooraankondiging van wat voor rampen kunnen gebeuren. Stuxnet, een virusaanval op het nucleaire programma van Iran, gebruikte gestolen Authenticode certificaten om een gemanipuleerde driver te installeren op de SCADA systemen. Certificaten die gestolen worden door Botnets zoals ZEUS. Dit had de beveiligingsindustrie wakker moeten schudden. Dat gebeurde niet. We hadden het te druk met de Cloud te beveiligen en andere frivoliteiten waar klanten wel voor wilden betalen.
Dit jaar begon het echt met de comodohacker. Bij een derde hackpoging trof deze naar verluidt Iraanse hacker de Nederlandse TTP Diginotar. Deze organisatie faalde in het crisismanagement en eindigde in een faillissement.
Probleem opgelost?
Verre van.
Het antwoord op de vraag waarom Iran inbrak bij Diginotar maakt duidelijk dat het geen geïsoleerd incident is. De Iraanse overheid brak in om de eigen burgers te kunnen begluren. Om dat te kunnen doen, was een aanval op PKI een logische keuze: de servers van Gmail en Facebook zijn zeker beter beveiligd dan die van de gemiddelde certificatenboer. En een inbraak daar zou zeker opvallen en snel gerepareerd worden.
De wens om de burgers te bespioneren is helemaal niet vreemd; dat willen alle overheden. Dat willen ze dan wel om verschillende redenen - en daar zitten best goede redenen bij. En nu we dankzij de social media zo veel meer kunnen op internet, zal daar ook meer gespioneerd moeten worden. De Nederlandse overheid wil dat om kinderporno te bestrijden, de Britse om relschoppers op te kunnen pakken, de Chinese om de Falun Gong te kunnen bestrijden, de Amerikaanse om filmpiraten te kunnen oppakken en de Iraanse om de oppositie te kunnen onderdrukken. Over de redenen kun je twisten, maar overheden moeten in bepaalde situaties kunnen inbreken op de beveiliging van de communicatie met computers.
Om dat te doen is het echter niet gelijk verdeeld op deze wereld. Als de Nederlandse overheid wil weten wat je op Gmail schrijft, kan zij dat via de samenwerking met de Amerikaanse overheid via de NSA achterhalen. Die optie hebben niet alle landen: een Amerikaanse inlichtingendienst zal een inzageverzoek vanuit Teheran vast niet honoreren. Sinds een jaar is ook de export van systemen om de eigen burgers te kunnen bespioneren aan banden gelegd: dictators kunnen niet meer terecht bij Siemen/Nokia of Bluecoat om commerciële apparatuur te kopen. Er blijven dus maar twee opties over voor de dictators van deze wereld: de oppositie laten winnen dan wel inbreken op de infrastructuur van westerse landen. Met een halve blik op de huidige positie van Moebarak moge duidelijk zijn wat de keuze is: ze zullen inbreken. En dat is dus cyberwar.
Immers: de aanval op Diginotar was het gebruik van geweld tegen de vitale infrastructuur van ons land. Als Diginotar in de VS had gestaan was het een formele casus belli geweest en waren wij via de NAVO meegesleurd in een oorlog. Nu ja, dat had kunnen gebeuren - het eerder gehackte Comodo is immers een Amerikaans bedrijf en een hele grote TTP. Dat de aanval een binnenlands doel diende is niet relevant - dat zie je ook bij andere oorlogen wel eens. Cyberwar blijkt dus in het echt heel anders te zijn dan voorspeld. Nu zijn oorlogen altijd anders dan de specialisten voorspellen, dus dat is niets bijzonders.
De schade die ons land opliep in de aanval op Diginotar was uiteindelijk 'collatoral damage' in een intern conflict van een verre dictatuur, dat zich niets aantrekt van hoe wij de landsgrenzen op internet voor ons zien. Een groot probleem van dit soort aanvallen is de knulligheid ervan en de daardoor grotere schade dan nodig is. Los van de abominabele beveiliging bij Diginotar was hetzelfde resultaat immers te bereiken geweest met één gekocht certificaat van een willekeurige TTP: er zijn er nog genoeg die certificaten uitgeven die misbruikt kunnen worden om zelf weer geldige certificaten te creëren. De schade had er niet hoeven zijn, en de kans op ontdekking zou ook kleiner zijn geweest.
Het probleem is dat overheden op het gebied van hacken beginners zijn. Een beetje googlen naar exploiteerbare gaten in SSL was blijkbaar te moeilijk. En dus richten ze schade aan waar die te vermijden is. Met bijna tweehonderd overheden waarvan bijna de helft dictatuur en in overgrote meerderheid Security prutsers, is herhaling van dit debacle dan ook gegarandeerd.
Hieronder zit een merkwaardige paradox. Overheden gaan moeite doen om technologie te breken die ze zelf gebruiken om zich te beveiligen. Hoe het ook zij, het is vast goed voor de Security Sector.
Dit jaar zijn we een nieuwe tijd binnengegaan in informatiebeveiliging. Eerst hadden we alleen de hackers om de eer. Het motto in beveiliging was dat die toch niet tegen te houden waren, en er waren er niet zo veel dus dat was niet zo erg. Beveiliging richtte zich op drive by attacks en technisch onbekwame interne bedreigingen. Meer kon immers niet. Sinds begin deze eeuw zijn daar de cybercriminelen bijgekomen - bij hun het om geld. Maar cybercriminelen doen vooral aan oplichting via het web en richten zich bovenal op particulieren. Voor beveiliging van organisaties is er dus weinig veranderd en het paradigma bleef beveiligen tegen interne aanvallen en drive by: meer is immers niet mogelijk.
Sinds 2010 zijn echter de landen erbij gekomen en gaat het om de macht. Als meer dan beveiligen tegen drive-by en interne bedreigingen nog steeds niet mogelijk is, hebben we een groot probleem. Want terug naar papier en typemachine gaat niet meer. Macht raakt organisaties veel meer, zeker die internationaal opereren. En collatoral damage kan ons allen treffen, weten we sinds Diginotar.
In dit nieuwe paradigma van IT Security moeten we de grote problemen echt aanpakken en niet alleen de sexy stukjes doen; dus inclusief de dossiers waar we jarenlang verre van bleven omdat ze besmet waren - PKI voorop. We moeten beginnen met het achterstallig onderhoud weg te werken. Om dat te doen moeten we eerst de boeken induiken. En die blijken eerst herschreven te moeten worden: de meeste best practices schrijven doodleuk dat je certificaten bij een TTP moet kopen en dat je dan klaar bent. Dat is geen best practice, dat is marketing.
Om kennis op te doen moeten we eerst naar de basis - de waaromvragen. Dan ga ik even vloeken in de PKI kerk. Waarom zou ik communiceren met een bekende via een onbekende? Waarom moest ik als Nederlandse burger veilig communiceren met mijn overheid via wazige derde partijen zoals Diginotar of dan nu via de KPN? Waarom moet ik de KPN vertrouwen? Wil ik dat wel?
Uiteindelijk moet ik de KPN vertrouwen dat omdat anders de browser een foutmelding geeft als ik mijn belastingaangifte moet doen. En dat doet de browser omdat het zo in de boeken staat. PKI is de toevallig gekozen oplossing voor een ander probleem dat toevallig ook hiervoor wordt ingezet. De bouwers van de browsers weten dit het beste. Zo bleek bij de Diginotarcrisis dat Google en Microsoft niet geraakt konden worden door de namaakcertificaten van de comodo-hacker, omdat zij hun eigen certificaten ingebed hebben in hun software. Ze gebruiken de I van PKI niet. Ze weten blijkbaar al jaren dat PKI in de huidige vorm onbruikbaar is.
De essentie van veilige communicatie is vertrouwen. Iedere Nederlandse burger moet blijkbaar de KPN vertrouwen om de wet niet te overtreden. En dat is uiteindelijk geborgd in een verklaring van een accountant. Nou nou. Diginotar had ook een accountantsverklaring. Lehman Brothers, Icesave en Madoff ook.
Vertrouwen is niet iets wat je kunt opleggen of halen als een toelatingsexamen met een auditor als strenge meester. Je kunt het al helemaal niet doorverkopen als een broodje kroket. Daarom is de kerngedachte van de I van PKI intrinsiek verkeerd.
DNSSec met DANE dan - is dat een oplossing?
Niet echt. Immers, in plaats van de PKI TTP wordt dan de DNS leverancier de Trusted Third Party. Dat verschuift het probleem, maar lost het niet op. Zeker omdat we ze er niet voor gaan betalen - zodat ze alleen maar een extra aantrekkelijk aanvalsdoel worden. En bovendien - DNSSec met DANE kun je niet untrusten zoals het huidige PKI. DNSSec is een mooie oplossing van het DNS probleem, maar niet van het vertrouwens- en identiteitsprobleem op Internet.
Maar wat moeten we dan? Is er dan een opvolger in beeld? Nou, er zijn een paar leuke studies naar vervanging, maar die pakken maar een deel van het probleem aan. Het uiteindelijke probleem is niet de Trusted Third Party, maar het geheel van vertrouwen en identiteit op internet. Het huidige gedachtegoed in beveiliging geeft echter wel goede aangrijpingspunten voor hoe het dan wel kan. Hoe zou PKI 2.0 eruit zien als het nu nieuw bedacht werd? Laten we er met een Web 2.0 en Identity 2.0 blik naar kijken in plaats van met de ivoren toren Security denkwijze uit 1985. Simpele regels: de gebruiker kiest zelf en is zelf de baas over de eigen identiteit zoals geformuleerd door Kim Cameron.
Voor een oplossing tussen bedrijven wijst de Federatieve technologie (WS-FED en SAML) hiertoe de weg: bedrijven bouwen samen een vertrouwensweefsel op. Dat hoeft alleen met bedrijven waar ze zaken mee doen - met de rest van de wereld hebben ze eigenlijk niets te maken. Samen en bewust - en volledig declaratief: iets mag alleen als het expliciet toegestaan is.
Voor consumenten zou een crowd based oplossing voor de hand liggen. Want wie vertrouw je meer: tien bekenden of één onbekende accountant? Identiteiten in sociale media van mensen die je echt kent zijn immers veel betrouwbaarder - probeer maar eens die updates te spoofen. Een koppeling naar Facebook en dergelijke met een Like-mechanisme (maar dan met trust) zou ons een heel eind op weg helpen. Dan vertrouw je niet Facebook maar mensen die je zelf uitkiest die toevallig ook Facebook gebruiken. Je ziet, er zijn best interessante mogelijkheden, maar er zal niet binnen enkele maanden of zelfs jaren een product zijn.
Voorlopig zullen we het dus met het bestaande X509v3 PKI bouwwerk moeten doen. Dat betekent handen uit de mouwen en neuzen in de boeken om het nog een paar jaar zonder al te grote drama's te kunnen gebruiken. Want die cyberwar, die blijft.
Door Peter Rietveld, Senior Security consultant bij Traxion - The Identity Management Specialists -
Laatste 10 columns
Deze posting is gelocked. Reageren is niet meer mogelijk.