CVE-2025-4516

Deferred
Published: 15 May 2025, 13:29
Last modified:21 Apr 2026, 20:16

Vulnerability Summary

Overall Risk (default)
low
24/100
CVSS Score
5.9 MEDIUM
v4.0 (cve.org)
EPSS Score
0.21% LOW
0% probability +0.18%
KEV
Not listed
Ransomware
No reports
Public exploits
None found
Dark Web
Not detected

Timeline

15 May 2025, 13:29
Published
Vulnerability first disclosed
21 Apr 2026, 20:16
Last Modified
Vulnerability information updated

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.

CVSS Metrics

  • v4.0MEDIUMScore: 5.9CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
  • v4.0MEDIUMScore: 5.9CVSS:4.0/AV:L/AC:H/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/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

EPSS Trends

Current EPSS score: 0.21% Percentile: 43%

Techniques & Countermeasures

  • CWE-416Use After Free

    The product reuses or references memory after it has been freed. At some point afterward, the memory may be allocated again and saved in another pointer, while the original pointer references a location somewhere within the new allocation. Any operations using the original pointer are no longer valid because the memory "belongs" to the code that operates on the new pointer.

Affected Systems

  • python software foundationcpython

    < 3.9.23 | ≥ 3.10.0, < 3.10.18 | < 3.10.18 | ≥ 3.11.0, < 3.11.13 | ≥ 3.12.0, < 3.12.11 | ≥ 3.13.0, < 3.13.4 | ≥ 3.14.0a1, < 3.14.0b2

References (12)