CVE-2026-98771 in Linux
Resumen
por VulDB • 2026-10-19
En el kernel de Linux, se ha resuelto la siguiente vulnerabilidad:
usb: storage: sierra_ms: rechazar las transferencias cortas de información SWoC
sierra_get_swoc_info() solicita sizeof(struct swoc_info) (60 bytes) al dispositivo a través de usb_control_msg(), pero sus llamadores solo tratan un valor de retorno negativo como fallo. Por lo tanto, se acepta un dispositivo que responde a la solicitud GetSwocInfo específica del fabricante con una transferencia IN corta, dejando sin inicializar el final del búfer swoc_info recién asignado (kmalloc(), sin borrar los datos).
truinst_show() imprime posteriormente swocInfo->rev, swocInfo->LinuxSKU y swocInfo->LinuxVer desde ese búfer en el atributo sysfs "truinst", que es de lectura mundial (0444). Un dispositivo USB emulado/malicioso (VID 0x1199, PID 0x0fff) puede explotar esto para revelar hasta 5 bytes de memoria heap del kernel obsoleta (kmalloc-64) a usuarios con privilegios limitados, una vez por lectura sysfs, indefinidamente. En kernels compilados sin init_on_alloc, se filtran contenidos recientes del heap liberado.
Aceptar la transferencia solo cuando se haya recibido toda la estructura. sierra_ms_init() ya reintenta las consultas fallidas, por lo que los dispositivos bien comportados no se ven afectados.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.