CVE-2023-29530 Laminas Diactoros vulnerable to HTTP Multiline Header Termination

High 7.5 Published Updated

Attackers can cause denial of service or application errors in Laminas Diactoros by injecting newlines into HTTP headers.

Exploited in the wild
Not known
Login needed
Not needed
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2023-29530?

CVE-2023-29530 is a high-severity denial of service vulnerability in Fedoraproject Fedora, published on 24 Apr 2023. An attacker can exploit it over the internet without logging in, with no action from the victim.

Official description

Laminas Diactoros provides PSR HTTP Message implementations. In versions 2.18.0 and prior, 2.19.0, 2.20.0, 2.21.0, 2.22.0, 2.23.0, 2.24.0, and 2.25.0, users who create HTTP requests or responses using laminas/laminas-diactoros, when providing a newline at the start or end of a header key or value, can cause an invalid message. This can lead to denial of service vectors or application errors. The problem has been patched in following versions 2.18.1, 2.19.1, 2.20.1, 2.21.1, 2.22.1, 2.23.1, 2.24.1, and 2.25.1. As a workaround, validate HTTP header keys and/or values, and if using user-supplied values, filter them to strip off leading or trailing newline characters before calling `withHeader()`.

Weakness: CWE-20

Which versions are affected by CVE-2023-29530?

16 open source packages ship an affected version, including laminas/laminas-diactoros. It affects 3 products.

PackageAffectedFixed in
laminas/laminas-diactoros PackagistAll versions2.18.1
laminas/laminas-diactoros PackagistAll versions2.18.1
laminas/laminas-diactoros PackagistFrom 2.19.02.19.1
laminas/laminas-diactoros PackagistFrom 2.19.02.19.1
laminas/laminas-diactoros PackagistFrom 2.20.02.20.1
laminas/laminas-diactoros PackagistFrom 2.20.02.20.1
10 more packages
laminas/laminas-diactoros PackagistFrom 2.21.02.21.1
laminas/laminas-diactoros PackagistFrom 2.21.02.21.1
laminas/laminas-diactoros PackagistFrom 2.22.02.22.1
laminas/laminas-diactoros PackagistFrom 2.22.02.22.1
laminas/laminas-diactoros PackagistFrom 2.23.02.23.1
laminas/laminas-diactoros PackagistFrom 2.23.02.23.1
laminas/laminas-diactoros PackagistFrom 2.24.02.24.2
laminas/laminas-diactoros PackagistFrom 2.24.02.24.2
laminas/laminas-diactoros PackagistFrom 2.25.02.25.2
laminas/laminas-diactoros PackagistFrom 2.25.02.25.2

Products include Fedoraproject Fedora, Getlaminas Laminas-Diactoros, Guzzlephp Psr-7.

How do I fix CVE-2023-29530?

Upgrade laminas/laminas-diactoros to a fixed version for your release line: 2.18.1, 2.19.1, 2.20.1 or 2.21.1.

Upgrade, then put limits on request size, rate and nesting depth so one client cannot exhaust the service. More about Denial of service.

Is CVE-2023-29530 being exploited?

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

All Fedoraproject Fedora vulnerabilities

Sources

Also known as CLSA-2026-1781052745, GHSA-xv3h-4844-9h36.

Is CVE-2023-29530 in your software?

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

Check your SBOMs for free