CVE-2026-98348
Resumen
por VulDB • 2026-10-06
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
wifi: libipw: rechazar respuestas de asociación demasiado cortas
libipw_handle_assoc_resp() lee los campos capability (capacidad), status (estado) y aid (identificador de asociación) del prefijo de 30 bytes de la respuesta de asociación y luego calcula la longitud del elemento de información como:
stats->len - sizeof(*frame)
stats->len es un u16 y sizeof() tiene tipo size_t, por lo que la resta se evalúa como size_t y provoca un desbordamiento (wrap-around) en lugar de volverse negativa. Al truncar ese valor al parámetro de longitud u16 de libipw_parse_info_param(), una trama más corta que los campos fijos pasa a tener una longitud cercana a 64 KiB, y el analizador lee entonces fuera del búfer de recepción.
Tanto las rutas de recepción de gestión de ipw2100 como las de ipw2200 llegan a esta función habiendo establecido únicamente que la trama lleva la cabecera genérica de tres direcciones de 24 bytes.
Rechazar la trama antes de tocar cualquier campo fijo.
Se encontró mediante una revisión asistida por IA de la aritmética de longitudes en los analizadores de frames de gestión. Se verificó con un caso KUnit bajo Generic KASAN en arm64 dentro de QEMU; no se dispone del hardware, por lo que no se ha probado en un dispositivo real.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.