CVE-2023-47038 Perl: write past buffer end via illegal user-defined unicode property

High 7.0 Published Updated

Attackers can trigger a heap buffer overflow via crafted regular expressions in Perl, potentially leading to code execution or denial of service.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Local or same network only
Victim action needed
Not needed
Fix
Available

What is CVE-2023-47038?

CVE-2023-47038 is a high-severity memory corruption vulnerability in Fedoraproject Fedora, published on 18 Dec 2023. It can only be exploited from the same machine or local network, with no action from the victim.

Official description

A vulnerability was found in perl 5.30.0 through 5.38.0. This issue occurs when a crafted regular expression is compiled by perl, which can allow an attacker controlled byte buffer overflow in a heap allocated buffer.

Weakness: CWE-787, CWE-122

Which versions are affected by CVE-2023-47038?

It affects 5 products.

Linux distribution packages (40)
perl AlmaLinux:8All versions4:5.32.1-473.module_el8.10.0+3779+d5938d28
perl-Algorithm-Diff AlmaLinux:8All versions1.1903-10.module_el8.6.0+2766+8bf0b7ce
perl-Archive-Tar AlmaLinux:8All versions2.38-3.module_el8.6.0+2766+8bf0b7ce
perl-Archive-Zip AlmaLinux:8All versions1.68-3.module_el8.6.0+2766+8bf0b7ce
perl-Attribute-Handlers AlmaLinux:8All versions1.01-473.module_el8.10.0+3779+d5938d28
perl-AutoLoader AlmaLinux:8All versions5.74-473.module_el8.10.0+3779+d5938d28
perl-AutoSplit AlmaLinux:8All versions5.74-473.module_el8.10.0+3779+d5938d28
perl-B AlmaLinux:8All versions1.80-473.module_el8.10.0+3779+d5938d28
perl-Benchmark AlmaLinux:8All versions1.23-473.module_el8.10.0+3779+d5938d28
perl-CPAN AlmaLinux:8All versions2.28-5.module_el8.6.0+2766+8bf0b7ce
perl-CPAN-DistnameInfo AlmaLinux:8All versions0.12-13.module_el8.6.0+2766+8bf0b7ce
perl-CPAN-Meta AlmaLinux:8All versions2.150010-397.module_el8.6.0+2766+8bf0b7ce
perl-CPAN-Meta-Requirements AlmaLinux:8All versions2.140-397.module_el8.6.0+2766+8bf0b7ce
perl-CPAN-Meta-YAML AlmaLinux:8All versions0.018-1001.module_el8.6.0+2766+8bf0b7ce
perl-Carp AlmaLinux:8All versions1.50-439.module_el8.6.0+2766+8bf0b7ce
perl-Class-Struct AlmaLinux:8All versions0.66-473.module_el8.10.0+3779+d5938d28
perl-Compress-Bzip2 AlmaLinux:8All versions2.28-2.module_el8.6.0+2766+8bf0b7ce
perl-Compress-Bzip2 AlmaLinux:8All versions2.28-2.module_el8.6.0+3181+91434291
perl-Compress-Raw-Bzip2 AlmaLinux:8All versions2.096-1.module_el8.6.0+2766+8bf0b7ce
perl-Compress-Raw-Bzip2 AlmaLinux:8All versions2.096-1.module_el8.6.0+3181+91434291
perl-Compress-Raw-Lzma AlmaLinux:8All versions2.096-1.module_el8.6.0+2766+8bf0b7ce
perl-Compress-Raw-Lzma AlmaLinux:8All versions2.096-1.module_el8.6.0+3181+91434291
perl-Compress-Raw-Zlib AlmaLinux:8All versions2.096-2.module_el8.10.0+3779+d5938d28
perl-Config-Extensions AlmaLinux:8All versions0.03-473.module_el8.10.0+3779+d5938d28
perl-Config-Perl-V AlmaLinux:8All versions0.32-441.module_el8.6.0+2766+8bf0b7ce
perl-DBM_Filter AlmaLinux:8All versions0.06-473.module_el8.10.0+3779+d5938d28
perl-DB_File AlmaLinux:8All versions1.855-1.module_el8.6.0+2766+8bf0b7ce
perl-DB_File AlmaLinux:8All versions1.855-1.module_el8.6.0+3181+91434291
perl-Data-Dumper AlmaLinux:8All versions2.174-440.module_el8.6.0+2766+8bf0b7ce
perl-Data-Dumper AlmaLinux:8All versions2.174-440.module_el8.6.0+3181+91434291
perl-Data-OptList AlmaLinux:8All versions0.110-7.module_el8.6.0+2766+8bf0b7ce
perl-Data-Section AlmaLinux:8All versions0.200007-8.module_el8.6.0+2766+8bf0b7ce
perl-Devel-PPPort AlmaLinux:8All versions3.62-1.module_el8.6.0+2766+8bf0b7ce
perl-Devel-PPPort AlmaLinux:8All versions3.62-1.module_el8.6.0+3181+91434291
perl-Devel-Peek AlmaLinux:8All versions1.28-473.module_el8.10.0+3779+d5938d28
perl-Devel-SelfStubber AlmaLinux:8All versions1.06-473.module_el8.10.0+3779+d5938d28
perl-Devel-Size AlmaLinux:8All versions0.83-3.module_el8.6.0+2766+8bf0b7ce
perl-Devel-Size AlmaLinux:8All versions0.83-3.module_el8.6.0+3181+91434291
perl-Digest AlmaLinux:8All versions1.20-1.module_el8.6.0+2766+8bf0b7ce
perl-Digest-MD5 AlmaLinux:8All versions2.58-1.module_el8.6.0+2766+8bf0b7ce

Products include Fedoraproject Fedora, Perl Perl, Redhat Enterprise Linux, Redhat Enterprise Linux Aus, Redhat Enterprise Linux Eus.

How do I fix CVE-2023-47038?

Upgrade to a fixed version.

Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.

Is CVE-2023-47038 being exploited?

There is no known exploitation of CVE-2023-47038 in the wild and no public exploit code.

All Fedoraproject Fedora vulnerabilities

Sources

Also known as ALPINE-CVE-2023-47038, ALSA-2024:2228, ALSA-2024:3128, BELL-CVE-2023-47038, CLEANSTART-2026-ZY99559, CVE-2023-47100 and 11 more.

Is CVE-2023-47038 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free