Datahorses

Záznamy Certificate Transparency: čo prezrádzajú o vašich doménach

Autor: · · 4 min čítania

Certificate Transparency (CT, transparentnosť certifikátov) je systém logov, do ktorých sa dá len pridávať a do ktorých certifikačné autority zapisujú certifikáty TLS v momente vydania. Tieto záznamy si môže prečítať ktokoľvek. Pre vašu firmu to znamená 2 veci: každý v nich vidí, pre ktoré názvy serverov máte certifikáty, a vy si v nich všimnete certifikát pre vašu doménu, o ktorý nikto z vašej firmy nežiadal.

Protokol prvýkrát opísal RFC 6962 (jún 2013), verziu 2.0 priniesol RFC 9162 (december 2021). Obe sú experimentálne RFC, no prehliadače sa na CT v praxi spoliehajú: Chrome vyžaduje, aby všeobecne dôveryhodné certifikáty TLS spĺňali pravidlá CT, a Apple má pre svoje platformy vlastnú politiku CT.

Ak teda prehliadač dôveruje certifikátu pre yourcompany.com, takmer určite preň existuje záznam v logu.

Čo záznamy prezrádzajú o vašej firme

Záznam CT obsahuje názvy, ktoré certifikát pokrýva, autoritu, ktorá ho vydala, a dátumy platnosti. Spolu záznamy pre vašu doménu ukazujú:

  • Vaše subdomény. vpn.yourcompany.com, jira.yourcompany.com, staging-api.yourcompany.com: každý názov, ktorý niekedy mal vlastný certifikát.
  • Vašich dodávateľov. Vydavatelia certifikátov a spôsob pomenovania často prezradia, aké hostingové, poštové alebo SaaS platformy používate.
  • Vašu históriu. Staré záznamy v logu ostávajú, takže vidno aj názvy z projektov, ktoré ste zrušili pred rokmi.
  • Nové certifikáty hneď, ako pribudnú. Nový záznam pre názov, ktorý nepoznáte, alebo od autority, ktorú nepoužívate, treba preveriť.

Nič z toho nie je chybou CT. Systém je postavený práve na to, aby chybne vydané certifikáty nemohli ostať skryté. Znamená to však, že zoznam vašich názvov serverov nie je súkromný, a preto je lepšie, keď si ho prečítate skôr než ktokoľvek iný.

Ako v záznamoch hľadať sami

Najjednoduchšie je použiť crt.sh, vyhľadávacie rozhranie pre záznamy CT. Zadajte svoju doménu, prípadne s % ako zástupným znakom, aby výsledky zahŕňali všetky subdomény:

https://crt.sh/?q=%25.yourcompany.com

Ak chcete zoznam, s ktorým sa dá ďalej pracovať, pridajte &output=json:

curl -s 'https://crt.sh/?q=%25.yourcompany.com&output=json' \
  | jq -r '.[].name_value' | sort -u

Vo výsledkoch hľadajte:

  • Názvy, ktoré nikto nepozná. Každý by mal patriť systému, o ktorom viete, kto ho má na starosti.
  • Testovacie a staging názvy ako dev, test, old, beta. Často vedú na zabudnuté staging servery.
  • Názvy, ktoré sa už neprekladajú na IP adresu alebo smerujú na platformu, z ktorej ste odišli. Skontrolujte, či pri nich nehrozí visiaci záznam DNS a prevzatie subdomény.
  • Nečakaných vydavateľov. Certifikát od autority, ktorú ste nikdy nepoužili, preverte s tímom, ktorý spravuje vaše DNS a hosting.
  • Nedávne dátumy, ktoré neviete vysvetliť. Čerstvý certifikát pre vašu hlavnú prihlasovaciu adresu, ktorý nikto nežiadal, je najnaliehavejší prípad.

Majte na pamäti, že certifikáty so zástupným znakom (wildcard, *.yourcompany.com) jednotlivé subdomény neuvádzajú, takže záznamy vám ukážu veľa, ale nie všetko.

Obmedzte, kto smie certifikáty vydávať: záznam CAA

Záznamom CAA, ktorý definuje RFC 8659, určíte, ktoré certifikačné autority smú pre vašu doménu vydávať certifikáty. Autority ho pred vydaním kontrolujú. Typické nastavenie:

yourcompany.com.  CAA 0 issue "letsencrypt.org"
yourcompany.com.  CAA 0 issuewild ";"
yourcompany.com.  CAA 0 iodef "mailto:security@yourcompany.com"

Takéto nastavenie povolí jedinú certifikačnú autoritu, zakáže certifikáty so zástupným znakom a uvedie adresu na hlásenia. CAA nenahrádza CT: obmedzuje, čo sa dá vydať, kým CT vám ukáže, čo sa naozaj vydalo.

Platnosť certifikátov sa skracuje, záznamov pribúda

Podľa hlasovania CA/Browser Forum SC-081, ktoré je dnes súčasťou Baseline Requirements, je maximálna platnosť všeobecne dôveryhodných certifikátov TLS 200 dní pre certifikáty vydané od 15. marca 2026, 100 dní od 15. marca 2027 a od 15. marca 2029 už len 47 dní. Certifikáty sa budú obnovovať častejšie a väčšinou automaticky, takže pre vaše domény pribudne viac záznamov CT. Čítať ich ručne bude čoraz menej praktické a o to dôležitejší bude jasný prehľad „očakávaných“ certifikátov. Ako zvládnuť obnovovanie certifikátov pri tejto zmene, píšeme v článku prečo expirácia certifikátu stále zhadzuje weby.

Čo robiť, keď nájdete niečo nečakané

  1. Zistite, komu certifikát patrí. Opýtajte sa IT, marketingu a vašich agentúr, či certifikát žiadali.
  2. Ak ho nežiadal nikto, kontaktujte autoritu, ktorá ho vydala. Každá zverejňuje postup, ako nahlásiť chybne vydaný certifikát a požiadať o jeho zneplatnenie.
  3. Skontrolujte DNS a registrátora. Nečakaný certifikát môže byť dôsledkom zmeny DNS, preto prejdite body z nášho článku o zmenách nameserverov a registrátora.
  4. Pridajte alebo sprísnite CAA, aby tá istá autorita nemohla bez vášho súhlasu vydať certifikát znova.

Krátky kontrolný zoznam

  • Vyhľadajte na crt.sh %.yourcompany.com a uložte si zoznam názvov.
  • Ku každému názvu priraďte systém a zodpovednú osobu.
  • Odstráňte alebo opravte názvy, ktoré nikam nevedú.
  • Zverejnite záznam CAA s autoritami, ktoré používate.
  • Nové záznamy kontrolujte pravidelne, nie raz za rok.

Kam zapadá Datahorses

Datahorses stráži vašu firmu každý deň zvonku a záznamy Certificate Transparency čítame za vás: nové certifikáty vydané pre vaše domény, nové subdomény a záznamy CAA, ktoré ich majú obmedzovať. Do vašich systémov nevstupujeme a nepotrebujeme žiadne prístupy. Keď niečo nesedí, dostanete zistenie s jasnými krokmi, ako to opisujeme v časti čo sa stane, keď niečo nájdeme. Úplný zoznam toho, čo strážime nájdete na úvodnej stránke.

Ďalšie články

Všetky články