What’s Vulnerable › Vulnerabilities
CVE-2025-4516: Use-after-free in "unicode_escape" decoder with error handler
- Severity: medium (CVSS 5.9 v4.0)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-05-15 · updated 2026-07-31
- Weakness: CWE-416
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.
Affected products
- Python: before 3.9.23; from 3.10.0 before 3.10.18; from 3.11.0 before 3.11.13; from 3.12.0 before 3.12.11; from 3.13.0 before 3.13.4; from 3.14.0a1 before 3.14.0b2 — fixed in 3.10.18, 3.11.13, 3.12.11, 3.13.4, 3.14.0b2, 3.9.23
How to fix
Upgrade to a fixed version: Python 3.10.18, 3.11.13, 3.12.11, 3.13.4. Check the vendor advisory for mitigations.
References
- https://github.com/python/cpython/commit/4398b788ffc1f954a2c552da285477d42a571292
- https://github.com/python/cpython/commit/6279eb8c076d89d3739a6edb393e43c7929b429d
- https://github.com/python/cpython/commit/69b4387f78f413e8c47572a85b3478c47eba8142
- https://github.com/python/cpython/commit/73b3040f592436385007918887b7e2132aa8431f
- https://github.com/python/cpython/commit/8d35fd1b34935221aff23a1ab69a429dd156be77
- https://github.com/python/cpython/commit/9f69a58623bd01349a18ba0c7a9cb1dad6a51e8e
- https://github.com/python/cpython/commit/ab9893c40609935e0d40a6d2a7307ea51aec598b
- https://github.com/python/cpython/issues/133767
- https://github.com/python/cpython/pull/129648
- https://mail.python.org/archives/list/security-announce@python.org/thread/L75IPBBTSCYEF56I2M4KIW353BB3AY74/
- http://www.openwall.com/lists/oss-security/2025/05/16/4
- http://www.openwall.com/lists/oss-security/2025/05/19/1
Get alerted when CVE-2025-4516 or the next vulnerability affects your stack