Skip to content

Stop trusting the roots behind the compromised eMudhra intermediates - #179

Merged
paweljw merged 2 commits into
mainfrom
distrust-emudhra-roots
Oct 21, 2026
Merged

paweljw merged 2 commits into
mainfrom
distrust-emudhra-roots

Conversation

@paweljw

@paweljw paweljw commented Oct 21, 2026

Copy link
Copy Markdown
Member

The private keys of eight eMudhra intermediate CAs are recoverable (details). They chain to emSign ECC Root CA - G3 and, through Sectigo cross-signs, to Comodo AAA Services root.

The published collector:latest and collector-ebpf:latest images ship ca-certificates 20250419 and accept certificates issued by the compromised intermediates. Debian's fix, 20250419+deb13u1 in trixie-security, removes both roots.

Changes

  • Both images upgrade ca-certificates in the trust-store step. A cached install layer from before the fix can't keep the old bundle.
  • The build fails if either root is still in /etc/ssl/certs.
  • COLLECTOR_VERSION goes to 1.1.51 so a new release is built.

Verification

Run on debian:13.5-slim with the changed step:

  • With 20250419+deb13u1, the build passes. curl rejects both test hosts (dv-g3b-emudhra, dv-g3b-aaa-emudhra) and still reaches telemetry.betterstack.com.
  • With ca-certificates=20250419 pinned, the build fails.
  • With the old package installed first (a stale cached layer), the step upgrades it and the hosts are rejected.

Not covered

The Vector 0.47.0 binary embeds its own Mozilla root list (rustls / webpki-roots), which still includes both roots. Vector's main HTTP sinks use OpenSSL and the system store, so this PR fixes them. Components that use the embedded list are not fixed; the likeliest is the MongoDB driver. Closing that needs a Vector upgrade or an explicit CA file on those components, tracked separately.

Debian's ca-certificates 20250419+deb13u1 drops emSign ECC Root CA - G3
and Comodo AAA Services root, which the compromised eMudhra intermediates
(and their Sectigo cross-signs) chain to. Images built before that update
still trust them. Rebuild both images and fail the build if either root
is still in the system trust store.

Bump COLLECTOR_VERSION to 1.1.51.
@paweljw
paweljw merged commit 391eceb into main Oct 21, 2026
14 checks passed
@paweljw
paweljw deleted the distrust-emudhra-roots branch October 21, 2026 14:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant