CVE-2026-114629 PUBLISHED

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

Assigner: CPANSec
Reserved: 21.10.2026 Published: 24.10.2026 Updated: 24.10.2026

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.

Product Status

Package Collection https://cpan.org/modules
Package Name Web-Simple
Versions Default: unaffected
  • affected from 0 to 0.035 (excl.)

Workarounds

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

Solutions

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

References

Problem Types

  • CWE-789 Memory Allocation with Excessive Size Value CWE