◆ CVE Hub

CVE-2026-114629

Web::Simple versions before 0.035 for Perl allocate a buffer sized by the Content-Length header for urlencoded body parameters

Published
2026-10-24
Last modified
2026-10-24
CNA
CPANSec
NVD status
Received
CWE
CWE-789

Fetching some sources has been requested. Reload in about a minute to see them.

CVSS v3.1 (listed by NVD)
—
Not scored
CVSS v4.0 (listed by NVD)
—
Not scored
CVSS (listed by CVE.org)
—
Not scored
EPSS exploit probability
—
Not computed
CISA KEV
—
Not listed

Description

NVD

Web::Simple versions before 0.035 for Perl allocate a buffer sized by the Content-Length header for urlencoded body parameters. Web::Dispatch::ParamParser::get_unpacked_body_from reads an application/x-www-form-urlencoded body using a single read call, with no cap and the return value ignored. Perl's read grows the buffer to the requested length before reading, so the declared Content-Length determines the allocation. An attacker can trigger this through any route whose dispatch specification has a % body-parameter match, such as sub (POST + %name=), sending a Content-Length far larger than the body actually sent. No authentication is involved.

Solutions (CNA)

Upgrade to Web::Simple 0.035 or later, and in the application configure $Web::Dispatch::ParamParser::MAX_BODY_SIZE.

Workarounds (CNA)

For deployments that cannot upgrade but are running behind a reverse proxy, configure the proxy to reject requests above a maxiumum Content-Length.

Affected products and packages

CNA (CVE.org)

VendorProductVersions
Web-Simple
affected: 0 … < 0.035
default: unaffected

Linux distribution status

Red Hat ↗ Fetching

Debian ↗

ReleasePackageStatusFixed version / notes
bookwormlibweb-simple-perlopen not yet assigned
forkylibweb-simple-perlopen not yet assigned
sidlibweb-simple-perlopen not yet assigned
trixielibweb-simple-perlopen not yet assigned

Ubuntu ↗ Fetching

References (3)