eMudhra: eight intermediate CA keys trivially recoverable (values below 256); browsers, Go, Apple, Microsoft block them; non-browser clients remain exposed
Matéria consolidada. Reúne 8 matérias que o Tifon tinha publicado separadamente sobre a mesma história. A IA reescreveu o relatório com o que as 8 fontes trouxeram em 22/10/2026 02:02; os links antigos trazem para cá.
Fontes: safedep.io ↗ securityweek.com ↗ gbhackers.com ↗ bleepingcomputer.com ↗ blog.cloudflare.com ↗ darkreading.com ↗ theregister.com ↗ thehackernews.com ×2 ↗
Eight intermediate CA certificates of the Indian certificate authority eMudhra (emSign brand), generated on 30 April 2025, were found to have P-384 private keys so weak (integers below 256) that anyone can recover them from the public certificates and forge browser-trusted certificates for any domain. A researcher credited as Wayne reported it on October 17, 2026. Chrome and Firefox blocked the certificates that day, Apple followed on October 19 and Microsoft on October 20. eMudhra revoked all eight (October 18-19), as did Sectigo for the cross-signed copies, and the Go project shipped an emergency release (1.27.3 and 1.26.10). Cloudflare patched critical services before disclosure. No confirmed attack on a client has been reported, but SafeDep says forged certificates for google.com and other domains have been in public CT logs since October 19 (ctlogs.dev), and mitmproxy 12.3.0 (October 22) can sign intercepted traffic with a recovered eMudhra key (safedep.io). Clients that do not check revocation or ship their own CA bundles (many CI runners, container images, JVMs, Go binaries, Python certifi, Rust, PHP and Electron users, macOS /usr/bin/curl, many Linux root stores) may keep trusting the chains until updated. eMudhra blames human errors and a flawed key-generation script, and its investigation is ongoing (bleepingcomputer.com, gbhackers.com, securityweek.com, thehackernews.com, blog.cloudflare.com, safedep.io).
Entenda a falha
A vulnerabilidade
Eight intermediate CA certificates of the Indian CA eMudhra (emSign), created on 30 April 2025, have P-384 private keys that are integers below 256. Anyone can recover them from the public certificates and forge certificates for any domain that clients trusting those chains will accept. Six are TLS intermediates (EM DV/OV/EV TLS CA - G3B and G3C) chaining to emSign ECC Root CA - G3. Two are code-signing intermediates (EM OV CS CA - G3B and G3C). Each also exists as a Sectigo cross-signed copy with the same key, 16 certificates in all. An attacker needs a forged certificate and a position to intercept traffic. Clients that do not check revocation or block these keys stay exposed. Go fixes are 1.27.3 and 1.26.10 (CVE-2026-111943 per BleepingComputer); Go 1.25 and older get no fix. Firefox 158.0.1 and NSS 3.131.1 are fixed.
Como funciona
A TLS client receives a certificate chain from a server and validates it up to a root in its trust store. It accepts the chain if each certificate is signed by the key of the one above it and the root is trusted. Here, the eight intermediate keys can be derived by anyone, so someone can mint a leaf certificate signed by one of them for any domain. The client sees a valid signature from a trusted intermediate and accepts it. The flaw is at the point where trust in the intermediate is taken for granted. Browsers escape this because they receive pushed blocklists (CRLSet, OneCRL). Most other clients read a CA bundle and do not check revocation, so they keep accepting the chain.
Por que é vulnerável
The root cause was a faulty key-generation ceremony at eMudhra. According to eMudhra's preliminary account, a modified script added a wrap/unwrap test for exportable keys. Strong keys were created in HSMs, but flawed code also produced a second, weak set. Because the labels were similar, staff picked the weak keys when creating the CSRs. eMudhra cites human errors at multiple steps and flaws in key lifecycle integrity, and says its investigation continues. Earlier invalid CRL signatures were tied to the same mismatch, but this did not lead to detection. Fixes do not change the keys: they block them (Go hashes the public key, browsers use CRLSet/OneCRL) or remove the roots from trust stores.
Onde está
The articles name the eight intermediate certificates and the Go crypto/x509 verifier filter, which lists SHA-256 hashes of the keys, but give no file or function names.
Como foi descoberta
A researcher credited as Wayne reported it to the root programs on October 17, 2026, reportedly after scanning public certificate data (BleepingComputer). Wayne proved control by signing the message "We have a problem here – Wayne" with each key. Chrome received the report at 18:05 UTC and blocked at 19:45 UTC. Mozilla received it at 20:06 UTC, recovered the keys independently and pushed a OneCRL block by 22:59 UTC. Apple blocked on October 19 and Microsoft on October 20. Mozilla and the Chrome Root Program publicly confirmed it on October 20. Scott Helme and others recovered keys independently (4, 56, 115, 66, 155, 156, 230, 237). The Hacker News notes it is not known how the keys left eMudhra or whether anyone besides the researcher holds them (hence the discrepancy with other coverage that treats the keys as derivable by anyone). No abuse has been confirmed.
PoC pública
Public material exists. Flüpke published one recovered private key on GitHub (EM OV TLS CA - G3C, value 4), which BleepingComputer verified against a revoked certificate. Scott Helme showed the keys can be recovered from the public certificates in under a second. SafeDep reports that mitmproxy 12.3.0 (October 22) can sign intercepted traffic with a recovered eMudhra key, so an attacker with an interception position needs no custom tooling. SafeDep also says forged certificates for google.com and other domains have been in public CT logs since October 19, though no attack on a client is confirmed. In practice, exploitation is trivial, so patch or update trust stores urgently wherever revocation is not checked.
Explicação gerada por IA a partir da matéria e dos artigos, em 22/10/2026 02:17.
Detalhes técnicos
- Disclosure and response chronology:
- 2025-04-30: eMudhra key generation ceremony produces the keys, including a second, weaker set (gbhackers.com); the keys are described as generated in April 2025 (bleepingcomputer.com). Sectigo signed a second copy of each intermediate in May 2025 (safedep.io).
- 2026-09: a public discussion on adding ten new eMudhra roots closes with no objections (thehackernews.com).
- 2026-10-17: Chrome receives the report from Wayne at 18:05 UTC and has a CRLSet block by 19:45 UTC (thehackernews.com). Mozilla receives it at 20:06 UTC (thehackernews.com, theregister.com), recovers the keys independently that evening (gbhackers.com) and completes a OneCRL push at 22:59 UTC (thehackernews.com).
- 2026-10-18: eMudhra revokes the eight certificates, followed by the Sectigo cross-signs (gbhackers.com); safedep.io places the revocations on October 18 and 19.
- 2026-10-19: Apple adds protections (bleepingcomputer.com, securityweek.com, safedep.io). Cloudflare learns of the compromise (blog.cloudflare.com).
- 2026-10-20: Microsoft blocks the certificates (thehackernews.com, securityweek.com, safedep.io). Go releases 1.27.3 and 1.26.10 on its URGENT track without naming the CA or giving a reason (thehackernews.com). Mozilla and the Chrome Root Program publicly confirm the compromise (thehackernews.com). Mozilla publishes its disclosure, releases Firefox 158.0.1 and ESR updates (theregister.com, bleepingcomputer.com) and removes emSign ECC Root CA - G3 (NSS 3.131.1) (safedep.io). Cloudflare publishes its advisory (blog.cloudflare.com).
- 2026-10-21: coverage describes no evidence of malicious use in Certificate Transparency logs (securityweek.com). Node.js releases fixes and Red Hat publishes RHSB-2026-012 (safedep.io).
- 2026-10-22: mitmproxy 12.3.0 released with
--emudhra/--emudhra-oldsigning options (safedep.io). - 2026-10-27: Chrome will remove emSign ECC Root CA - G3 (safedep.io).
- Affected certificates: EM DV, OV and EV TLS CA - G3B (eMudhra BV, Netherlands) and G3C (eMudhra Inc, US), plus EM OV CS CA - G3B and G3C for code signing (thehackernews.com). The six TLS intermediates were issued by emSign Root TLS CA - G3 and chain to emSign ECC Root CA - G3, which was in the Chrome and Apple stores and, until October 20, in Mozilla's (thehackernews.com). The two code-signing intermediates are trusted by Microsoft (gbhackers.com).
- Cross-signs and dual paths: Each of the eight also exists as a cross-signed copy by Sectigo (AAA Certificate Services root) with the same public key, giving 16 CA certificates with 8 keys (thehackernews.com, safedep.io). Chrome and Firefox stopped trusting that Sectigo root for websites in April 2025, but Apple's iOS 26 and macOS 26 root list includes it (thehackernews.com). A client is affected when it trusts any of emSign ECC Root CA - G3, emSign Root TLS CA - G3 or AAA Certificate Services, does not block the 16 intermediates and does not check revocation. Mozilla-derived stores (Debian, Ubuntu, Alpine, certifi, Node.js) lack AAA Certificate Services, whereas Windows, macOS, older Linux and some JDK builds contain it (safedep.io).
- Key weakness: All eight keys have values below 256, so they can be recovered by trying 256 candidates (bleepingcomputer.com) or with the baby-step giant-step discrete log algorithm (securityweek.com). Scott Helme recovered them in under a second; one key is 4, others are 56 and 115, and other researchers found 66, 155, 156, 230 and 237 (theregister.com). Flüpke published one key on GitHub: EM OV TLS CA - G3C has the value 4, which BleepingComputer verified against a revoked certificate (bleepingcomputer.com). Wayne proved control by signing the message "We have a problem here – Wayne" with each key (gbhackers.com).
- Root cause per eMudhra (preliminary): a modified key-generation script added a wrap/unwrap test for exportable keys. Strong keys were created in HSMs, but flawed code also produced weak alternatives. Similar labels led staff to select the weak keys when creating CSRs. Earlier invalid CRL signatures were tied to this mismatch, and the CRLs were later signed with the compromised keys. eMudhra cites human errors at multiple steps and says it will re-verify every key ceremony it has run (gbhackers.com, securityweek.com, bleepingcomputer.com).
- Intended use: the issuers were meant for export to US and European data centers for data sovereignty, and only one reportedly entered production (securityweek.com).
- Exposure window: keys could have been abused since April 2025, though no abuse has been observed (bleepingcomputer.com). Chrome states that no TLS certificate chaining to the six web intermediates had been logged to Certificate Transparency before its block (thehackernews.com). Not all clients enforce CT, so impersonation of non-browser clients cannot be ruled out (securityweek.com). No method exists to detect past misuse beyond Chrome's CT search (thehackernews.com).
- Attack prerequisites and tooling: an attacker needs a forged certificate and an interception position (hostile Wi-Fi, compromised router, DNS or BGP hijack, shared self-hosted runner network). mitmproxy 12.3.0 can sign with the recovered key of EM OV TLS CA - G3C (
--emudhra, emSign path;--emudhra-old, Sectigo path), so no custom tools are needed (safedep.io). - Browser blocks: Chrome's block matches the public key, so it also covers the Sectigo copies. It did not need to block the two code-signing certificates because its TLS verifier will not build a path through a code-signing-only intermediate (thehackernews.com). Browsers rely on pushed blocklists (Chrome CRLSet, Firefox OneCRL), whereas most other clients read a CA bundle file and do not check revocation (safedep.io). Mozilla requested an emergency distrust of emSign ECC Root CA - G3 (gbhackers.com). Chrome will remove that root in root store version 43 and is reviewing emSign Root CA - G1 (thehackernews.com).
- Go: The filter hashes each certificate's public key, so cross-signed copies are also caught. It applies in Go's own verifier and in the macOS and Windows paths that delegate to the OS. Rejected chains return
x509: no valid chains built. There is no opt-out, and it appears to apply even to user-supplied trusted roots (Go has not said whether intended). Go does no revocation checking, so programs must be rebuilt, and Go 1.25 and older get no fixes (thehackernews.com). BleepingComputer links the release to CVE-2026-111943 (bleepingcomputer.com); SafeDep says projects use that identifier to track trust store updates (safedep.io). In SafeDep's test, Go 1.26.9 with a bundle containing AAA Certificate Services was affected and 1.26.10 was not (safedep.io). - Bundles: certifi, webpki-roots and Homebrew ca-certificates removed emSign ECC Root CA - G3. Homebrew also removed Sectigo's AAA Certificate Services root and emSign Root TLS CA - G3, and Mozilla made the same change in NSS. This also cuts off legitimate certificates chaining to those roots (thehackernews.com). Fixed versions per SafeDep: certifi 2026.10.19, webpki-roots and webpki-root-certs 1.0.10, rustls-webpki 0.103.16 (0.102 and older unfixed), composer/ca-bundle 1.4.16, castore 1.0.22, pip 26.2.2; Alpine's ca-certificates-bundle 20261020-r0 has the fix, while eclipse-temurin:21-jre (Ubuntu 26.04) still carried emSign ECC Root CA - G3 on October 22 (safedep.io).
- Cloudflare: The issue is in WebPKI certificate authentication, not TLS encryption. Cloudflare prioritized proxies connecting to origins and applications calling external APIs, and updated shared trust stores and base images. It reports no active exploitation on its services. An SDK update alone may not change verification policy, because clients may delegate to an HTTP library, runtime, OS or custom trust configuration (blog.cloudflare.com).
- Scope: Chrome found no other CAs with this failure mode, and Mozilla does not currently believe other CAs are affected (thehackernews.com). eMudhra estimates about 30,000 certificates need migration, 97% issued via ACME, and has halted issuance under the emSign ECC Root CA - G3 (gbhackers.com).
- Detection aids: SafeDep's probes (curl, Python, Node.js, Go, Java, PHP) test two tracker hosts per runtime, one per path, and a client is unaffected only if both give NOT AFFECTED; a SHA-256 fingerprint scanner finds PEM bundles trusting the roots or 16 intermediates, and a vet policy flags stale CA bundle packages in lockfiles. The community tracker emudhra.we-have-a-problem.com holds twelve test hosts (safedep.io).
Remediação
- Update browsers, operating systems, runtimes and CA bundles. Recommended: Firefox 158.0.1, NSS 3.131.1, Python certifi 2026.10.19, pip 26.2.2 (bleepingcomputer.com, gbhackers.com), plus the patched package versions listed above (safedep.io).
- Upgrade to Go 1.27.3 or 1.26.10 and rebuild affected programs. There is no workaround, and services chaining through the eight keys need certificates from another intermediate (thehackernews.com). Check deployed binaries with
go version(safedep.io). - Replace every server certificate chaining to emSign ECC Root CA - G3 now; upgrade JDKs or add the blocked.certs entries and restart; upgrade and restart Node.js processes; rebuild images with the updated OS trust store (safedep.io).
- Run probes in each CI runner type (hosted, self-hosted, container) and behind each TLS inspection proxy, test real applications with mitmproxy 12.3.0+ on systems you own, search proxy and inspection logs for the intermediates, and decide on credential rotation (safedep.io).
- Cloudflare customers: Cloudflare One Client v2.5.6 (Android), v1.12.16 (iOS, pending app review), 2026.8.2115.0 (Windows, macOS, Linux); 1.1.1.1 app v6.38.10 (Android), v6.31.7 (iOS), 2026.8.2115.0 (desktop); update cloudflared. Zero Trust Gateway customers with an up-to-date client are protected automatically (blog.cloudflare.com).
- Assess bundled or custom trust stores and software without revocation checking, including macOS
/usr/bin/curl. Update dependencies (including indirect ones), rebuild images, then reload, restart or redeploy applications, and validate through each application's real TLS path. Do not disable verification to clear errors (blog.cloudflare.com, bleepingcomputer.com). - Use the test site and tool from Mozilla's Dennis Jackson, who also crowdsourced a list of patched packages, to check whether a client still trusts the certificates (blog.cloudflare.com, securityweek.com).
- Inventory certificates chained to eMudhra, including in non-browser clients and embedded systems, replace them with ones from another CA, and remove the eMudhra roots and intermediates from trust stores where feasible (theregister.com).
Relatos divergentes
- Why Go acted: The first Go coverage said the reason was undisclosed and the link to eMudhra rested on an unverified commenter's matching of key hashes (thehackernews.com). Later reports confirmed the eight eMudhra keys as the target (thehackernews.com, bleepingcomputer.com).
- Go release date: thehackernews.com places the Go 1.27.3 and 1.26.10 release on October 20, while safedep.io says October 19; safedep.io is the more recent source.
- Certificates in the wild: The Register says certificates signed with these keys are still in circulation (theregister.com). eMudhra says most intermediates were never used in production and it found no evidence of issuance to end users (bleepingcomputer.com), and Chrome saw no CT-logged TLS certificates before its block (thehackernews.com). safedep.io (citing ctlogs.dev) reports forged certificates for google.com and other domains in public CT logs since October 19, i.e. after disclosure and likely public proofs of concept; it also notes nobody had confirmed an attacker using one against a client as of October 21 (The Hacker News).
- Who reported it: The Register describes a community member (theregister.com); other sources name the researcher Wayne (thehackernews.com, bleepingcomputer.com, gbhackers.com, safedep.io).
- Disclosure date: Cloudflare says it learned of the compromise on October 19 (blog.cloudflare.com), while the report reached Chrome and Mozilla on October 17 (thehackernews.com). GBHackers dates the public disclosure to October 20 (gbhackers.com).
Linha do tempo
-
eMudhra weak intermediate CA keys: developer response guide, probes and patched versions for clients that still trust them
SafeDep adds a practical defender guide: the dual emSign/Sectigo chain structure (16 certificates, 8 keys), which trust stores are affected, test hosts, probes and an offline fingerprint scanner, a patched-version table, Node.js fixes and Red Hat RHSB-2026-012 on 21 October, mitmproxy 12.3.0 with ready-made eMudhra signing, and a report of forged certificates for google.com in public CT logs since 19 October. It also dates the Go release to 19 October rather than 20 October.
ler a análise desta fonte ocultar
SafeDep adds a practical defender guide: the dual emSign/Sectigo chain structure (16 certificates, 8 keys), which trust stores are affected, test hosts, probes and an offline fingerprint scanner, a patched-version table, Node.js fixes and Red Hat RHSB-2026-012 on 21 October, mitmproxy 12.3.0 with ready-made eMudhra signing, and a report of forged certificates for google.com in public CT logs since 19 October. It also dates the Go release to 19 October rather than 20 October.
Private keys of eight eMudhra intermediate CAs, created on 30 April 2025, are numbers below 256 and can be computed from the public certificates in under a second. They allow forged TLS certificates for any domain and forged code-signing certificates. Browsers already block the intermediates, but many other TLS clients (CI runners, container images, JVMs, Go binaries, Python/Rust/PHP CA bundle packages, Electron apps, macOS built-in tools) still trust them because they do not check revocation. SafeDep published a response guide with probes, an offline scanner, a patched-version table and a vet policy. It reports forged certificates for google.com and other domains in public CT logs since 19 October (ctlogs.dev), while no confirmed attack on a client had been reported as of 21 October (The Hacker News). mitmproxy 12.3.0 (22 October) can already sign intercepted traffic with a recovered eMudhra key.
Technical Details
- Eight intermediates: six TLS (EM DV/OV/EV TLS CA - G3B and G3C) and two code signing (EM OV CS CA - G3B and G3C). eMudhra attributes it to a flaw in its key generation script that produced a second set of weak keys, with staff using the wrong set (Mozilla bug 2083449).
- Each intermediate has two paths: the emSign path (leaf -> intermediate -> emSign Root TLS CA - G3 -> emSign ECC Root CA - G3) and the Sectigo path (a Sectigo-signed copy chaining to AAA Certificate Services, May 2025). That gives 16 CA certificates with 8 keys.
- A client is affected if it trusts emSign ECC Root CA - G3, emSign Root TLS CA - G3 or AAA Certificate Services, does not block the 16 intermediates and does not check revocation. Mozilla-derived stores (Debian, Ubuntu, Alpine, certifi, Node.js) do not contain AAA Certificate Services; Windows, macOS, older Linux and some JDK builds do.
- Exploitation needs a forged certificate plus an interception position (hostile Wi-Fi, compromised router, DNS/BGP hijack, shared self-hosted runner network). mitmproxy
--emudhra(emSign path) and--emudhra-old(Sectigo path) remove the need for custom tooling. - Timeline: 17 Oct Wayne reports, Chrome and Firefox block; 18-19 Oct eMudhra and Sectigo revoke; 19 Oct Apple blocks, Go 1.27.3/1.26.10; 20 Oct Microsoft blocks, Mozilla removes emSign ECC Root CA - G3 (NSS 3.131.1); 21 Oct Node.js fixes, Red Hat RHSB-2026-012, CVE-2026-111943 used to track trust store updates; Chrome removes the root on 27 Oct.
- Probes (curl, Python, Node.js, Go, Java, PHP) connect to tracker hosts serving forged chains; both the emSign and Sectigo hosts must give NOT AFFECTED. A SHA-256 fingerprint scanner (emudhra-scan.sh) finds PEM bundles, e.g. eclipse-temurin:21-jre (Ubuntu 26.04) failed on emSign ECC Root CA - G3, while python:3.13-slim did not; alpine:3.22 ships a fixed bundle.
- Fixed versions cited: certifi 2026.10.19, webpki-roots and webpki-root-certs 1.0.10, rustls-webpki 0.103.16 (0.102 and older get no fix), composer/ca-bundle 1.4.16, castore 1.0.22, pip 26.2.2.
Remediation
- Replace any server certificate chaining to emSign ECC Root CA - G3.
- Run probes per CI runner type and behind each TLS inspection proxy; test real applications with mitmproxy on systems you own.
- Scan and rebuild container images with the updated OS trust store; rebuild Go binaries built with affected versions; upgrade JDKs or add the blocked.certs entries and restart; upgrade and restart Node.js.
- Check lockfiles (certifi, webpki-roots, rustls-webpki, composer/ca-bundle) with the provided vet policy; fix macOS laptops and Windows hosts verifying code signatures.
- Search proxy and inspection logs for the intermediates, decide on credential rotation, and notify affected teams and vendors.
-
Browsers and Trust Stores Block Eight eMudhra Intermediate CAs After Weak Key Generation Exposes Private Keys
ler a análise desta fonte ocultar
Eight intermediate certificates issued in April 2025 by Indian certificate authority eMudhra were found to have private keys that can be recovered from the certificates themselves. Anyone can use them to forge trusted HTTPS certificates and impersonate any website against clients that still trust these CAs. Mozilla and Google blocked the intermediates in Firefox and Chrome on October 17. Apple followed on October 19 and Microsoft on October 20. Sectigo took revocation steps and Cloudflare patched its services. Certificate Transparency logs show no evidence of malicious use before revocation, but not all clients enforce CT, so impersonation cannot be ruled out.
Technical Details
- The keys were generated with insufficient entropy. Mozilla's Dennis Jackson said they are effectively all zeroes apart from the last byte and can be recovered almost instantly with the baby-step giant-step discrete log algorithm. Several individuals have independently retrieved them.
- According to eMudhra, a flaw in the script used in the key generation ceremony created a second, weaker key pair. That pair was mistakenly used for the certificate signing requests because its labels resembled those of the original keys.
- The issuers were meant for export to US and European data centers to address data sovereignty needs. Only one reportedly entered production.
- eMudhra cites human errors at multiple steps that broke key lifecycle integrity.
Remediation
- Apply browser, OS and trust-store updates so clients no longer trust the compromised intermediates. Some clients need software updates for this.
- Use the tool published by Dennis Jackson to check whether a client still trusts the affected certificates.
- eMudhra has revoked the certificates and says it will re-verify every key ceremony it has run.
-
eMudhra CA key-generation flaw exposes eight weak P-384 intermediate private keys, prompting emergency distrust
ler a análise desta fonte ocultar
Researchers found that the private keys of eight eMudhra intermediate CA certificates could be recovered from public certificate data. Each P-384 key was an integer below 256, so near-instant recovery by simple enumeration or a discrete logarithm algorithm was possible. The incident was disclosed on October 20, 2026, and Mozilla, Google, Apple and Microsoft blocked the affected intermediates. Mozilla also requested an emergency distrust of the emSign ECC Root CA – G3. The article reports no Certificate Transparency evidence of exploitation against CT-enforcing browsers, but abuse against non-browser clients is unknown.
Technical Details
- Affected: six TLS intermediates trusted by major root programs and two code signing intermediates trusted by Microsoft, all in eMudhra's G3B and G3C series. Sectigo cross-signs containing the same public keys were also revoked.
- Mozilla's Dennis Jackson reported that all eight P-384 keys were below 256, so the encoded values were nearly zero except for the final byte.
- The keys were generated at a ceremony on April 30, 2025. Researcher Wayne proved control of the keys by signing the message "We have a problem here – Wayne" with each one and notified root programs on October 17. Mozilla independently recovered the keys that evening.
- eMudhra's preliminary findings: a modified key-generation script added a wrap/unwrap test for exportable keys. Strong keys were created in HSMs, but flawed code also produced weak alternatives. Similar labels led staff to select the weak keys when creating CSRs. Earlier invalid CRL signatures were linked to this mismatch, and the CRLs were later signed with the compromised keys. eMudhra cited multiple human errors, and its investigation is ongoing.
- Timeline: Firefox and Chrome blocked the intermediates on October 17, Apple on October 19 and Microsoft on October 20. eMudhra revoked the eight certificates on October 18, followed by Sectigo's cross-signs.
- eMudhra halted issuance under the emSign ECC Root CA – G3 and estimates about 30,000 certificates need migration, 97% of them issued via ACME.
Remediation
- Update browsers, operating systems, development runtimes and certificate bundles. Recommended versions: NSS 3.131.1, Python certifi 2026.10.19 and pip 26.2.2.
- Assess bundled trust stores separately, since browser protection does not cover command-line tools or applications that ship their own CA bundles.
- Clients without effective revocation checking may remain exposed until their software or trust stores are updated.
- Plan migration of certificates issued under the emSign ECC Root CA – G3.
-
eMudhra revokes eight CA intermediates with trivially recoverable P-384 keys; Mozilla, Google and Apple block them
ler a análise desta fonte ocultar
Certificate authority eMudhra revoked eight intermediate certificates after a researcher known as Wayne found on October 17 that their P-384 private keys were so weak that anyone could recover them almost instantly. The keys, generated in April 2025, had values below 256, so an attacker could recover them by testing 256 candidates. This would let an attacker forge trusted certificates for legitimate websites and intercept encrypted traffic. eMudhra says most of the intermediates were never used in production and it found no evidence of issuance to end users, and there is no evidence of abuse. Mozilla, Google and Apple have blocked the certificates, but software with its own certificate stores or no revocation checking may still trust them.
Technical Details
- All eight certificates used P-384 private keys generated in April 2025 with values smaller than 256.
- Researcher Flüpke published one compromised key on GitHub. The key for "EM OV TLS CA - G3C" had a value of 4. BleepingComputer verified that it matches one of the revoked certificates.
- eMudhra blamed an error in a certificate generation script. The error produced a second set of weaker keys, which were mistakenly selected for signing because their labels resembled those of the properly generated keys.
- Some of the certificates were submitted to Sectigo for cross-signing.
- Attackers could have recovered and abused the keys since April 2025, though no abuse has been observed.
- Mozilla blocked the certificates via OneCRL on October 17, and Chrome blocked the six TLS-capable intermediates the same day. Apple added protections on October 19.
- Mozilla released Firefox 158.0.1 and ESR updates on October 20. The Go team released 1.27.3 and 1.26.10 for CVE-2026-111943.
- macOS's built-in
/usr/bin/curlmay continue to trust the certificates because its certificate bundle does not check revocation.
Remediation
- Install available updates for browsers, Go and other software that bundles its own certificate stores.
- Check systems with the test endpoints and mitigation instructions in the advisory published by Mozilla engineer Dennis Jackson.
- Review software that does not check revocation, including macOS
/usr/bin/curl, and apply mitigations. - eMudhra revoked the eight certificates and stopped issuing new certificates under its G3 root.
-
Private keys of eight eMudhra intermediate certificates compromised, enabling forged TLS certificates for any domain
ler a análise desta fonte ocultar
On October 19, 2026, Cloudflare learned that the private keys of eight eMudhra intermediate certificates had been compromised. The certificates were widely trusted by browsers, operating systems and Cloudflare itself. Because the keys are weak, an attacker could forge a certificate for any domain and impersonate servers to intercept or modify traffic. Cloudflare patched critical services ahead of public disclosure and reports no active exploitation on its services. Customers must still update client software, trust stores and origin configurations.
Technical Details
- The issue is a weakness in certificate-based authentication in the WebPKI, not in TLS encryption algorithms.
- Cloudflare prioritized services that use public certificates to authenticate remote endpoints, such as proxies connecting to origins and applications calling external APIs. It also updated shared trust stores and base images, and deployed the reloads, restarts and image deployments needed to activate them.
- Applications with bundled or custom trust stores need separate assessment. An SDK update alone may not change the underlying verification policy, because API clients may delegate to an HTTP library, a language runtime, the OS or a custom trust configuration.
- Browsers could mitigate quickly through revocation mechanisms such as Chrome CRLSets, which most other software stacks lack.
- Mozilla's Dennis Jackson crowdsourced a list of patched packages and runs a test site covering browser and non-browser verification paths.
Remediation
- Upgrade Cloudflare One Client to v2.5.6 (Android), v1.12.16 (iOS), and 2026.8.2115.0 (Windows, macOS, Linux). The iOS Cloudflare One Agent update is still pending app review.
- Upgrade the 1.1.1.1 app to v6.38.10 (Android), v6.31.7 (iOS), and 2026.8.2115.0 (Windows, macOS, Linux).
- Update cloudflared (Cloudflare Tunnel). Customers on Cloudflare Zero Trust Gateway with an up-to-date client are automatically protected.
- Review Cloudflare Containers and Sandboxes images and dependencies for affected trust stores, or enable HTTPS egress interception.
- Update dependencies (including indirect ones), rebuild images, and reload, restart or redeploy applications. Validate through each application's actual TLS path.
- Do not resolve resulting certificate errors by disabling verification.
-
Google, Mozilla, Apple and Go project block eMudhra certificates tied to 8 compromised keys
ler a análise desta fonte ocultar
Google, Mozilla, Apple, the Go project and other organizations moved quickly to block certificates issued by the Indian certificate authority eMudhra. The certificates are tied to 8 compromised keys. It is unclear how the keys were compromised. The source text available is limited to the headline and a short summary, so the scope of the affected certificates and any abuse are not stated.
Technical Details
- Eight keys associated with eMudhra certificates were compromised; the method of compromise has not been established.
- Trust-store operators blocked the affected certificates, limiting their usability for TLS and other trust decisions.
- No CVEs, IOCs, threat actors or confirmed abuse are named in the available text.
Remediation
- Ensure browsers, operating systems and Go toolchains are updated so the distrust and block entries apply.
- Inventory any certificates issued by eMudhra in your environment and plan for reissuance from a trusted CA if they are affected.
-
eMudhra CA private keys compromised: eight intermediate certificates used trivially guessable keys, including the number 4
ler a análise desta fonte ocultar
Mozilla received a report on 17 October 2026 that private keys for eight eMudhra intermediate certificates were compromised. The Indian certification authority says it has issued over 60 million certificates. Researchers found some of the keys were trivially small integers, so anyone could forge HTTPS certificates for arbitrary domains and impersonate servers or intercept and modify traffic. Mozilla, Chrome and Apple have moved to distrust the affected certificates, though only once users install updates. eMudhra has revoked the certificates, but certificates signed with these keys are still in circulation. The article does not report exploitation in the wild, and eMudhra had not responded to The Register's questions.
Technical Details
- The report reached Mozilla on Saturday 17 October at 20:06 UTC, from a community member. Dennis Jackson of Mozilla's cryptography engineering team published the disclosure.
- Researcher Scott Helme recovered the private keys from the public certificates in under a second. One key is the number 4, others are 56 and 115. Other researchers found 66, 155, 156, 230 and 237.
- A P-384 private key should be a random 384-bit number, roughly 2^384 possibilities. These keys are trivially guessable, so any certificate issued under them is open to forgery.
- Cloudflare noted that an attacker can create a forged certificate for any domain.
- Several FOSS projects have released updates that stop trusting eMudhra certificates.
Remediation
- Update browsers and operating systems to versions that distrust the eMudhra intermediates (Mozilla, Chrome, Apple).
- Inventory environments, including non-browser clients, services and embedded systems, for reliance on certificates chained to eMudhra, since these clients may not detect or reject the bad certificates.
- Apply updates from FOSS projects that remove trust in the eMudhra certificates.
- Replace affected certificates with ones from another CA and remove the eMudhra roots and intermediates from trust stores where feasible.
-
Eight eMudhra intermediate CA private keys compromised; browsers, Go and trust stores ship emergency blocks
ler a análise desta fonte ocultar
Mozilla and the Chrome Root Program confirmed on October 20 that the private keys of eight eMudhra intermediate CA certificates (emSign brand) are compromised. Anyone holding these keys could issue certificates for any website that a browser would accept. A researcher credited as "Wayne" reported the compromise on October 17, and Chrome and Firefox blocked the certificates within hours. How and when the keys left eMudhra, and whether anyone besides the researcher holds them, is unknown. Chrome states that no TLS certificate chaining to the six web intermediates had been logged to Certificate Transparency before its block, so none would have been trusted by default in Chrome.
Technical Details
- Affected certificates: EM DV, OV and EV TLS CA - G3B (eMudhra BV, Netherlands) and G3C (eMudhra Inc, US), plus EM OV CS CA - G3B and G3C for code signing.
- The six TLS intermediates were issued by emSign Root TLS CA - G3 and chain to emSign ECC Root CA - G3, a root in the Chrome and Apple stores and, until October 20, in Mozilla's.
- Each of the eight also exists as a cross-signed copy by Sectigo (AAA Certificate Services root) with the same public key. Chrome and Firefox stopped trusting that Sectigo root for websites in April 2025, but Apple's iOS 26 and macOS 26 root list includes it.
- Timeline: Chrome received the report at 18:05 UTC on October 17 and had a CRLSet block in place by 19:45 UTC. Mozilla received it at 20:06 UTC and completed a OneCRL push at 22:59 UTC. Apple blocked the certificates on October 19 and Microsoft on October 20. eMudhra has revoked all eight.
- Chrome's block matches the public key, so it also covers the Sectigo cross-signed copies. Chrome did not need to block the two code-signing certificates because its TLS verifier will not build a path through a code-signing-only intermediate.
- Go blocked the eight keys in its October 20 security releases on its URGENT track, without naming the CA. The filter lives in the standard library and has no opt-out; programs must be rebuilt, and Go 1.25 and older get no fixes.
- certifi, webpki-roots and Homebrew ca-certificates removed emSign ECC Root CA - G3 from their bundles. Homebrew also removed Sectigo's AAA Certificate Services root and emSign Root TLS CA - G3. This also cuts off legitimate certificates chaining to those roots. Mozilla made the same change in NSS.
- Software that does not check revocation (Go binaries, Python certifi users, many Linux root stores) keeps trusting the chains until code or bundles change.
- Chrome found no other CAs with this failure mode, and Mozilla does not currently believe other CAs are affected. Chrome will remove emSign ECC Root CA - G3 in root store version 43 and is reviewing emSign Root CA - G1.
- No method exists to detect past misuse beyond Chrome's CT search, which covers only logged certificates.
Remediation
- Mozilla's guidance: nothing is needed where clients reliably check revocation and fail closed.
- Where software can block individual intermediates, block the eight now; otherwise consider removing trust in the roots that signed them.
- Rebuild Go programs with the latest supported release, and update certifi, webpki-roots, Homebrew ca-certificates and NSS-based bundles.
- Firefox installations need no action unless Remote Settings is disabled by policy or blocked; the October 20 releases carry the block list for them.
-
Go 1.27.3/1.26.10 emergency release blocks eight eMudhra intermediate CA keys over undisclosed security concerns
ler a análise desta fonte ocultar
On October 20, the Go team released Go 1.27.3 and Go 1.26.10 on its URGENT track. The certificate verifier now rejects any chain passing through one of eight intermediate CA keys, citing unspecified "specific security concerns around their operation." A commenter on the Go issue matched the SHA-256 key hashes to intermediates of the Indian CA eMudhra (emSign brand). Two days earlier, on October 17, Mozilla added six intermediates under emSign Root TLS CA - G3 to OneCRL. Neither Mozilla, Go nor eMudhra has said what prompted the actions, and the Mozilla bug is closed to the public. Whether Chrome, Apple or Microsoft have acted is not established.
Technical Details
- The filter hashes each certificate's public key, so cross-signed copies of the same key are also caught. It applies in Go's own verifier and in the macOS and Windows code paths that delegate verification to the OS.
- Rejected chains return
x509: no valid chains built. There is no setting to disable the filter, and it appears to apply even when a program supplies its own trusted roots, so private deployments trusting these keys will also fail. Go has not said whether this is intended. - By the commenter's matching, which The Hacker News did not independently verify, six keys are TLS intermediates (DV, OV and EV, G3B and G3C variants) under emSign Root TLS CA - G3, and two are code-signing intermediates (EM OV CS CA - G3B and G3C) under emSign Root CS CA - G3.
- Go's verifier does no revocation checking and does not read browser block lists such as CRLSets, so blocking requires shipping a release. Programs keep the old behavior until rebuilt. Bluesky's indigo was rebuilt on October 20.
- Go's policy reserves the URGENT track for threats to ecosystem integrity or actively exploited severe flaws. Go has not said which applied, and unlike its October 8 security releases, this one had no pre-announcement.
- eMudhra's roots emSign Root CA - G1 and emSign ECC Root CA - G3 are in the Chrome, Apple and Mozilla root stores. The newer TLS root is cross-signed by G1, which is how it chains to a trusted root. A September public discussion on adding ten new eMudhra roots closed with no objections. eMudhra's repository had no notice and no public statement was found.
Remediation
- Upgrade to a supported Go release (1.27.3 or 1.26.10) and rebuild affected programs. Go 1.25 and older are unsupported and get no fix.
- No workaround exists. Services whose certificates chain through the eight keys need certificates from a different intermediate before rebuilt Go clients can connect.
- Check private deployments that intentionally trust these keys, as they will break.