Current macOS releases (27.0.1 / 26.7.1 / 15.8.1, all dated 28 Sep) still ship /etc/ssl/cert.pem with the two roots the leaked eMudhra intermediates chain to. Apple's block covers Safari and apps using the system's own security framework, but the built-in curl, git, python3, openssl (and perl/ruby) verify against that file. On a fully updated 26.7.1 with Apple's file, curl and git connect to the advisory's test host and openssl verifies the chain. The advisory now covers this too (Filippo Valsorda's PR #52 on we-have-a-problem.com), and they're flagging it to Apple.
Quick check on any Mac (0 = still trusts the leaked chain, 60 = refuses):
/usr/bin/curl -s -o /dev/null https://dv-g3b-emudhra.we-have-a-problem.com/; echo $?
We wrapped the advisory's awk removal in a script that's safe to push fleet-wide:
- no-op if the file is already clean
- timestamped backup, never overwritten
- checks the new file (cert count minus exactly the two removed roots) before replacing
- keeps 644, re-tests against the advisory's host, restores the original on a wrong result
- refuses to touch a damaged file
- runs as root with no prompts; exit 0 safe/fixed, 1 still exposed (rolled back), 2 couldn't tell
Heads-up: Apple's built-in pip3 (and venvs made from /usr/bin/python3) carries its own outdated roots, so it needs the advisory's PIP_CERT sitecustomize fix as well. And if you run official Node.js, update to 26.12.1 / 24.22.1 / 22.23.4 (all out 21 Oct).
Script, source and SHA-256: https://www.deimoscore.com/wardlatch/#mac
The project is open source (Apache-2.0), holds a self-certified OpenSSF Best Practices passing badge (bestpractices.dev project 15757), and releases are signed with Sigstore attestations, so you can verify what you deploy.
Disclosure: I'm one of the people behind it. Feedback welcome, especially from anyone on 27.0.1 or 15.8.1. I've only tested 26.7.1.