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 Oct 24, 2026 CVSS 3.1 · 7.5 High EPSS < 1% KEV · Not listed
Description
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.

Remediation

Vendor Solution

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


Vendor Workaround

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

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics cvssV3_1

{'score': 7.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N'}

ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Description 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.
Title Web::Simple versions before 0.035 for Perl allocate a buffer sized by the Content-Length header for urlencoded body parameters
Weaknesses CWE-789
References

Subscriptions

No data.

Weaknesses

Sources

Status
PUBLISHED
Assigner
CPANSec
Published
Updated
Nov 2, 2026, 2:09 PM
Reserved
Oct 21, 2026, 9:43 PM
Status
Awaiting Analysis
Published
Oct 24, 2026, 2:16 PM
Modified
Nov 2, 2026, 3:17 PM