Přeskočit na obsah
Tech-Blog Chatujme.cz Chatujme.cz
Bezpečnost

Klíče osmi mezilehlých certifikátů eMudhra šlo uhodnout z 256 možností

Soukromé klíče osmi mezilehlých certifikátů autority eMudhra byla čísla menší než 256, takže je mohl spočítat kdokoli. Chrome, Firefox, Apple i Microsoft je zablokovali, Google navíc vyřazuje celý kořen emSign ECC Root CA - G3. Programy mimo prohlížeče potřebují aktualizované úložiště certifikátů.

· 18 zhlédnutí

Karta PCI Express s modrým chladičem a nápisem nCipher na bílém pozadí
Hardwarový bezpečnostní modul nCipher nShield F3. V zařízeních tohoto druhu vznikají a leží klíče certifikačních autorit. Foto: Alexander Klink, Wikimedia Commons (CC BY 3.0)

Indická certifikační autorita eMudhra vydala osm mezilehlých certifikátů, jejichž soukromé klíče šlo spočítat za zlomek sekundy. Výzkumník, který se podepisuje jen jménem Wayne, na to 17. října 2026 upozornil kořenové programy Googlu, Mozilly, Applu a Microsoftu. Ještě týž den je Chrome i Firefox zablokovaly. Šest z nich smělo podepisovat certifikáty pro weby, zbylým dvěma na podepisování kódu věřil Microsoft.

Mezilehlý certifikát je článek řetězu mezi kořenem, kterému věří prohlížeč nebo operační systém, a certifikátem konkrétního webu. Kdo má jeho soukromý klíč, může vystavit platně vypadající certifikát pro libovolnou doménu. S ním se pak dá vydávat za cizí server a číst nebo měnit provoz, pokud útočník sedí na cestě mezi uživatelem a webem.

Soukromý klíč byl menší než 256

Všech osm klíčů používá eliptickou křivku P-384. Soukromý klíč je u ní náhodné celé číslo zhruba v rozsahu 384 bitů. Podle hlášení v Bugzille Mozilly byly ale všechny postižené klíče menší než 256, tedy samé nuly kromě posledního bajtu. Dennis Jackson z Mozilly píše, že je stačí najít vygenerováním prvních 256 klíčů té křivky a porovnáním s veřejným klíčem v certifikátu. Mozilla je tak nezávisle na původním hlášení spočítala za necelé dvě hodiny. Podle BleepingComputer měl certifikát EM OV TLS CA - G3C soukromý klíč rovný čtyřem.

Klíče vznikly 30. dubna 2025 při jednom ceremoniálu, kde eMudhra vygenerovala 24 mezilehlých certifikátů ve třech řadách A, B a C. Postižené jsou všechny klíče P-384 z řad B a C. Řadu A eMudhra v květnu 2025 nahradila řadou A-1 a u té ani u řady A Mozilla slabý klíč nenašla. Klíče RSA podle eMudhry vznikaly jiným postupem a postižené nejsou.

Vysvětlení autority stojí v témže hlášení. Klíče řad B a C byly určené k přenosu do datových center v USA a Evropě, proto se při ceremoniálu schváleně odchýlila od obvyklého postupu a zkoušela zabalení klíčů pro export. Chyba v kódu přitom vytvořila v modulu HSM druhou, slabou dvojici klíčů. Protože měly podobné označení, eMudhra z nich omylem vyrobila žádosti o certifikát, nechala je podepsat svým kořenem a poslala je i Sectigu ke křížovému podpisu. Do provozu se podle ní dostal jen jeden z nich; v prvním vyjádření jmenovala EM DV TLS CA - G3C.

Varování přitom zaznělo už v červnu 2025. V hlášení 1970728 vyšlo najevo, že seznamy zneplatněných certifikátů (CRL) pro tytéž mezilehlé certifikáty nesly neplatné podpisy. Podle nynějšího vysvětlení eMudhry je podepisovaly původně zamýšlené klíče, kdežto certifikáty byly vydané na ty slabé. V Bugzille teď autorita dostala otázku, proč to tehdy neuvedla.

