fuente: https://thehackernews.com/2026/11/nodejs-fixes-16-flaws-including-http2.html
Una vulnerabilidad corregida esta semana en Node.js permite que clientes no autenticados bloqueen los servidores que utilizan la compatibilidad integrada con HTTP/2 en las versiones 24.x y 26.x. Una segunda vulnerabilidad de HTTP/2 puede provocar que un servidor envíe a un cliente fragmentos de su memoria, incluyendo respuestas destinadas a otras conexiones.
Se publicaron versiones corregidas para las tres versiones compatibles: 22.23.5, 24.22.3 y 26.13.1.
La vulnerabilidad que provoca el bloqueo, CVE-2026-123863, solo requiere un servidor HTTP/2 predeterminado que responda antes de que el cuerpo de la solicitud haya llegado por completo. El proyecto Node.js considera que este comportamiento es típico. El bloqueo funciona tanto con conexiones TLS como sin cifrar.
La vulnerabilidad de memoria, CVE-2026-123866, afecta a las tres versiones. A partir de la versión 24.22.0 y la 26.9.0, un solo cliente puede activarla. En las versiones 22.x y anteriores (24.x y 26.x), aún puede activarse cuando el propio servidor cierra un flujo a mitad de una respuesta, por ejemplo, tras un tiempo de espera por inactividad.
Otra vulnerabilidad en los servidores HTTPS de Node.js, CVE-2026-123864, permite que un cliente no autenticado lea la memoria de otras conexiones, «incluidas las claves privadas TLS y las solicitudes de otros usuarios», según el proyecto. Afecta a las tres líneas compatibles.
La vulnerabilidad requiere un manejador que llame a res.flushHeaders() antes de que el cuerpo de la solicitud haya llegado por completo y que posteriormente llame a res.end() con los datos. Para leer la memoria filtrada, también se necesita una ruta que devuelva o almacene el cuerpo de la solicitud. Los servidores HTTP simples creados con node:http no se ven afectados.
Esta versión corrige 16 vulnerabilidades en Node.js, siete de ellas de alta gravedad. Las otras cuatro vulnerabilidades de alta gravedad, y los servidores afectados, son:
CVE-2026-123865: Un cliente puede hacer que cualquier servidor HTTP/2 predeterminado retenga permanentemente la memoria y los descriptores de archivo en las tres líneas.
CVE-2026-123874: Un cliente puede corromper la memoria del servidor en las versiones 24.x y 26.x cuando el servidor sirve archivos con stream.respondWithFile() o stream.respondWithFD(). En las tres líneas, cancelar dichas descargas también puede provocar el fallo del servidor (CVE-2026-123875, gravedad media).
CVE-2026-126051: Un cliente puede provocar el fallo de un servidor TLS en las versiones 24.x y 26.x si el servidor utiliza los hooks SNCallback, OCSPRequest, newSession o resumeSession, o server.addContext(). CVE-2026-123872: En un servidor TLS con reglas de certificado de cliente más estrictas para ciertos nombres de host, un cliente aprobado para otro nombre de host puede cambiar a uno más estricto durante la renegociación de TLS 1.2 sin cumplir con sus reglas. Las tres líneas se ven afectadas.
Las ocho vulnerabilidades mencionadas se encuentran en el código del servidor HTTP/2, HTTPS y TLS de Node.js, por lo que son relevantes en el caso de que un proceso de Node.js acepte dichas conexiones.
La única solución que se indica en el aviso de seguridad del proyecto es actualizar a la versión corregida para cada línea. No se proporciona ninguna solución alternativa para los servidores que aún no pueden actualizar.
Desde el martes, un atacante utilizó credenciales robadas de 4.837 cuentas de GitHub para instalar un programa malicioso de robo de secretos en repositorios a l...
Leer artículo →Un fallo crítico en el servidor de MongoDB permite a un atacante no autenticado enviar dos solicitudes que causan un colapso en el servidor de base de datos. El...
Leer artículo →El gigante naviero Maersk ha confirmado que un ciberdelincuente vulneró los sistemas de una empresa que adquirió previamente y robó datos. El grupo de ransomwar...
Leer artículo →