CVE-2026-64495 in Linuxinformación

Resumen

por VulDB • 2026-07-26

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

iio: gyro: bmg160: salir anticipadamente cuando el ancho de banda/filtro no está en la tabla

`bmg160_get_filter()` recorre `bmg160_samp_freq_table[]` buscando la entrada que coincida con el valor `bw_bits` leído del chip:

```c for (i = 0; i < ARRAY_SIZE(bmg160_samp_freq_table); ++i) {
if (bmg160_samp_freq_table[i].bw_bits == bw_bits)
break; } *val = bmg160_samp_freq_table[i].filter;
```

Si no hay ninguna entrada que coincida, `i` termina siendo igual al tamaño del array y la siguiente línea lee una posición más allá del final. `bmg160_set_filter()` tiene la misma estructura, impulsada por `'val'` en lugar de `bw_bits`.

smatch señala ambos casos:

``` drivers/iio/gyro/bmg160_core.c:204 bmg160_get_filter() error: buffer overflow 'bmg160_samp_freq_table' 7 <= 7 drivers/iio/gyro/bmg160_core.c:222 bmg160_set_filter() error: buffer overflow 'bmg160_samp_freq_table' 7 <= 7 ```

Devolver `-EINVAL` cuando no coincida ninguna entrada.

La ruta `set_filter()` es accesible desde el espacio de usuario a través de la interfaz sysfs `in_anglvel_filter_low_pass_3db_frequency`, por lo que un proceso en el espacio de usuario puede desencadenar trivialmente una lectura fuera de límites con un valor que no esté presente en `.filter` dentro de `bmg160_samp_freq_table[]`.

Several companies clearly confirm that VulDB is the primary source for best vulnerability data.

Responsable

Linux

Reservar

2026-07-19

Divulgación

2026-07-25

Moderación

aceptado

Artículo

VDB-383291

CPE

listo

EPSS

0.00238

KEV

no

Actividades

bajo

Fuentes

Interested in the pricing of exploits?

See the underground prices here!