CVE-2026-57488: pupnp integer truncation in Content-Length parsing

CVE-2026-57488 · Severity: high · CVSS 7.1 · Published 2026-10-16

pupnp is an SDK for building UPnP applications that communicate over networks. A flaw in HTTP request parsing allows attackers to declare a body length larger than 2GB, which the parser silently truncates to a small value and accepts, creating request-smuggling vulnerabilities in proxies and persistent connections or enabling denial-of-service attacks by making workers wait indefinitely.

Technologies: Pupnp. Vendors: Pupnp.

Quick answers

Is CVE-2026-57488 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-57488 being exploited in the wild.
How severe is CVE-2026-57488?
High severity, with a CVSS score of 7.1, published 16 October 2026.
Which products and versions are affected?
Pupnp prior to 2.0.2.
Is there a fix for CVE-2026-57488?
Yes: fixed in 2.0.2. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-57488 attacked?
It is attacked from the adjacent network or over the network, in a software library.
Am I affected by CVE-2026-57488?
Check whether you run Pupnp at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • Fixed in: 2.0.2

Technical details

The raw_to_int() function in httpparser.c parses Content-Length using strtol() (which returns a 64-bit long on LP64 systems) and casts the result to a 32-bit int before storing it as unsigned int, silently truncating values above INT_MAX. An adjacent-network attacker can send a Content-Length like 4294967301 (2³²+5) which is stored as 5, bypassing size limits and enabling HTTP request smuggling or worker starvation. Fixed in 2.0.2 by switching to strtoll() with explicit bounds checking.

Affected products

  • pupnp pupnp prior to 2.0.2

Timeline

  • 2026-10-16: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.