What’s Vulnerable › Vulnerabilities
CVE-2024-56406: Perl is vulnerable to a heap buffer overflow when transliterating non-ASCII bytes
- Severity: high (CVSS 8.4 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.5% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-04-13 · updated 2026-06-17
- Weakness: CWE-122
Description
A heap buffer overflow vulnerability was discovered in Perl. Release branches 5.34, 5.36, 5.38 and 5.40 are affected, including development versions from 5.33.1 through 5.41.10. When there are non-ASCII bytes in the left-hand-side of the `tr` operator, `S_do_trans_invmap` can overflow the destination pointer `d`. $ perl -e '$_ = "\x{FF}" x 1000000; tr/\xFF/\x{100}/;' Segmentation fault (core dumped) It is believed that this vulnerability can enable Denial of Service and possibly Code Execution attacks on platforms that lack sufficient defenses.
Affected products
- perl: from 5.33.1 before 5.38.4; from 5.39.0 before 5.40.2; from 5.41.0 through 5.41.10 — fixed in 5.38.4, 5.40.2
How to fix
Upgrade to a fixed version: perl 5.38.4, 5.40.2. Check the vendor advisory for mitigations.
References
- https://github.com/Perl/perl5/commit/87f42aa0e0096e9a346c9672aa3a0bd3bef8c1dd.patch
- https://metacpan.org/release/SHAY/perl-5.38.4/changes
- https://metacpan.org/release/SHAY/perl-5.40.2/changes
- http://www.openwall.com/lists/oss-security/2025/04/13/3
- http://www.openwall.com/lists/oss-security/2025/04/13/4
- http://www.openwall.com/lists/oss-security/2025/04/13/5
Get alerted when CVE-2024-56406 or the next vulnerability affects your stack