{"id":"CVE-2026-3644","details":"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().","aliases":["PSF-2026-11"],"modified":"2026-04-09T11:17:07.944729Z","published":"2026-03-16T18:16:09.907Z","related":["CGA-x3jx-7xjp-vpm8","SUSE-SU-2026:1206-1","openSUSE-SU-2026:10469-1","openSUSE-SU-2026:10477-1","openSUSE-SU-2026:10478-1","openSUSE-SU-2026:10479-1","openSUSE-SU-2026:10480-1","openSUSE-SU-2026:10481-1"],"references":[{"type":"WEB","url":"https://mail.python.org/archives/list/security-announce@python.org/thread/H6CADMBCDRFGWCMOXWUIHFJNV43GABJ7/"},{"type":"REPORT","url":"https://github.com/python/cpython/issues/145599"},{"type":"FIX","url":"https://github.com/python/cpython/commit/57e88c1cf95e1481b94ae57abe1010469d47a6b4"},{"type":"FIX","url":"https://github.com/python/cpython/commit/62ceb396fcbe69da1ded3702de586f4072b590dd"},{"type":"FIX","url":"https://github.com/python/cpython/commit/d16ecc6c3626f0e2cc8f08c309c83934e8a979dd"},{"type":"FIX","url":"https://github.com/python/cpython/pull/145600"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/python/cpython","events":[{"introduced":"0"},{"fixed":"57e88c1cf95e1481b94ae57abe1010469d47a6b4"}]},{"type":"GIT","repo":"https://github.com/python/cpython","events":[{"introduced":"0"},{"fixed":"62ceb396fcbe69da1ded3702de586f4072b590dd"}]},{"type":"GIT","repo":"https://github.com/python/cpython","events":[{"introduced":"0"},{"fixed":"d16ecc6c3626f0e2cc8f08c309c83934e8a979dd"}]}],"versions":["v0.9.8","v0.9.9","v1.0.1","v1.0.2","v1.1","v1.1.1","v1.2","v1.2b1","v1.2b2","v1.2b3","v1.2b4","v1.3","v1.3b1","v1.4","v1.4b1","v1.4b2","v1.4b3","v1.5","v1.5.1","v1.5.2","v1.5.2a1","v1.5.2a2","v1.5.2b1","v1.5.2b2","v1.5.2c1","v1.5a1","v1.5a2","v1.5a3","v1.5a4","v1.5b1","v1.5b2","v1.6a1","v1.6a2","v2.0","v2.0b1","v2.0b2","v2.0c1","v2.1","v2.1a1","v2.1a2","v2.1b1","v2.1b2","v2.1c1","v2.1c2","v2.2a3","v2.3c1","v2.3c2","v2.4","v2.4a1","v2.4a2","v2.4a3","v2.4b1","v2.4b2","v2.4c1","v3.0a1","v3.0a2","v3.0a3","v3.0a4","v3.0a5","v3.0b1","v3.0b2","v3.0b3","v3.0rc1","v3.0rc2","v3.0rc3","v3.1","v3.10.0a1","v3.10.0a7","v3.11.0a3","v3.11.0a4","v3.11.0a5","v3.11.0a6","v3.11.0a7","v3.11.0b1","v3.12.0a1","v3.12.0a2","v3.12.0a3","v3.12.0a4","v3.12.0a5","v3.12.0a6","v3.12.0a7","v3.12.0b1","v3.13.0","v3.13.0a1","v3.13.0a2","v3.13.0a3","v3.13.0a4","v3.13.0a5","v3.13.0a6","v3.13.0b1","v3.13.0b2","v3.13.0b3","v3.13.0b4","v3.13.0rc1","v3.13.0rc2","v3.13.0rc3","v3.13.1","v3.13.10","v3.13.11","v3.13.12","v3.13.2","v3.13.3","v3.13.4","v3.13.5","v3.13.6","v3.13.7","v3.13.8","v3.14.0","v3.14.0a1","v3.14.0a2","v3.14.0a3","v3.14.0a4","v3.14.0a5","v3.14.0a6","v3.14.0a7","v3.14.0b1","v3.14.0b2","v3.14.0b3","v3.14.0b4","v3.14.0rc1","v3.14.0rc2","v3.14.0rc3","v3.14.1","v3.14.2","v3.14.3","v3.15.0a1","v3.15.0a2","v3.15.0a3","v3.15.0a4","v3.15.0a5","v3.15.0a6","v3.15.0a7","v3.1a1","v3.1a2","v3.1b1","v3.1rc1","v3.1rc2","v3.2a1","v3.2a2","v3.2a3","v3.2a4","v3.2b1","v3.2b2","v3.2rc1","v3.2rc2","v3.2rc3","v3.3.0a2","v3.3.0a3","v3.3.0a4","v3.3.0b1","v3.3.0b2","v3.3.0rc1","v3.3.0rc2","v3.3.0rc3","v3.4.0a1","v3.4.0a2","v3.4.0a3","v3.4.0a4","v3.4.0b1","v3.4.0b2","v3.4.0b3","v3.5.0a1","v3.5.0a2","v3.5.0a3","v3.5.0a4","v3.5.0b1","v3.6.0a3","v3.6.0b1","v3.7.0a2","v3.9.0a2"],"database_specific":{"source":"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2026-3644.json"}}],"schema_version":"1.7.5","severity":[{"type":"CVSS_V4","score":"CVSS: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/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X"}]}