Katalog CVE

CVE-2026-103936

WysokieCVSS 7.5
Opublikowano: Zaktualizowano: Przetłumaczono: NVD NIST

Prawdopodobieństwo exploitacji (EPSS)

Niskie ryzyko
0.52%

Percentyl 43 - wyżej niż 43% wszystkich znanych CVE

Streszczenie

W bibliotece @libp2p/webrtc przed wersją 6.0.28 listener webRTCDirect() w Node.js przetwarza nieuwierzytelnione żądania STUN Binding przed uwierzytelnieniem PeerId, Noise, multipleksowaniem i negocjacją protokołu. Kontrolowane przez pakiet pole request.ufrag jest przekazywane do DirectRTCPeerConnection.setLocalDescription i używane jako hasło ICE bez walidacji długości i zestawu znaków, co powoduje nieobsłużony wyjątek native invalid_argument i przerwanie procesu sygnałem SIGABRT.

Ocena ryzyka

Pojedynczy zdalny pakiet UDP może spowodować zakończenie procesu (odmowa usługi). Potwierdzony wpływ ogranicza się do zatrzymania procesu — nie wykazano uszkodzenia pamięci ani wykonania kodu.

Rekomendacja

Zaktualizuj @libp2p/webrtc do wersji 6.0.28 lub nowszej.

Powiązane podatności

Oryginalny opis (angielski, źródło NVD)

libp2p is a JavaScript implementation of the libp2p networking stack. Prior to 6.0.28, the @libp2p/webrtc webRTCDirect() Node.js listener processes unauthenticated STUN Binding Requests before PeerId authentication, Noise, muxing, protocol negotiation, connection creation, or connection-manager admission. The listener in packages/transport-webrtc/src/private-to-public/utils/stun-listener.ts forwards the packet-controlled request.ufrag into DirectRTCPeerConnection.setLocalDescription, where the value is reused as an ICE password without validating its required length and character set. A short credential causes node-datachannel or libdatachannel to raise an uncaught native invalid_argument and abort the process with SIGABRT, allowing a single remote UDP packet to deny service. The confirmed impact is process termination only, with no demonstrated memory corruption, code execution, browser impact, confidentiality impact, integrity impact, or connection-limit bypass. This issue is fixed in version 6.0.28.

Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS