Description
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.0, multiple ixml DOM traversal functions process deeply nested XML with unbounded recursion. The iterative XML parser accepts the document, but ixmlPrintDomTreeRecursive in ixml/src/ixml.c and ixmlNode_getElementsByTagNameRecursive, ixmlNode_getElementsByTagNameNSRecursive, ixmlNode_cloneNodeTreeRecursive, and ixmlNode_isAncestor in ixml/src/node.c recurse over firstChild and nextSibling links. An unauthenticated peer on the local network can supply deeply nested XML through a SOAP request, exhaust a service thread's stack, and crash the UPnP service. This is an incomplete-fix case for CVE-2021-28302 because its remediation converted ixmlNode_free but left these traversal paths recursive. This issue is fixed in 2.0.0.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| pupnp | pupnp | < 2.0.0 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | pupnp | 1:22.1.8-2 | — |
| Debian 13 | pupnp | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | pupnp | No fix yet | — |
| Ubuntu 26.04 LTS | pupnp | No fix yet | — |
| Ubuntu 24.04 LTS | pupnp | No fix yet | — |
| Ubuntu 22.04 LTS | pupnp-1.8 | No fix yet | — |
| Ubuntu 20.04 LTS | pupnp-1.8 | No fix yet | — |
Show 3 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | libupnp +1 | No fix yet | — |
| Ubuntu 16.04 LTS | mediatomb | No fix yet | — |
| Ubuntu Pro 16.04 LTS | libupnp | No fix yet | — |