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

Vulnerabilidad en kernel de Linux (CVE-2024-46676)

Gravedad CVSS v3.1:
MEDIA
Tipo:
CWE-369 División por cero
Fecha de publicación:
13/09/2024
Última modificación:
23/09/2024

Descripción

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad: nfc: pn533: Añadir comprobación de llenado de lista de mod de sondeo En caso de que el valor de im_protocols sea 1 y el valor de tm_protocols sea 0, esta combinación pasa con éxito la comprobación 'if (!im_protocols && !tm_protocols)' en nfc_start_poll(). Pero luego, después de la llamada a pn533_poll_create_mod_list() en pn533_start_poll(), la lista de mod de sondeo permanecerá vacía y dev->poll_mod_count permanecerá en 0, lo que conduce a la división por cero. Normalmente, ningún protocolo im tiene el valor 1 en la máscara, por lo que el controlador no espera esta combinación. Pero estos valores de protocolo en realidad provienen del espacio de usuario a través de la interfaz Netlink (operación NFC_CMD_START_POLL). Por lo tanto, un programa dañado o malicioso puede enviar un mensaje que contenga una combinación "mala" de valores de parámetros de protocolo, de modo que dev->poll_mod_count no se incremente dentro de pn533_poll_create_mod_list(), lo que lleva a una división por cero. El seguimiento de la llamada se ve así: nfc_genl_start_poll() nfc_start_poll() ->start_poll() pn533_start_poll() Agregar comprobación de llenado de la lista de mods de sondeo. Encontrado por Linux Verification Center (linuxtesting.org) con SVACE.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 3.12 (incluyendo) 5.4.283 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (incluyendo) 5.10.225 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (incluyendo) 5.15.166 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.16 (incluyendo) 6.1.108 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.2 (incluyendo) 6.6.49 (excluyendo)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (incluyendo) 6.10.8 (excluyendo)
cpe:2.3:o:linux:linux_kernel:6.11:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.11:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.11:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.11:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:6.11:rc5:*:*:*:*:*:*