Repository navigation
Require certifi>=2026.10.19, upgrade the image's pip, and pin SDK to v3.6.1 - #418
Merged
Merged
Conversation
uv.lock still resolves socketdev 3.6.0: relock with `uv lock --upgrade-package socketdev` once 3.6.1 is on PyPI.
lelia
had a problem deploying
to
socket-firewall
October 21, 2026 20:44 — with
GitHub Actions
Failure
7 tasks done
lelia
marked this pull request as ready for review
October 21, 2026 20:57
lelia
had a problem deploying
to
socket-firewall
October 21, 2026 20:57 — with
GitHub Actions
Failure
certifi only came in through requests, so pip installs of socketsecurity could keep a CA bundle that trusts the compromised eMudhra intermediates; only the Docker image's lockfile pinned it. Add a floor to the package's dependencies. The image's pip (26.2.1) uses its own vendored CA bundle and still trusted them. Upgrade it to 26.2.2 or newer against the fixed system store, and have dockerfile-smoke require pip to reject the test hosts too.
lelia
had a problem deploying
to
socket-firewall
October 21, 2026 21:20 — with
GitHub Actions
Failure
certifi>=2026.10.19, upgrade the image's pip, and pin SDK to v3.6.1
David Larsen (dc-larsen)
approved these changes
Oct 21, 2026
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to #415 for the eMudhra intermediate CA compromise: closes the two remaining gaps, and pins Socket Python SDK 3.6.1 (SocketDev/socket-sdk-python#120), which carries the same certifi fix. Released as 2.11.3.
Root Cause
requestsbrings it in, so onlyuv.lockpinned it, anduv.lockisn't published. The Docker image installs from the lock, butpip install socketsecurityresolves certifi on its own and can keep a bundle that trusts the compromised intermediates. This includes existing environments and tools that bundle the CLI.socketdev/cli:2.11.2ships pip 26.2.1 (vendored certifi 2026.06.17), which completes a request todv-g3b-emudhra.we-have-a-problem.com.Fix
pyproject.toml: requirecertifi>=2026.10.19. It's a floor, not an exact pin like the other dependencies, so later trust-store fixes still reach installs.Dockerfile: upgrade pip to 26.2.2 or newer (vendors certifi 2026.10.19) against the fixed system store, and fail the build on anything older.dependency-review.yml:dockerfile-smokealso requires pip to reject the test hosts.pyproject.toml,uv.lock:socketdev==3.6.1, which requirescertifi>=2026.10.19too. Version 2.11.3 and changelog.Testing
Requires-Dist: certifi>=2026.10.19.pytest(580 passed) against the 3.6.1 lock.python:3-alpinewith this PR's CA store and pip steps: pip 26.2.2 rejects both test hosts withCERTIFICATE_VERIFY_FAILEDand still reaches PyPI. The same check fails againstsocketdev/cli:2.11.2.dockerfile-smokepasses on amd64 and arm64: the build upgrades pip from 26.2.1, and curl, Node, Pythonrequestsand pip all reject both test hosts, while api.socket.dev, npm and PyPI still connect.Public Changelog
socketsecuritynow requirescertifi>=2026.10.19, and thesocketdev/cliimage's pip no longer trusts the compromised eMudhra intermediate CAs.