VDB

GHSA-ph84-rcj2-fxxm

GHSA-ph84-rcj2-fxxm PUBLISHED CVSS 7.5 HIGH

Record from GitHub Advisory Database · Published December 6, 2024

Starting in Python 3.12.0, the asyncio._SelectorSocketTransport.writelines() method would not "pause" writing and signal to the Protocol to drain the buffer to the wire once the write buffer reached the "high-water mark". Because of this, Protocols would not periodically drain the write buffer potentially leading to memory exhaustion. This vulnerability likely impacts a small number of users, you must be using Python 3.12.0 or later, on macOS or Linux, using the asyncio module with protocols, and using .writelines() method which had new zero-copy-on-write behavior in Python 3.12.0 and later. If not all of these factors are true then your usage of Python is unaffected.

Fixed versions

Upgrade to a fixed version or later. Language registries are listed first, then Linux distributions, then vendor products.

PackageEcosystemFixed in
python-3.13Chainguard3.13.1-r1
python-3.12Chainguard3.12.8-r1
python-3.12Wolfi3.12.8-r1
python-3.13Wolfi3.13.1-r1

Risk scores

CVSS 3.1
7.5
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Affected products

VendorProductVersions
chainguardpython-3.130
chainguardpython-3.120
wolfipython-3.120
wolfipython-3.130

Timeline

  • Dec 6, 2024 CVE Published
  • May 1, 2026 Security Advisory

Query this with the API

The same record, from the CLI:

vulnetix vdb vuln GHSA-ph84-rcj2-fxxm
vulnetix vdb fixes GHSA-ph84-rcj2-fxxm

Or with curl, using the org id and key from your account page:

curl -s -H "Authorization: ApiKey ${VULNETIX_ORG_ID}:${VULNETIX_API_KEY}" \
  "https://api.vdb.vulnetix.com/v2/vuln/GHSA-ph84-rcj2-fxxm/fixes/registry"

The Community plan is free and allows 50 queries a day. Get a free API key · API quickstart

Look up in the Resolve Platform →
$ Lookup Community · 50/day Open Lookup ›