Saltar al contenido
DUPIN
ALERTAS · EN VIVO
Contacto

VULNERABILIDAD

CVE-2026-103936 Denegación de servicio en @libp2p/webrtc con un solo paquete STUN previo a la autenticación

Antes de 6.0.28, el listener webRTCDirect() de Node.js en @libp2p/webrtc procesa solicitudes STUN Binding sin autenticar antes de la autenticación PeerId y demás etapas. El request.ufrag controlado por el paquete se reutiliza como contraseña ICE sin validar longitud ni juego de caracteres, y una credencial corta provoca una excepción nativa no capturada que aborta el proceso con SIGABRT, permitiendo denegar el servicio con un solo paquete UDP remoto.

Alerta de Nureq Monitor

Detectada 15 OCT · 15:47

CVSS 3.1

7.5ALTA

PROBABILIDAD DE EXPLOTACIÓN (EPSS)

0,5 % PERCENTIL 43

EXPLOTACIÓN ACTIVA

No confirmada

EXPLOIT PÚBLICO

No conocido

Qué es CVE-2026-103936

Antes de 6.0.28, el listener webRTCDirect() de Node.js en @libp2p/webrtc procesa solicitudes STUN Binding sin autenticar antes de la autenticación PeerId y demás etapas. El request.ufrag controlado por el paquete se reutiliza como contraseña ICE sin validar longitud ni juego de caracteres, y una credencial corta provoca una excepción nativa no capturada que aborta el proceso con SIGABRT, permitiendo denegar el servicio con un solo paquete UDP remoto.

Productos y versiones afectadas

  • libp2p js-libp2p

    • < 3.3.7
  • @libp2p webrtc

    • < 6.0.28

Qué hacer

  1. Verificá si usás js-libp2p y en qué versión: el rango afectado figura arriba.
  2. Actualizá a la versión corregida que indique el fabricante en su aviso (ver referencias) o aplicá la mitigación que publique.
  3. Revisá registros y accesos de los sistemas expuestos para descartar que se haya aprovechado antes de corregir.

Calculadora CVSS

CVSS 3.1 · 7.5 ALTA

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

VECTOR DE ATAQUE (AV)
Red
COMPLEJIDAD DEL ATAQUE (AC)
Baja
PRIVILEGIOS REQUERIDOS (PR)
Ninguno
INTERACCIÓN DEL USUARIO (UI)
Ninguna
ALCANCE (S)
Sin cambio
CONFIDENCIALIDAD (C)
Ninguna
INTEGRIDAD (I)
Ninguna
DISPONIBILIDAD (A)
Alta

Abrir la calculadora completa

Descripción original

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.

Referencias

Historial de la alerta

  1. VULNERABILIDAD Nueva vulnerabilidad detectada.

CÓMO SE HIZOResumen traducido automáticamente al español a partir de la descripción original. Ante dudas, la descripción original y las referencias del fabricante son la fuente de verdad. Cómo funciona.