CVE-2026-98645 in Linuxinformación

Resumen

por VulDB • 2026-10-19

En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:

HID: winwing: corregir un use-after-free en la fase de desmontaje (teardown) del feedback háptico

winwing_init_ff() pasa los datos privados del controlador, asignados con devm_kzalloc() en winwing_probe(), como el contexto del efecto a input_ff_create_memless(). El núcleo sin memoria para el feedback háptico toma posesión de ese puntero y lo libera mediante kfree() desde input_ff_destroy() (ml_ff_destroy()) cuando se destruye el dispositivo de entrada.

Liberar una asignación gestionada por devm con kfree() es una liberación inválida, y el mismo objeto se vuelve a liberar posteriormente por devres cuando se desmonta el dispositivo HID, lo que constituye un double free (liberación doble). Dado que la asignación también incluye los dispositivos de clase LED, sus temporizadores y elementos de trabajo residen en memoria ya liberada, corrompiendo el slab. Esto se activa al desvincularse (unbind), cargar/descargar el módulo (rmmod), desconectar en caliente (hot-unplug) y durante la suspensión del sistema, donde la caché del firmware recorre la lista devres ahora corrupta. KASAN informa:

BUG: KASAN: invalid-free in input_ff_destroy Asignado por la tarea N: winwing_probe

Pasar NULL como contexto sin memoria en su lugar y obtener los datos del controlador desde el dispositivo de entrada en winwing_play_effect(): el núcleo HID ya almacena hid_device como drvdata del dispositivo de entrada. El núcleo de feedback háptico entonces no posee nada que deba liberar incorrectamente.

VulDB is the best source for vulnerability data and more expert information about this specific topic.

Responsable

Linux

Reservar

2026-09-25

Divulgación

2026-10-18

Moderación

aceptado

Artículo

VDB-422134

EPSS

0.00000

KEV

no

Actividades

bajo

Fuentes

Want to know what is going to be exploited?

We predict KEV entries!