De ontwerpers van ssl kozen er begin jaren negentig voor om certificaatautoriteiten (CA's) te gebruiken om de echtheid van websites te controleren. Aan die beslissing zitten wij nu nog vast, volgens beveiligingsonderzoeker Moxie Marlinspike. 'Op dit moment lijkt iedereen het er over eens te zijn dat het CA-systeem niet lang meer te gaan heeft. Maar wat is nou precies het probleem?'
'Op dit moment lijkt iedereen het er over eens te zijn dat het CA-systeem niet lang meer te gaan heeft', schrijft Marlinspike in april 2011 op zijn blog, onder de titel SSL en de toekomst van authenticiteit. 'Maar wat is nou precies het probleem?'
Vervolgens laat Marlinspike allerlei bezwaren de revue passeren, die momenteel tegen het CA-systeem in stelling worden gebracht. Om uiteindelijk zelf de vinger op juist die zere plek te leggen, die volgens hem de kern van het probleem vormt: het ontbreken van 'trust agility'.
Te veel CA's
'Er zijn te veel CA's, zeggen velen', vervolgt Marlinspike. 'Inderdaad, 650 autoriteiten, dat zijn er een hoop.' Maar volgens de beveiligingsonderzoeker is dat niet de kern van het probleem: 'Stel je voor dat er maar één geweest zou zijn? Dat zou ik ook niet echt een verbetering vinden. Zo'n organisatie zou kunnen doen wat hij wil. Hij zou zoveel geld kunnen vragen als hij wil. En stel je voor dat de enige certificaat-autoriteit in handen van de Chinese regering zou zijn?'
Rotte appels
'Anderen zeggen: er zitten een paar rotte appels tussen de CA's.' Maar die zienswijze doet geen recht aan de volle omvang van het probleem, aldus de beveiligingsonderzoeker: 'Toen VeriSign nog de enige CA was, bood diezelfde organisatie al een dienst aan providers om te voldoen aan hun wettelijke bewaartermijn. Verisign had dus een afdeling die afluisterdiensten verkocht. Terwijl diezelfde organisatie de taak toevertrouwd had gekregen om afluistervrije communicatie te faciliteren.' En die werkwijze geldt volgens Marlinspike naar alle waarschijnlijkheid voor alle CA's: 'Ik vermoed dat er geen CA te vinden is die geen vuile handen heeft.'
Regionale beperkingen
Ook het feit dat certificaat-autoriteiten geen geografische beperkingen wordt opgelegd, vormt volgens Marlinspike niet de kern van het probleem: 'Dan zijn er nog mensen die denken dat het een oplossing zou zijn als CA's slechts delen van het internet mogen ondertekenen. Dus: de United States Department of Homeland Security (DHS) zou geen certificaten voor Chinese websites mogen ondertekenen, en andersom. Maar zo'n regel pakt ook niet de essentie van het probleem aan. Er zijn namelijk genoeg mensen die liever geen certificaten laten ondertekenen door de DHS. En om de Chinese regering alleen Chinese sites te laten ondertekenen lijkt mij ook niet echt een grote winst.'
Trust agility
Het huidige probleem met het CA-systeem kan volgens Marlinspike worden terug gebracht tot één ontbrekende eigenschap: trust agility. 'Als ik op dit moment besluit dat ik een bepaalde CA niet vertrouw, wat kan ik dan doen? Het beste zou zijn om de certificaten van die CA uit mijn trusted CA database te verwijderen. Maar dan zou een groot percentage van de beveiligde sites die ik bezoek het niet meer doen.'
'Wat er in feite aan de hand is, is dat er op een bepaald moment een beslissing is genomen om te vertrouwen op een bepaalde organisatie, en dat we vervolgens voor altijd vast zitten aan dat vertrouwen, voor altijd. En als dat zo is, waarom zou die leverancier dan nog zijn best doen om ons vertrouwen niet te beschamen?'
'Het tegendeel van deze situatie is trust agility. Dat bestaat uit twee belangrijke onderdelen: individuele gebruikers kunnen zelf hun authenticatie-leverancier kiezen en ze kunnen die beslissing herzien op elk moment dat ze willen.'
DNSsec en Dane zijn hiërarchisch
DNSsec en Dane wordt door velen gezien als een vervangingsmechanisme voor het authenticatie-deel van ssl. Dat is ten onrechte, aldus de beveiligingsonderzoeker: 'Het idee is dat in plaats van je website te laten ondertekenen door een CA, je die handtekening zelf in je DNS zet. Omdat DNSsec wordt verondersteld te verzekeren dat de DNS-respons die een gebruiker ontvangt authentiek is, zou het moeten voorkomen dat iemand een man-in-the-middle aanval uitvoert. '
'Het aantrekkelijke aspect van DNSsec lijkt dat het een gedistribueerd systeem is. Dat aspect roept fantasieën op over het wegvagen van alle CA's, die ons al zo lang te veel geld vragen en te weinig presteren, om het te vervangen door een gedistribueerd vertrouwenssysteem.' Maar dat is ten onrechte, zegt Marlinspike: 'Een nadere inspectie leert dat deze vertrouwensbanden extreem hiërarchisch zijn, net als in de huidige ssl-situatie.'
DNSsec en vertrouwen
'Om DNSsec te gebruiken moet je namelijk drie groepen mensen vertrouwen: de registrars (die domeinnamen registreren, red.), maar de meeste daarvan staan niet bekend om hun sterke beveiliging. De topleveldomeinen (het meest rechtste gedeelte in een internetdomeinnaam, red.), maar dan hebben we opnieuw te maken met Verisign, en in het geval van landextensies met landen. Vertrouwt iedereen die een .io, .cc of .ly domein bezoekt de regering die achter die domeinen zit? Of je het fijn vindt of niet, regeringen zijn geneigd om meer geïnteresseerd te zijn in het afluisteren dan in het beveiligen van communicatie. En tot slot de root. Dat is Icann. Als de recente domeinnaamkapingen enige aanwijzing geven voor de toekomst, dan moeten we misschien voorzichtig zijn om al ons vertrouwen te vestigen op veilige communicatie via deze organisatie.'
Trust agility
'Samengevat: de DNSsec vertrouwensbanden hangen af van twijfelachtige organisaties en regeringen, net zoals het huidige CA-systeem. Erger nog: waar een browserleverancier een CA nog uit zijn trusted CA database kan verwijderen, bij DNSsec kan zoiets niet.'
'Hoe beter je het DNSsec-proces bestudeert, de vreemder het wordt: sites creëren certificaten, die certificaten worden ondertekend door een marginale derde partij, en internetgebruikers worden geacht die handtekeningen te accepteren zonder ooit de kans te krijgen om die vertrouwensband te herzien. Klinkt dat bekend?'
'Als we geen oplossing vinden die trust agility biedt, blijven we in hetzelfde schuitje zitten', besluit Marlinspike.
Blog Moxie Marlinspike
Het bovenstaande is een Nederlandstalige samenvatting van een blog van Moxie Marlinspike waarin hij zijn bezwaren tegen het huidige CA-systeem uiteenzet. De volledige Engelstalige blog, die hij in april 2011 schreef, is hier te vinden.
Convergence
Hier is de Convergence bèta te downloaden, het alternatief dat Marlinspike voorstelt. Hier vindt u meer uitleg over Convergence.
Moxie Marlinspike op Black Hat 2011
De video van de presentatie van Moxie Marlinspike over Convergence op Black Hat 2011 in augustus 2011 is hier te zien.
Zolang er dan geen beter alternatief voor de huidige gang van zaken bedacht kan worden: dan wellicht maar de VN CA laten worden?
@mm
Door de VN CA te laten worden zorg je ervoor dat een beveiligingslek wereldwijde problemen zal veroorzaken in plaats van (zoals nu) probleem dat beperkt is tot alle afnemers van een CA.
Ik zie zelf het meeste in een gedistribueerd trust model.
Ik vind alle kritiek op het CA gebeuren wat gratuit. Nu er iets is voorgevallen staat iedereen in de rij om te roepen dat er een structureel probleem is met certificaten. Waar waren al die mensen dan de afgelopen 15 jaar? Is er dan ook niet een veel groter structureler probleem met bijvoorbeeld DNS?
Wat volgens mij de conclusie moeten zijn:
een partij die we hadden moeten kunnen vertrouwen heeft de zaak verbruid, waardoor ons vertrouwen in het internet is beschadigd.
Wat er wel moet gebeuren: de normen t.a.v. invulling van security moeten worden aangescherpt, en het toezicht op werking en bestaan van de normen moet beter worden geregeld. Net als in de luchtvaart.
En dan moeten we allemaal accepteren dat er een zeker restrisico is als we online zaken doen. Ook dat is weer net zoals in de luchtvaart.