Skip to content

fix(security): remove compromised emSign trust from provider environments - #123

Merged
stefan-jansen merged 3 commits into
mainfrom
dependabot/uv/certifi-2026.10.19
Oct 20, 2026
Merged

stefan-jansen merged 3 commits into
mainfrom
dependabot/uv/certifi-2026.10.19

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 20, 2026 •

Copy link
Copy Markdown
Contributor

Security repair

The locked certifi2026.7.22 bundle contains the compromised emSign ECC Root CA - G3. GHSA-6q48-6c7w-9gw2 is critical and identifies certifi2026.10.19 as fixed. This affects normal provider HTTPS trust, not the successor price-table implementation.

  • Add a runtime floor certifi>=2026.10.19 so fresh installations cannot select the vulnerable bundle.
  • Regenerate uv.lock through uv, upgrading only certifi's package version. The resolver also normalizes existing platform markers; other package versions are unchanged.
  • Exercise a real default provider HTTP client with certificate verification and hostname checks enabled. Inspect the actual packaged CA certificates by DER fingerprint: retain ISRG Root X1 and reject the compromised emSign G3. No live endpoint, credentials, optional crypto dependency, system-CA assumptions, or disabled TLS verification.

Evidence

  • Baseline728b84c: canonical full locked-environment pip-audit exits1, identifying certifi2026.7.22 / GHSA-6q48-6c7w-9gw2.
  • The actual default provider TLS regression fails with the old bundle. An isolated installation with the old certifi and an existing Data artifact also fails the fingerprint regression; the provider-session implementation is unchanged from the baseline.
  • Patched environment: provider TLS, registry and consistency tests27passed with ResourceWarning treated as errors. Full locked-environment pip-audit exits0: no known vulnerabilities.
  • Lock consistency, lint, format and type checks pass. Applicable full hosted source, platform, security, documentation and installed-package checks must pass on this head before ordinary merge.

The regression identities come from the advisory-named certificate in the vulnerable published bundle, not a version comparison or an expected value generated from the repaired input.

Reference: GHSA-6q48-6c7w-9gw2

AI assistance was used for the focused dependency repair and regression. The lock diff, independent root identities and failing-base/passing-fix evidence were reviewed. No release, deployment, insecure fallback or credential action.

Original Dependabot update

Bumps certifi from 2026.7.22 to 2026.10.19.

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    You can disable automated security fix PRs for this repo from the Security Alerts page.

Bumps [certifi](https://github.com/certifi/python-certifi) from 2026.7.22 to 2026.10.19.
- [Commits](certifi/python-certifi@2026.07.22...2026.10.19)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2026.10.19
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot Bot added dependencies Dependency updates python:uv Pull requests that update python:uv code labels Oct 20, 2026
@stefan-jansen stefan-jansen changed the title ci: bump certifi from 2026.7.22 to 2026.10.19 fix(security): remove compromised emSign trust from provider environments Oct 20, 2026
@stefan-jansen
stefan-jansen merged commit 9b36670 into main Oct 20, 2026
27 checks passed
@stefan-jansen
stefan-jansen deleted the dependabot/uv/certifi-2026.10.19 branch October 20, 2026 22:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Dependency updates python:uv Pull requests that update python:uv code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant