Instituto Nacional de ciberseguridad. Sección Incibe
Instituto Nacional de Ciberseguridad. Sección INCIBE-CERT

Vulnerabilidad en Linux (CVE-2026-22998)

Gravedad CVSS v3.1:
ALTA
Tipo:
CWE-476 Desreferencia a puntero nulo (NULL)
Fecha de publicación:
25/01/2026
Última modificación:
18/03/2026

Descripción

En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:<br /> <br /> nvme-tcp: soluciona desreferencias de puntero NULL en nvmet_tcp_build_pdu_iovec<br /> <br /> El commit efa56305908b (&amp;#39;nvmet-tcp: Soluciona un pánico del kernel cuando el host envía una longitud de PDU H2C inválida&amp;#39;) añadió la comprobación de límites de ttag y la validación de data_offset en nvmet_tcp_handle_h2c_data_pdu(), pero no validó si las estructuras de datos del comando (cmd-&amp;gt;req.sg y cmd-&amp;gt;iov) han sido inicializadas correctamente antes de procesar las PDUs H2C_DATA.<br /> <br /> La función nvmet_tcp_build_pdu_iovec() desreferencia estos punteros sin comprobaciones de NULL. Esto puede ser provocado enviando una PDU H2C_DATA inmediatamente después del handshake ICREQ/ICRESP, antes de enviar un comando CONNECT o un comando de escritura NVMe.<br /> <br /> Vectores de ataque que provocan desreferencias de puntero NULL:<br /> 1. PDU H2C_DATA enviada antes de CONNECT ? ambos punteros NULL<br /> 2. PDU H2C_DATA para comando READ ? cmd-&amp;gt;req.sg asignado, cmd-&amp;gt;iov NULL<br /> 3. PDU H2C_DATA para slot de comando no inicializado ? ambos punteros NULL<br /> <br /> La solución valida tanto cmd-&amp;gt;req.sg como cmd-&amp;gt;iov antes de llamar a nvmet_tcp_build_pdu_iovec(). Ambas comprobaciones son necesarias porque:<br /> - Comandos no inicializados: ambos NULL<br /> - Comandos READ: cmd-&amp;gt;req.sg asignado, cmd-&amp;gt;iov NULL<br /> - Comandos WRITE: ambos asignados

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.4.268 (incluyendo) 5.5 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.10.209 (incluyendo) 5.10.249 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.15.148 (incluyendo) 5.15.199 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.1.75 (incluyendo) 6.1.162 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.6.14 (incluyendo) 6.6.122 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7.2 (incluyendo) 6.12.67 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.13 (incluyendo) 6.18.7 (excluyendo)
cpe:2.3:o:linux:linux_kernel:6.19:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.19:rc5:*:*:*:*:*:*