VulnerabilityModified
CVE-2026-3644
The Morsel.update(), |= operator, and unpickling paths were not patched, allowing control characters to bypass input validation.
MEDIUM 6.0EPSS 0.48%
Does this matter?
Lower severity and a low EPSS score (0.48%). Track it; it rarely justifies an emergency change on its own.
Description
The fix for CVE-2026-0672, which rejected control characters in http.cookies.Morsel, was incomplete. The Morsel.update(), |= operator, and unpickling paths were not patched, allowing control characters to bypass input validation. Additionally, BaseCookie.js_output() lacked the output validation applied to BaseCookie.output().
- CVSS 4.0
- 6.0 MEDIUMCVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:L/VI:H/VA:N/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/M
- EPSS
- 0.48% probability · 40th percentile
- CISA KEV
- Not listed
- Weakness
- CWE-20, CWE-116
- Affected
- python/python
- Source
- cna@python.org
References
- https://github.com/python/cpython/commit/3974092b037f9a3b000fb15b48ea61ce3b25d330
- https://github.com/python/cpython/commit/556aa098e738b127c714866f819b4abe2f7593d8
- https://github.com/python/cpython/commit/57e88c1cf95e1481b94ae57abe1010469d47a6b4Patch
- https://github.com/python/cpython/commit/62ceb396fcbe69da1ded3702de586f4072b590ddPatch
- https://github.com/python/cpython/commit/d16ecc6c3626f0e2cc8f08c309c83934e8a979ddPatch
- https://github.com/python/cpython/commit/dae4b1a21f8df4570e30986affd61bbe4ade4cef
- https://github.com/python/cpython/issues/145599Issue Tracking
- https://github.com/python/cpython/pull/145600Patch
- https://mail.python.org/archives/list/security-announce@python.org/thread/H6CADMBCDRFGWCMOXWUIHFJNV43GABJ7/Third Party Advisory
Source: NVD record, EPSS from FIRST.org, KEV from CISA. Refreshed daily.