Chrome doet het anders:
http://www.zdnet.com/arti...ficate-revocation-better/
Op zich is OCSP een ramp, met name in de naïeve implementatie. Het oorspronkelijke idee was dat de browser voor elke SSL certificaat wat hij krijgt bij de Certificate Authority gaat navragen of dat certificaat niet verlopen is. Veel extra data wat niet nodig is, en bovendien weet de CA zo welke sites je wanneer bezoekt, en dat is vanuit een privacy-oogpunt niet gunstig.
OCSP Stapling is heel veel beter: je laat de klus aan de server. De server vraagt regelmatig aan CA om te bevestigen dat zijn certificaat niet verlopen is, en krijgt daartoe een handtekening van de CA. Deze bevestiging wordt meegestuurd met het certificaat. De browser kijkt naar die handtekening en verifieert of de handtekening door de juiste partij (de CA dus) gezet is, en zo ja, dan wordt het certificaat vertrouwt.
Nu is het wel zaak dat deze handtekening met het juiste certificaat van de CA ondertekend wordt, en dat is wat er nu bij MS misgaat: de ondertekening gebeurt met een verlopen certificaat. Hierdoor is de OCSP handtekening niet te vertrouwen en daar geeft de browser een foutmelding over.
Google heeft in 2012 al, terecht, geconcludeerd dat de OCSP-implementatie waarbij de verificatie aan de browser overgelaten wordt inefficiënt en slecht voor de privacy is (als anderen inbreuk maken op privacy interesseert het Google blijkbaar ineens wel

). In plaats daarvan hebben ze een alternatieve implementatie gedaan. Google verzamelt ingetrokken certificaten (in essentie Certificate Revocation Lists, CRL's) van CA's en bundelt die en stuurt die naar de browser, gelijk met andere updates aan de browser. Hiermee worden ingetrokken certificaten ook redelijk snel verwerkt, al zal het langer duren dan met een OCSP.
Het bestaansrecht van OCSP is de situatie dat een private key uitlekt die een server gebruikt voor zijn SSL-implementatie. Als de private key uitlekt kan iedereen zich voordoen als de server en kan de veiligheid dus niet meer gegarandeerd worden. Daarom kun je het certificaat intrekken (waarna de status van het certificaat op ingetrokken wordt gezet), zodat browsers het certificaat niet zullen vertrouwen ondanks dat het nog niet verlopen is.
Een browser die dus niets doet met revoked certificates is wel een veiligheidsrisico. OCSP browser-side is een privacy-issue. Daarmee is OCSP Stapling of een aanpak zoals Google gebruikt voor Chrome de juiste manier om het probleem aan te pakken. OCSP Stapling uitschakelen zoals hier als workaround wordt aangeraden is dus zeker geen goed idee.
[Reactie gewijzigd door MadEgg op 22 juli 2024 21:46]