CVE-2026-57488
pupnp: Integer truncation in HTTP Content-Length parsing enables request smuggling
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
Attack profile
How easy it is to exploit
- Attack vector
- Adjacent network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- None
- Integrity
- Low
- Availability
- High
Exploit likelihood
What each source reports
CVE List Score used
7.1
pupnp: Integer truncation in HTTP Content-Length parsing enables request smuggling
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
- Record
CVE-2026-57488- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Weakness
- CWE-190, CWE-444
- Updated
- 2026-11-02
EUVDEUVD-2026-102930
7.1
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
- Record
EUVD-2026-102930- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Updated
- 2026-11-02
NVD
7.1
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
- Record
CVE-2026-57488- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Weakness
- CWE-190, CWE-444
- Updated
- 2026-11-02
OSV
7.1
pupnp: Integer truncation in HTTP Content-Length parsing enables request smuggling
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
- Record
CVE-2026-57488- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Weakness
- CWE-190, CWE-444
- Updated
- 2026-11-02
OSVDEBIAN-CVE-2026-57488
7.1
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
- Record
DEBIAN-CVE-2026-57488- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-57488
7.1
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, raw_to_int in upnp/src/genlib/net/http/httpparser.c parses Content-Length with strtol and casts the resulting long to a 32-bit int before the caller stores it as unsigned int. On LP64 systems, values greater than INT_MAX can truncate or wrap, so the HTTP parser can accept a body length different from the declared value. A remote adjacent-network peer can use the resulting parser disagreement to leave bytes to be interpreted as another request in persistent or proxied contexts, or can make a worker wait for an extremely large body and cause denial of service. This issue is fixed in 2.0.2.
- Record
UBUNTU-CVE-2026-57488- CVSS 3.1
- 7.1 High
CVSS:3.1/AV:A/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
pupnpDebian:13 |
All versions, plus listed versions 1:1.14.20-11:1.14.20-1+deb13u11:1.14.23-11:1.14.24-11:1.14.24-2 Show 8 moreShow less1:1.14.24-31:1.14.25-11:1.14.31-11:1.18.0-11:1.18.4-11:1.18.5-11:22.1.8-11:22.1.8-2 |
None known |
pupnpDebian:14 |
before 1:22.1.8-2, plus listed versions 1:1.14.20-11:1.14.23-11:1.14.24-11:1.14.24-21:1.14.24-3 Show 6 moreShow less1:1.14.25-11:1.14.31-11:1.18.0-11:1.18.4-11:1.18.5-11:22.1.8-1 |
1:22.1.8-2 |
libupnpUbuntu:Pro:16.04:LTS |
All versions, plus listed versions 1:1.6.19+git20141001-11:1.6.19+git20141001-1ubuntu11:1.6.19+git20160116-11:1.6.19+git20160116-1ubuntu0.1~esm1 |
None known |
mediatombUbuntu:16.04:LTS |
All versions, plus listed versions 0.12.1-47-g7ab7616-1ubuntu10.12.1-47-g7ab7616-1ubuntu2 |
None known |
libupnpUbuntu:18.04:LTS |
All versions, plus listed versions 1:1.6.22-11:1.6.24-11:1.6.24-21:1.6.24-31:1.6.24-4 |
None known |
pupnp-1.8Ubuntu:18.04:LTS |
All versions, plus listed versions 1:1.8.2-21:1.8.2-3 |
None known |
pupnp-1.8Ubuntu:20.04:LTS |
All versions, plus listed versions 1:1.8.4-2ubuntu2 |
None known |
pupnp-1.8Ubuntu:22.04:LTS |
All versions, plus listed versions 1:1.8.4-2ubuntu2 |
None known |
pupnpUbuntu:24.04:LTS |
All versions, plus listed versions 1:1.14.18-1ubuntu11:1.14.18-1.1ubuntu11:1.14.18-1.1ubuntu2 |
None known |
pupnpUbuntu:26.10 |
All versions, plus listed versions 1:1.14.25-1ubuntu11:1.14.31-1ubuntu11:1.14.31-1ubuntu2 |
None known |
pupnpUbuntu:26.04:LTS |
All versions, plus listed versions 1:1.14.24-3ubuntu11:1.14.25-1ubuntu1 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| first indexed | CVE List, EUVD, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-57488 is a high vulnerability (CVSS 7.1) in Pupnp, published October 16, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.33%, the 26th percentile. Fixed in pupnp 1:22.1.8-2.
References
github.com/pupnp/pupnp/security/advisories/GHSA-g6c2-x4r9-352g
github.com/pupnp/pupnp/commit/de9602aef34ff722f3630d66c9be8eaa0aa9f012
github.com/pupnp/pupnp/releases/tag/release-2.0.2
github.com/CVEProject/cvelistV5/tree/main/cves/2026/57xxx/CVE-2026-57488.json
nvd.nist.gov/vuln/detail/CVE-2026-57488
security-tracker.debian.org/tracker/CVE-2026-57488
ubuntu.com/security/CVE-2026-57488
cve.org/CVERecord?id=CVE-2026-57488