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.
CVSS Details
- CVSS 4.0 Base Score: 8.7 (HIGH)
- CVSS 4.0 Vector: (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X)
- CVSS 3.1 Vector: (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)
Covered by Rapid7
| Product | Vendor Advisory | Solution File | Added | Published |
|---|---|---|---|---|
| Alma_linux | — | Upgrade python3.12-testUpgrade python3.12-idleUpgrade python3.12-rpm-macrosUpgrade python3.12-develUpgrade python3.12Upgrade python3.12-libsUpgrade python3.12-debugUpgrade python3.12-tkinter | Dec 19, 2024 | Dec 6, 2024 |
| Alpine Linux | — | Upgrade python3 | Aug 8, 2025 | Dec 6, 2024 |
| Amazon_linux_2023 | — | Upgrade python3.12-idleUpgrade python3.12-testUpgrade python3.12-libsUpgrade python3.12-tkinterUpgrade python3.12-debugsourceUpgrade python3.12-debugUpgrade python3.12-develUpgrade python3.12Upgrade python3.12-debuginfo | Feb 17, 2025 | Dec 6, 2024 |
| Debian | — | Upgrade python3.13 | Jul 27, 2026 | Jul 27, 2026 |
| Oracle_linux | — | Upgrade python3.12-testUpgrade python3.12-debugUpgrade python3.12-idleUpgrade python3.12-libsUpgrade python3.12-rpm-macrosUpgrade python3.12-develUpgrade python3.12Upgrade python3.12-tkinter | Dec 12, 2024 | Dec 6, 2024 |
| Redhat_linux | — | Upgrade python3.12-idleUpgrade python3.12-tkinterUpgrade python3.12-debugsourceUpgrade python3.12-rpm-macrosUpgrade python3.12Upgrade python3.12-debuginfoUpgrade python3.12-develUpgrade python3.12-debugUpgrade python3.12-testUpgrade python3.12-libs | Feb 10, 2025 | Dec 6, 2024 |
| Rocky_linux | — | Upgrade python3.12-develUpgrade python3.12Upgrade python3.12-idleUpgrade python3.12-debugsourceUpgrade python3.12-libsUpgrade python3.12-debugUpgrade python3.12-testUpgrade python3.12-debuginfoUpgrade python3.12-tkinter | Feb 5, 2026 | Dec 19, 2024 |
| Suse | — | Upgrade libpython3_12-1_0-32bitUpgrade python313-aiohttpUpgrade python312-docUpgrade python312-doc-devhelpUpgrade python313-base-x86-64-v3Upgrade python313-idleUpgrade python312-idleUpgrade python312-32bitUpgrade python313-docUpgrade python313-dbmUpgrade python313-x86-64-v3Upgrade python312-baseUpgrade python313-cursesUpgrade libpython3_12-1_0Upgrade python312-tkUpgrade python312-develUpgrade python313Upgrade python312-base-32bitUpgrade python312-toolsUpgrade python313-toolsUpgrade python313-tkUpgrade libpython3_13-1_0Upgrade python312Upgrade python312-dbmUpgrade python313-develUpgrade libpython3_13-1_0-x86-64-v3Upgrade python312-testsuiteUpgrade python313-baseUpgrade python313-doc-devhelpUpgrade python312-curses | Jan 9, 2025 | Dec 6, 2024 |
| Ubuntu | — | Upgrade python3.12-minimalUpgrade python3.12 | Jan 23, 2025 | Dec 6, 2024 |
Prioritise with Active Threat Intelligence
With curated Threat Intelligence, you can see which vulnerabilities truly put you at risk, prioritize what matters most, and act before attackers do.
Explore Intelligence Hub