Opened 6 days ago
Closed 5 days ago
#5703 closed enhancement (fixed)
perl-5.40.2
Reported by: | Douglas R. Reno | Owned by: | lfs-book |
---|---|---|---|
Priority: | highest | Milestone: | 12.4 |
Component: | Book | Version: | git |
Severity: | normal | Keywords: | |
Cc: |
Description
New point version
This is a security release for a vulnerability that allows for a heap buffer overflow.
======================================================================== CVE-2024-56406 CPAN Security Group ======================================================================== CVE ID: CVE-2024-56406 Distribution: perl Versions: from 5.40.0 until 5.40.2 from 5.38.0 until 5.38.4 from 5.36.0 through 5.36.3 from 5.34.0 through 5.34.3 MetaCPAN: https://metacpan.org/dist/perl VCS Repo: https://github.com/Perl/perl5/ Perl 5.34, 5.36, 5.38 and 5.40 are vulnerable to a heap buffer overflow when transliterating non-ASCII bytes Description ----------- A heap buffer overflow vulnerability was discovered in Perl. 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. Problem types ------------- CWE-122 Heap-based Buffer Overflow CWE-787 Out-of-bounds Write Mitigations ----------- Users should update perl to 5.40.2 or 5.38.4, or apply the upstream patch provided in the References section. 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 Credits ------- Nathan Mills, finder -- Stig Palmquist
Systems that are impacted will have a segmentation fault when running the following command:
perl -e '$_ = "\x{FF}" x 1000000; tr/\xFF/\x{100}/;'
On an LFS 12.3 system, that returns:
renodr [ /sources ]$ perl -e '$_ = "\x{FF}" x 1000000; tr/\xFF/\x{100}/;' Segmentation fault (core dumped)
Note:
See TracTickets
for help on using tickets.
Fixed at commit d470cdb21c.