Skip to content

fix: reject certificates from the leaked emudhra intermediates - #2464

Merged
scode merged 1 commit into
mainfrom
distrust-emudhra-intermediates
Oct 20, 2026
Merged

scode merged 1 commit into
mainfrom
distrust-emudhra-intermediates

Conversation

@scode

@scode scode commented Oct 20, 2026

Copy link
Copy Markdown
Owner

The private keys of eight eMudhra intermediate CAs leaked in October 2026
(write-up: https://emudhra.we-have-a-problem.com/), and the roots they chain
to are trusted by the major root programs. Farhelm checks HTTPS certificates
against the operating system's certificate store and does not check
revocation. On a Linux machine whose CA certificates package has not been
updated yet (Debian had not shipped one at the time), the helm therefore
accepts certificates issued with those keys, so whoever holds a key can pose as
the servers the helm reaches over HTTPS. For the feedback endpoint that means
reading or dropping what users send. Release downloads for adding or updating
a host are still checked against a signed SHA256SUMS, so there an attacker can
only block them, not alter them.

This updates rustls-webpki, the library that does that certificate check on
Linux, to 0.103.16, which refuses any chain containing the leaked keys
whatever the trust store says (rustls/webpki#546). That closes the gap without
waiting on distributions. macOS needs nothing: Farhelm uses Apple's verifier
there, and Apple already blocks these intermediates.

The private keys of eight eMudhra intermediate CAs leaked in October 2026
(write-up: https://emudhra.we-have-a-problem.com/), and the roots they chain
to are trusted by the major root programs. Farhelm checks HTTPS certificates
against the operating system's certificate store and does not check
revocation. On a Linux machine whose CA certificates package has not been
updated yet (Debian had not shipped one at the time), the helm therefore
accepts certificates issued with those keys, so whoever holds a key can pose as
the servers the helm reaches over HTTPS. For the feedback endpoint that means
reading or dropping what users send. Release downloads for adding or updating
a host are still checked against a signed SHA256SUMS, so there an attacker can
only block them, not alter them.

This updates rustls-webpki, the library that does that certificate check on
Linux, to 0.103.16, which refuses any chain containing the leaked keys
whatever the trust store says (rustls/webpki#546). That closes the gap without
waiting on distributions. macOS needs nothing: Farhelm uses Apple's verifier
there, and Apple already blocks these intermediates.
@scode
scode marked this pull request as ready for review October 20, 2026 22:22
@scode
scode merged commit 4e6a17d into main Oct 20, 2026
@scode
scode deleted the distrust-emudhra-intermediates branch October 20, 2026 22:23
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