CVE-2026-40561 json
Starlet versions through 0.31 for Perl allows HTTP Request Smuggling via Improper Header Precedence
published 2026-05-03 6 mo ago modified 2026-10-26 13 d ago also EUVD-2026-26806
- cvss
- 5.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.4%
- EPSS 0.4% chance of exploitation in 30 days, percentile 30%
- public exploits
- 0
- none known
Summary
Starlet versions through 0.31 for Perl allows HTTP Request Smuggling via Improper Header Precedence.
Starlet incorrectly prioritizes "Content-Length" over "Transfer-Encoding: chunked" when both headers are present in an HTTP request. Per RFC 7230 3.3.3, Transfer-Encoding must take precedence.
An attacker could exploit this to smuggle malicious HTTP requests via a front-end reverse proxy.
Patch / fix
- starlet Debian 13 0.31-2+deb13u1
- starlet Debian 14 0.31-3
debian advisories DEBIAN-CVE-2026-40561
- perl-starlet Alpine 3.24, Alpine 3.23 0.32-r0
alpine advisories ALPINE-CVE-2026-40561
Alpine secdb © Alpine Linux, from https://secdb.alpinelinux.org via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
CISA SSVC
- Exploitation
- none
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 6 mo ago
Exploit prediction
0.36% chance of exploitation in the next 30 days, higher than 30% of all scored CVEs (FIRST EPSS, 2026-11-08).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CISA ADP | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N |
| CNA | 3.1 | 5.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N |
Affected products
- KAZUHO Starlet
Classification
- Weakness
-
- CWE-444 Inconsistent Interpretation of HTTP Requests
References
-
github.com
/kazuho/Starlet/commit/a7d5dfd1862aafa43e5eaca0fdb6acf4cc15b2d0.patch
patch
-
datatracker.ietf.org
/doc/html/rfc7230#section-3.3.3
third-party-advisory
-
metacpan.org
/release/KAZUHO/Starlet-0.32/changes
release-notes
-
openwall.com
/lists/oss-security/2026/05/03/1
mailing-list, third-party-advisory
Sources
- CVE List CVE-2026-40561
- NVD CVE-2026-40561
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.