{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2026-3644", "assignerOrgId": "28c92f92-d60d-412d-b760-e73465c3df22", "state": "PUBLISHED", "assignerShortName": "PSF", "dateReserved": "2026-03-06T16:13:09.289Z", "datePublished": "2026-03-16T17:37:31.344Z", "dateUpdated": "2026-08-13T00:27:41.980Z" }, "containers": { "cna": { "affected": [ { "defaultStatus": "unaffected", "modules": [ "http.cookies" ], "product": "CPython", "repo": "https://github.com/python/cpython", "vendor": "Python Software Foundation", "versions": [ { "version": "0", "lessThan": "3.10.21", "status": "affected", "versionType": "python" }, { "version": "3.11.0", "lessThan": "3.11.16", "status": "affected", "versionType": "python" }, { "version": "3.12.0", "lessThan": "3.12.14", "status": "affected", "versionType": "python" }, { "version": "3.13.0", "lessThan": "3.13.13", "status": "affected", "versionType": "python" }, { "version": "3.14.0", "lessThan": "3.14.4", "status": "affected", "versionType": "python" }, { "version": "3.15.0a1", "lessThan": "3.15.0a8", "status": "affected", "versionType": "python" } ] } ], "credits": [ { "lang": "en", "type": "coordinator", "value": "Stan Ulbrych" }, { "lang": "en", "type": "remediation developer", "value": "Stan Ulbrych" }, { "lang": "en", "type": "remediation reviewer", "value": "Victor Stinner" }, { "lang": "en", "type": "remediation reviewer", "value": "Seth Larson" }, { "lang": "en", "type": "reporter", "value": "Vyom Yadav" } ], "descriptions": [ { "lang": "en", "supportingMedia": [ { "base64": false, "type": "text/html", "value": "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()." } ], "value": "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()." } ], "metrics": [ { "cvssV4_0": { "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "Safety": "NOT_DEFINED", "attackComplexity": "LOW", "attackRequirements": "PRESENT", "attackVector": "NETWORK", "baseScore": 6, "baseSeverity": "MEDIUM", "exploitMaturity": "NOT_DEFINED", "privilegesRequired": "LOW", "providerUrgency": "NOT_DEFINED", "subAvailabilityImpact": "NONE", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "NONE", "userInteraction": "NONE", "valueDensity": "NOT_DEFINED", "vectorString": "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", "version": "4.0", "vulnAvailabilityImpact": "NONE", "vulnConfidentialityImpact": "LOW", "vulnIntegrityImpact": "HIGH", "vulnerabilityResponseEffort": "NOT_DEFINED" }, "format": "CVSS", "scenarios": [ { "lang": "en", "value": "GENERAL" } ] } ], "providerMetadata": { "orgId": "28c92f92-d60d-412d-b760-e73465c3df22", "shortName": "PSF", "dateUpdated": "2026-08-13T00:27:41.980Z" }, "references": [ { "tags": [ "vendor-advisory" ], "url": "https://mail.python.org/archives/list/security-announce@python.org/thread/H6CADMBCDRFGWCMOXWUIHFJNV43GABJ7/" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/commit/57e88c1cf95e1481b94ae57abe1010469d47a6b4" }, { "tags": [ "issue-tracking" ], "url": "https://github.com/python/cpython/issues/145599" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/pull/145600" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/commit/62ceb396fcbe69da1ded3702de586f4072b590dd" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/commit/d16ecc6c3626f0e2cc8f08c309c83934e8a979dd" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/commit/556aa098e738b127c714866f819b4abe2f7593d8" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/commit/dae4b1a21f8df4570e30986affd61bbe4ade4cef" }, { "tags": [ "patch" ], "url": "https://github.com/python/cpython/commit/3974092b037f9a3b000fb15b48ea61ce3b25d330" } ], "source": { "discovery": "UNKNOWN" }, "title": "Incomplete control character validation in http.cookies", "x_generator": { "engine": "Vulnogram 1.0.0" } }, "adp": [ { "problemTypes": [ { "descriptions": [ { "type": "CWE", "cweId": "CWE-20", "lang": "en", "description": "CWE-20 Improper Input Validation" } ] }, { "descriptions": [ { "type": "CWE", "cweId": "CWE-116", "lang": "en", "description": "CWE-116 Improper Encoding or Escaping of Output" } ] } ], "metrics": [ { "other": { "type": "ssvc", "content": { "timestamp": "2026-03-16T18:25:27.051552Z", "id": "CVE-2026-3644", "options": [ { "Exploitation": "none" }, { "Automatable": "no" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "version": "2.0.3" } } } ], "title": "CISA ADP Vulnrichment", "providerMetadata": { "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP", "dateUpdated": "2026-03-16T18:25:55.021Z" } } ] } }