CVE-2025-4516
Use-after-free in "unicode_escape" decoder with error handler
- State
- Published
- Severity
- 5.9 Medium
- Published
- May 15, 2025
- Updated
- Jul 31, 2026
- Reserved
- May 9, 2025
Description
There is an issue in CPython when using `bytes.decode("unicode_escape", error="ignore|replace")`. If you are not using the "unicode_escape" encoding or an error handler your usage is not affected. To work-around this issue you may stop using the error= handler and instead wrap the bytes.decode() call in a try-except catching the DecodeError.
Scores
| CVSS | Score | Vector | Source |
|---|---|---|---|
| 4.0 | 5.9 Medium | CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N | PSF |
Weaknesses
- CWE-416 Use After Free
Affected Products
| Product | Versions |
|---|---|
CPythonPython Software Foundation |
|
References
- https://github.com/python/cpython/issues/133767issue-tracking
- https://github.com/python/cpython/pull/129648patch
- https://mail.python.org/archives/list/security-announce@python.org/thread/L75IPBBTSCYEF56I2M4KIW353BB3AY74/vendor-advisory
- https://github.com/python/cpython/commit/69b4387f78f413e8c47572a85b3478c47eba8142patch
- https://github.com/python/cpython/commit/9f69a58623bd01349a18ba0c7a9cb1dad6a51e8epatch
- https://github.com/python/cpython/commit/4398b788ffc1f954a2c552da285477d42a571292patch
- https://github.com/python/cpython/commit/6279eb8c076d89d3739a6edb393e43c7929b429dpatch
- https://github.com/python/cpython/commit/73b3040f592436385007918887b7e2132aa8431fpatch
- https://github.com/python/cpython/commit/8d35fd1b34935221aff23a1ab69a429dd156be77patch
- https://github.com/python/cpython/commit/ab9893c40609935e0d40a6d2a7307ea51aec598bpatch
- http://www.openwall.com/lists/oss-security/2025/05/16/4
- http://www.openwall.com/lists/oss-security/2025/05/19/1
Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.