CVE-2026-57487 PUBLISHED

libupnp chunked HTTP bodies can bypass g_maxContentLength and be fully buffered

Assigner: GitHub_M
Reserved: 24.06.2026 Published: 16.10.2026 Updated: 16.10.2026

pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, Transfer-Encoding: chunked causes the HTTP parser in upnp/src/genlib/net/http/httpparser.c to leave parser->content_length at zero while parser_parse_chunky_entity and parser_parse_chunky_body accumulate decoded bytes in parser->msg.entity. The g_maxContentLength checks in http_RecvMessage in upnp/src/genlib/net/http/httpreadwrite.c therefore reject oversized numeric Content-Length bodies but do not enforce the same limit on decoded chunked bodies. A remote peer that can reach a SOAP, GENA, miniserver, or control-point HTTP response path can make the process buffer an entity larger than the configured maximum, causing resource exhaustion and denial of service. This issue is fixed in 2.0.2.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS Score: 7.5

Product Status

Vendor pupnp
Product pupnp
Versions
  • Version < 2.0.2 is affected

References

Problem Types

  • CWE-770: Allocation of Resources Without Limits or Throttling CWE