Repository navigation
fix(deps): stop trusting certificates minted with the leaked eMudhra keys - #655
Conversation
…keys Eight eMudhra (emSign) intermediates had recoverable private keys and were revoked on 2026-10-18 for key compromise. ts_tls_util trusts webpki_roots::TLS_SERVER_ROOTS for the control plane and DERP, and with webpki-roots 1.0.9 and rustls-webpki 0.103.15 ts_tls_util::connect completed a handshake with dv-g3b-emudhra.we-have-a-problem.com, a host served through one of them. webpki-roots 1.0.10 drops emSign ECC Root CA - G3, and rustls-webpki 0.103.16 distrusts the eight intermediates themselves, which also covers a CA added through TS_RS_EXTRA_CA_PEM. Both test hosts (the emSign chain and the Sectigo AAA cross-sign) now fail with CertDistrusted; github.com still connects. webpki-root-certs 1.0.7 -> 1.0.10 rides along for reqwest's platform verifier in dev builds. The cargo vet exemptions move to the new versions. Signed-off-by: GeiserX <9169332+GeiserX@users.noreply.github.com>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Walkthrough
Merge Risk: ⚪ Minimal · up to
|
Eight eMudhra (emSign) intermediates had recoverable private keys and were revoked on 2026-10-18 for key compromise. Anyone can mint a certificate for any name under them, and no client checks the revocation.
ts_tls_utiltrustswebpki_roots::TLS_SERVER_ROOTSfor the control plane and DERP, and with the current lockfilets_tls_util::connectcompletes a handshake with a host served through one of those intermediates.The fix
TS_RS_EXTRA_CA_PEMis covered too.Checks
A throwaway example calling
ts_tls_util::connect(not committed), built on the old and the new lockfile:TLS OKCertDistrustedUnknownIssuerCertDistrustedTLS OKTLS OKA separate reqwest/rustls probe shows that either bump alone rejects both hosts: webpki-roots 1.0.10 with
UnknownIssuer, rustls-webpki 0.103.16 withCertDistrusted.Summary by CodeRabbit