SSL: De klok en de klepel
Ronald Prins
Agenda • Crypto bouwstenen – heel klein beetje techniek • SSL – wat zegt het slotje • De keten van trust, en de zwakste schakel • Misbruik • En nu?
Een beetje cryptografie • Public-key encryption
En andersom • Public-key signing
En wat is nu een certificaat?
Het slotje in de browser • Wat je ziet is echt van Fox-IT, en • niemand kan afluisteren wat je op deze site doet, • beweert “GeoTrust”, • en het is nog groen ook
En dat slotje voorkomt dit • Man-In-The-Middle attack
GeoTrust • “Groen” kost $100 meer • Maar niemand weet het eigenlijk
Wat doet GeoTrust voor $100 meer • Controle of je ‘gezag’ hebt over een domein • Bestaat een entity met die naam in dat land • Heb je enig zeggenschap over die ‘entity’ • Fox-IT.tr, Fox-IT.cn kan ik dus niet voorkomen
En waarom vertrouwen we GeoTrust? • Lid van het CA/Browser – forum • The member organization operates a certification authority that has a current and successful WebTrust for CAs, or ETSI 102042 or ETSI 101456 audit report prepared by a properlyqualified auditor, and that actively issues certificates to subordinate CAs that, in turn, actively issue certificates to Web servers that are openly accessible from the Internet using any one of the mainstream browsers.
ETSI 101 456 • Standaard voor Certificate Authorities • Electronic Signatures and Infrastructures (ESI); Policy requirements for certification authorities issuing qualified certificates • Auditors in Nederland (RvA): – BSI (KPMG) – PwC
Het hele rijtje • ‘standaard’ SSL certificaat – Domain name check
• SSL-EV – $100 meer, dus veilig
• Qualified (gekwalificeerd, EU richtlijn) – Handtekening hiermee telt onherroepelijk!
• PKI Overheid – Eigen tree, beheer bij Logius
Bekende foutjes van CAs • 2008
[email protected] (Thawte, a Verisign reseller) • 2008 *.Mozilla.com • 2011-03 gmail, skype, hotmail, yahoo, mozilla, reseller van Comodo • 2011-04 EFF: 37000 unqualified names like ‘localhost’ or ‘exchange’
Wat kan er misgaan? • Met een vals certificaat: – Voordoen als een webserver van iemand anders (phishing, interceptie) • Maar heb je werkelijk een vals certificaat daarvoor nodig?
– Valse, onherroepelijke handtekeningen zetten • “Laat de auditeurs zelf ook verplicht certificaten afnemen”
Wat weten we sinds kort? • Dat browser vendors (Mozilla, Microsoft, Google) uiteindelijk bepalen wie we mogen vertrouwen • Dat revocatie (intrekking) op basis van blacklisting werkt, waar je eigenlijk whitelisting wil • Dat het meest kritische component in een PKI niet kan vertellen wat het gedaan heeft (HSM).
Klopt het trust model? • Browser • Auditor • 300$ • Wat als een Iraanse CA zich aanmeldt bij het CA/B forum? • Andersom, waarom zouden Russen ons vertrouwen overnemen?
I told you so! (2000) • Bruce Schneier in 2000
10 risks • Who do we trust, and for what? • Who is using my key? • How secure is the verifying computer (or person) • Which John Robinson is he? • ...
En nu? • Ander trust model – Hierarchy vs web-of-trust (PGP) – Teveel trust concentratie bij een paar organisaties – Root CA’s niet van browsers vendors maar van .. – 650 CA’s, meer of juist minder.
• Paranoide: browser plug-ins – Firefox add on: Certificate patrol – OCSP checks aan
• CA/B Forum hogere eisen aan CAs
Moxie Marlinspike (aug 2011) • Over Comodo: – “The truth is, somewhere along the line, we made a decision to trust Comodo”, he said. “And now we are locked into trusting them forever, and this is the essence of the problem”.
• Trust Agility – Het vertrouwen in een CA moet opgezegd kunnen worden – Gebruikers moeten zelf hun CAs kunnen kiezen
• Maak gebruik van CrowdSourcing
‘use many notaries’
• Maar: Wat als MITM vlak voor de webserver gebeurt • Beschermt niet tegen: www.rab0bank.com
conclusies • SSL leveranciers (CAs) zijn nu de zwakste schakel • Verbeterde CA/PKI omgeving nog niet beschikbaar • De gebruiker en de client-side zijn evengoed zwakke schakels • Veiligheid op Internet zal altijd ‘vluchtig’ blijven – Meer vertrouwen op snelle detectie en response
Goed leesvoer
Vragen / discussie •
[email protected] • twitter.com/cryptoron