Skip to content

fix: Update certificate bundles for eMudhra CA key compromise - #204

Merged
chrisburr merged 1 commit into
DIRACGrid:mainfrom
fstagni:fix/update-certificates-emudhra-cve
Oct 26, 2026
Merged

chrisburr merged 1 commit into
DIRACGrid:mainfrom
fstagni:fix/update-certificates-emudhra-cve

Conversation

@fstagni

@fstagni fstagni commented Oct 26, 2026

Copy link
Copy Markdown
Contributor

Summary

On 2026-10-20 the private keys of eight eMudhra/emSign intermediate CA certificates were disclosed as compromised (CVE-2026-111943, keys trivially recoverable, d < 256). TLS clients still trusting them are exposed to MITM attacks, and DIRACOS ships its own trust stores, so the installer must not build with pre-patch bundles.

 construct.yaml (Security specs)
-  - certifi
+  - certifi >=2026.10.19        # removes compromised emSign roots
+  - ca-certificates >=2026.10.19
+  - pip >=26.2.2                # vendors its own certifi bundle
 pixi.toml [exclude-newer]
+  ca-certificates = "0d"        # bypass 7-day cooldown for security releases
+  certifi = "0d"
+  pip = "0d"
 pixi.lock
-  certifi 2026.1.4 / ca-certificates 2026.1.4 / pip 25.3
+  certifi 2026.10.23 / ca-certificates 2026.10.23 / pip 26.2.2

Note: pixi.toml already had a 7-day exclude-newer cooldown to avoid compromised/broken releases; it would also have blocked these security releases, hence the targeted exemptions (same pattern as the existing constructor exemption).

Evidence

Verified against the live incident checker from a DIRACOS environment with the updated packages (certifi 2026.10.23, pip 26.2.2):

https://dv-g3b-emudhra.we-have-a-problem.com/     -> SSLError: CERTIFICATE_VERIFY_FAILED  (blocked ✅)
https://dv-g3b-aaa-emudhra.we-have-a-problem.com/ -> SSLError: CERTIFICATE_VERIFY_FAILED  (blocked ✅)
https://pypi.org/                                 -> 200                                  (TLS still works ✅)

Bundle inspection confirms the compromised roots (emSign Root TLS CA - G3, emSign Root CS CA - G3, emSign ECC Root CA - G3 and the Sectigo AAA cross-sign) are gone from both ca-certificates and certifi bundles, while the unaffected emSign Root CA - G1 is correctly retained.

Merge Danger

Door: two-way (revertable bump; the floors can be relaxed later)

Blast Radius: TLS trust of all DIRACOS installer builds. Removal of the emSign roots could break connections to services that (still) legitimately use emSign-issued certificates, but these roots were removed by every major trust store for the same reason.

The private keys of eight eMudhra/emSign intermediate CA certificates
were disclosed as compromised on 2026-10-20 (CVE-2026-111943).

- Require certifi >=2026.10.19 and ca-certificates >=2026.10.19, which
  remove the compromised emSign roots (the unaffected emSign Root CA - G1
  is retained).
- Require pip >=26.2.2: pip vendors its own certifi bundle and trusts it
  in addition to the system store, so older pip stays vulnerable.
- Exempt these packages (plus pip) from the 7-day release cooldown in
  pixi.toml, otherwise the security releases would be blocked.
Comment thread pixi.toml
# must not be blocked by the 7-day window.
ca-certificates = "0d"
certifi = "0d"
pip = "0d"

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'll create a follow-up PR to remove this exception later on

@chrisburr
chrisburr merged commit 3b38291 into DIRACGrid:main Oct 26, 2026
31 of 32 checks passed
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.

2 participants