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

Vulnerabilidad en zephyr de zephyrproject (CVE-2026-10659)

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

Descripción

El controlador de disco de la capa de traducción flash Dhara (drivers/disk/ftl_dhara.c) implementó las retrollamadas dhara_nand_ de modo que, ante un error de flash, el código de error se escribía incondicionalmente a través del puntero dhara_error_t err proporcionado por el llamador (p. ej., err = DHARA_E_ECC en dhara_nand_read, y similar en dhara_nand_erase/prog/copy). La biblioteca Dhara ascendente llama a estas retrollamadas con err == NULL a lo largo de su búsqueda binaria de reanudación de diario: find_last_checkblock() invoca find_checkblock(j, mid, &found, NULL), que reenvía el puntero NULL a dhara_nand_read(). Esta ruta se ejecuta durante disk_ftl_access_init() -> dhara_map_resume() cada vez que el disco FTL se monta/inicializa. Si ocurre un error de lectura de flash (ECC incorregible, bloque defectuoso, error de controlador) en una de las páginas de punto de control sondeadas, el controlador desreferencia y escribe en NULL, provocando un fallo en el kernel (denegación de servicio). El disparador está condicionado por el contenido/estado del medio NAND, que puede ser influenciado por el desgaste del medio, fallos inducidos o una imagen en flash corrupta/manipulada. La solución encamina todas las asignaciones de error a través de la función auxiliar dhara_set_error() de la biblioteca, que es segura frente a NULL. Afecta a Zephyr v4.4.0, donde se introdujo el controlador.

Productos y versiones vulnerables

CPE Desde Hasta
cpe:2.3:o:zephyrproject:zephyr:4.4.0:*:*:*:*:*:*:*