Nejspíše jste zaznamenali objevenou zranitelnost v OpenSSL nazvanou Heartbleed, která může vést nejen k odcizení privátních klíčů z SSL certifikátů. Pro odstranění tohoto problému je potřeba aktualizovat knihovnu OpenSSL a vyměnit klíče a certifikáty. Samotná aktualizace není dostatečná, neboť tato chyba byla v dotčené knihovně dva roky a není způsob jak zjistit, zda došlo k odcizení klíčů. Proto je nutno přistupovat ke všem serverům se zranitelnou knihovnou jako ke kompromitovaným.
První problém nastává s vystavením nových certifikátů. Původní plán byl nasadit na aktualizované servery nové certifikáty a po otestování revokovat certifikáty původní. Certifikační autorita (CA) je bohužel jiného názoru a bez revokace není možno vystavit certifikát nový. Smířili jsme se tedy s drobným výpadkem a požádali jsme o revokaci.
Operace, která běžně trvá několik málo minut, trvala minulý týden kvůli stejnému postupu mnoha provozovatelů webů několik hodin. Navíc po půl hodině čekání jsme zjistili, že se žádost o revokaci certifikátu vyřizuje, ale systém autority nepřijímá nové žádosti, takže reálně hrozilo, že zůstaneme bez platného certifikátu. Po třech hodinách se akce zdařila a my se snažili nasadit nový certifikát co nejdříve, což byla další chyba.
Certifikát ještě nebyl v seznamu pro OCSP, který slouží pro ověření platnosti certifikátů a vydává ho CA. Tudíž se nešlo na dotčené stránky připojit z Firefoxu. Výsledek ověření se ukládá na serveru CA do cache a vygenerování nového záznamu a jeho vypropagování trvalo dalších 8 hodin. Ve všech těchto krocích jsme byli plně závislí na CA, která byla logicky zahlcena a nestíhala jednotlivé požadavky vyřizovat.
Řešení této situace je přitom velmi snadné. je jím samozřejmě DANE. V prvním náporu jsme si mohli vygenerovat vlastní certifikát a pomocí TLSA záznamů ho označit za správný a důvěryhodný a z bezpečnostních důvodů poslat požadavky na revokaci všech certifikátů. Stále bychom však měli validní a bezpečný certifikát na stránkách. Po opadnutí hlavního náporu bychom si mohli v klidu požádat o nový certifikát. Na druhou stranu, potřebovali bychom ho ještě? Nezbývá než doufat, že se tato šikovná funkce co nejdříve rozšíří. Do té doby můžete použít rozšíření pro prohlížeče.
Perlička na závěr. I když je u některých CA certifikát zdarma, jeho revokace je placená a může se tak stát, že na mnoha stránkách zůstanou kompromitované certifikáty.
Článek původně vyšel na blog.nic.cz, autorem je Petr Černohouz. Zde jej uveřejňujeme pod licencí CC BY-SA.