Prohlížeče stačilo přepnout, zbytek softwaru čeká na aktualizace

Chrome podle blogu Googlu zablokoval klíče šesti certifikátů pro weby v 19:45 UTC aktualizací CRLSet, tedy seznamu, který si prohlížeč stahuje sám a nepotřebuje k tomu restart. Mozilla dokončila blokování v seznamu OneCRL ve 22:59 UTC. Apple podle stránky, kterou k incidentu vede Dennis Jackson, certifikáty blokuje od 19. října a Microsoft od 20. října. Samotná eMudhra je zneplatnila 18. října, Sectigo své křížové podpisy o den později.

Prohlížeče jsou navíc chráněné záznamy Certificate Transparency, veřejnými logy, do kterých musí každý důvěryhodný certifikát pro web zapsat. Google uvádí, že do logů se do jeho zásahu nedostal žádný certifikát podepsaný postiženými klíči. Chrome, Firefox, Edge ani Safari proto podle Jacksonovy stránky napadené být nemohly. Mnoho programů mimo prohlížeče ale záznam v logu nevyžaduje a zneplatnění nekontroluje. U nich podle Jacksonovy stránky nikdo neví, jestli slabé klíče někdo od dubna 2025 nezneužil.

Google kvůli tomu vyřazuje z úložiště Chromu celý kořen emSign ECC Root CA - G3, který postižené certifikáty podepsal. Na zařízení, která se úložištěm Chromu řídí, má změna dorazit 27. října 2026. Weby s certifikátem z tohoto kořene si podle Googlu musí okamžitě pořídit nový od jiné autority, jinak jim v Chromu přestane fungovat. Kořenový program Chromu zároveň prověřuje, jestli v úložišti nechá zbylé certifikáty eMudhry.

Aktualizace potřebuje i Composer, Go nebo Python

Programy, které si nesou vlastní seznam důvěryhodných autorit, potřebují novou verzi. Jacksonova stránka k 22. říjnu vede opravené balíčky ca-certificates pro Ubuntu, Debian, Fedoru, Alpine i Arch, dál NSS 3.131.1, balík certifikátů curlu z 20. října, Python certifi 2026.10.19, Go 1.27.3 a 1.26.10, Node.js 22.23.4, 24.22.1 a 26.12.1 nebo Composer ca-bundle 1.4.16 a 1.6.0. Bun a Erlang certifi v ní stály jako rozpracované.

Zvlášť upozorňuje na macOS. Systém certifikáty blokuje, ale vestavěný curl, git, python3 a openssl ověřují podle souboru /etc/ssl/cert.pem bez kontroly zneplatnění a ten zatím aktualizovaný není. Stránka k tomu uvádí ruční úpravu souboru. Pro linuxové distribuce bez nového balíčku popisuje vyřazení kořenů emSign ECC Root CA - G3 a AAA Certificate Services, přes který vedou křížové podpisy Sectiga. Běžným uživatelům ho výslovně nedoporučuje.

Jestli klient postiženým certifikátům ještě věří, prozradí testovací adresa ze stejné stránky. Chyba certifikátu znamená, že je klient v pořádku:

curl https://dv-g3b-emudhra.we-have-a-problem.com/
curl https://dv-g3b-aaa-emudhra.we-have-a-problem.com/

Cloudflare se o incidentu podle svého blogu dozvěděl 19. října odpoledne a do druhého dne dopoledne vydal nové verze klientů WARP a nástroje cloudflared 2026.10.2. Zneužití na svých službách nenašel. Vývojářům radí, ať chyby certifikátů, které se po aktualizaci objeví, neřeší vypnutím ověřování. Upozorňuje také, že nová verze SDK nemusí stačit, protože ověřování často dělá knihovna HTTP, běhové prostředí jazyka nebo operační systém pod ní.

Zdroje

Bezpečnost

TLS certifikáty Chrome Firefox

← zpět na výpis