Home

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.

PUBLISHED Reserved 2024-12-23 | Published 2025-04-13 | Updated 2025-10-16 | Assigner CPANSec

Problem types

CWE-122 Heap-based Buffer Overflow

CWE-787 Out-of-bounds Write

Product status

Default status
unaffected

5.41.0 (custom)
affected

5.39.0 (custom) before 5.40.2-RC1
affected

5.33.1 (custom) before 5.38.4-RC1
affected

Credits

Nathan Mills finder

References

www.openwall.com/lists/oss-security/2025/04/13/3

www.openwall.com/lists/oss-security/2025/04/13/4

www.openwall.com/lists/oss-security/2025/04/13/5

github.com/...87f42aa0e0096e9a346c9672aa3a0bd3bef8c1dd.patch patch

metacpan.org/release/SHAY/perl-5.38.4/changes release-notes

metacpan.org/release/SHAY/perl-5.40.2/changes release-notes

cve.org (CVE-2024-56406)

nvd.nist.gov (CVE-2024-56406)

Download JSON