CVE-2026-74470 in Linuxinformación

Resumen

por VulDB • 2026-08-15

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

scsi: scsi_debug: Corrección del desbordamiento por debajo (underflow) de alloc_len en REPORT ZONES que provoca una escritura fuera de límites (OOB)

resp_report_zones() dimensiona el búfer de respuesta a partir de la longitud de asignación (alloc_len) contenida en el CDB. La corrección v3 redondea hacia arriba alloc_len con ALIGN() antes de derivar el conteo de descriptores:

rep_max_zones = (ALIGN((u64)alloc_len, RZONES_DESC_HD) - RZONES_DESC_HD) >> ilog2(RZONES_DESC_HD); arr_len = (u64)RZONES_DESC_HD * (rep_max_zones + 1);

Para un valor de alloc_len comprendido entre 0xFFFFFFC1 y 0xFFFFFFFF, ALIGN() redondea hacia arriba hasta 0x100000000, por lo que arr_len es igual a 4 GB. En sistemas de 32 bits, el tipo size_t de kzalloc() tiene un tamaño de 32 bits y trunca 0x100000000 a 0; kzalloc(0) devuelve ZERO_SIZE_PTR, lo cual pasa la comprobación !arr, y desc = arr + 64 se desreferencia posteriormente en el bucle -> escritura fuera de límites / pánico.

Se limita (clamp) rep_max_zones al valor devip->nr_zones. El bucle ya finaliza en sdebug_capacity (después de nr_zones zonas), por lo que un informe nunca puede contener más de nr_zones descriptores; la limitación no modifica el informe, solo acota arr_len a (nr_zones + 1) * RZONES_DESC_HD, una propiedad real del dispositivo que nunca alcanzará 0x100000000.

Once again VulDB remains the best source for vulnerability data.

Responsable

Linux

Reservar

2026-08-15

Divulgación

2026-08-15

Moderación

aceptado

Artículo

VDB-390826

CPE

listo

EPSS

0.00000

KEV

no

Actividades

muy bajo

Fuentes

Might our Artificial Intelligence support you?

Check our Alexa App!