CVE-2026-57486
WysokieCVSS 7.5Streszczenie
W bibliotece pupnp funkcja ixmlNode_compare przekazuje pola nodeValue, namespaceURI, prefix i localName bezpośrednio do strcmp, mimo że mogą być NULL dla atrybutów bez przestrzeni nazw. Gdy ixmlElement_removeAttributeNode porównuje dwa różne atrybuty o tej samej nazwie, dochodzi do dereferencji NULL i awarii procesu. Luka naprawiona w wersji 2.0.2.
Ocena ryzyka
Atakujący kontrolujący przetwarzany XML może doprowadzić do awarii procesu aplikacji korzystającej z pupnp, powodując odmowę usługi.
Rekomendacja
Zaktualizuj pupnp do wersji 2.0.2 lub nowszej. Unikaj przetwarzania niezaufanego XML do czasu wdrożenia poprawki.
Inne podatności w pupnp
Zobacz wszystkie- CVE-2026-77630Wysokie
W pupnp funkcja parse_hostport synchronicznie wywołuje getaddrinfo podczas przetwarzania nazw hostów dostarczonych przez atakującego w żądaniach HTTP i nagłówkach GENA SUBSCRIBE CALLBACK. Zdalny nieuwierzytelniony peer może wybrać wolno odpowiadającą lub nieodpowiadającą nazwę hosta i zablokować wątek miniserwera na czas oczekiwania resolvera, co pozwala na wyczerpanie puli wątków i odmowę usługi UPnP.
- CVE-2026-57488Wysokie
W bibliotece pupnp funkcja raw_to_int w pliku httpparser.c parsuje nagłówek Content-Length za pomocą strtol i rzutuje wynikowy long na 32-bitowy int przed zapisaniem jako unsigned int. W systemach LP64 wartości większe niż INT_MAX mogą zostać obcięte lub zawinięte, przez co parser HTTP może zaakceptować długość ciała inną niż zadeklarowana. Luka naprawiona w wersji 2.0.2.
- CVE-2026-57487Wysokie
W bibliotece pupnp nagłówek Transfer-Encoding: chunked powoduje, że parser HTTP pozostawia content_length na zero, podczas gdy dekodowane bajty są gromadzone w msg.entity. Limity g_maxContentLength sprawdzane w http_RecvMessage nie obejmują zdekodowanych ciał chunked, więc zdalny peer może zmusić proces do buforowania encji większej niż skonfigurowany maksymalny rozmiar. Luka naprawiona w wersji 2.0.2.
- CVE-2026-55862Średnie
W bibliotece pupnp przed wersją 2.0.0 wiele funkcji przechodzenia po drzewie DOM ixml przetwarza głęboko zagnieżdżony XML z nieograniczoną rekurencją. Nieuwierzytelniony peer w sieci lokalnej może dostarczyć taki XML przez żądanie SOAP, wyczerpać stos wątku usługi i wywołać awarię usługi UPnP.
Oryginalny opis (angielski, źródło NVD)
pupnp is an SDK for development of UPnP device and control point applications. Prior to 2.0.2, ixmlNode_compare in ixml/src/node.c passes the nullable nodeValue, namespaceURI, prefix, and localName fields directly to strcmp. Non-namespaced attributes created by ixmlDocument_createAttribute legitimately leave those fields NULL. When ixmlElement_removeAttributeNode compares two distinct attribute objects with the same nodeName through find_condition_node, the pointer-identity shortcut does not apply and the comparison dereferences NULL, causing a process crash when application handling of attacker-controlled XML reaches this path. This issue is fixed in 2.0.2.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

