Nog maar een maand geleden berichtten we over een grote terugroepactie van certificaten georganiseerd door Sectigo. Ze zouden ongeveer 6000 certificaten intrekken, voornamelijk van Nederlandse bedrijven. Dit lieten ze 6 dagen op voorhand weten.
Let’s Encrypt’s reactie valt nog het best te omschrijven als ‘wat zij kunnen, kunnen wij beter’, en zij kondigden doodleuk aan dat zij 3 miljoen certificaten zouden intrekken, met een dead-line van 5 dagen.

De laatste dag van februari werd een bug gevonden (en verholpen) die ervoor kon zorgen dat certificaten werden uitgegeven terwijl één van de verificaties verouderd was. Voordat een certificaat kan worden uitgegeven, moet je bewijs aanleveren dat je de domeinnaam of de webhosting beheert. Deze controle is, ondanks de bug, steeds correct uitgevoerd.
Het ging echter mis bij de tweede controle. Deze v
erifieert of er ook een zogenaamd “CAA” -record is ingesteld op de domeinnaam. Als dit het geval is, mogen alleen de certificaatautoriteiten die in dat record worden vermeld, een certificaat uitgeven. Let’s Encrypt zou het CAA-record niet voor elk certificaat controleren, maar zich soms baseren op eerder opgehaalde informatie. Deze info kon tot maximum 30 dagen oud zijn.

Omdat dit niet helemaal volgens de regels van het CA/B-forum was (de organisatie die de zeer strikte regels voor certificaatautoriteiten bepaalt), kondigde Let’s Encrypt aan dat ze alle certificaten zouden intrekken waarvoor de controle van het CAA-record meer dan 8 uur oud was toen het certificaat werd uitgegeven. Dat ging over ongeveer 2,6% van alle certificaten uitgegeven door Let’s Encrypt. Dat klinkt weinig maar bij 2,6% spreek je toch over zo’n 3 miljoen certificaten die slechts 5 dagen na deze aankondiging zouden worden ingetrokken.

Alle gebruikers hadden dus bijzonder weinig tijd om actie te ondernemen en een nieuw certificaat aan te vragen. Op de dag van de deadline had slechts ongeveer de helft van hen hun certificaat opnieuw laten uitgegeven. Op het aller laatste moment besloot Let’s Encrypt dat het intrekken van deze certificaten toch niet zo dringend was en dat ze alleen certificaten zouden intrekken waarvoor al een re-issue was aangevraagd.

Zowel met Sectigo als met Let’s Encrypt was een redelijk kleine bug de oorzaak van het terugroepen van deze certificaten. De kans op daadwerkelijke schade was erg klein. Waarom riep Sectigo de certificaten dan daadwerkelijk terug en Let’s Encrypt niet? Waarom kon Let’s Encrypt deze deadline herroepen? Zou dat misschien iets te maken hebben met het feit dat de twee meest invloedrijke leden van het CA/B-forum (Mozilla / Firefox en Google / Chrome) ook worden vermeld als enkele van de grootste sponsors van Let’s Encrypt?

Auteur

Comments zijn gesloten