CVE-2026-64504 in Linuxinformação

Sumário

de VulDB • 25/07/2026

No kernel do Linux, a seguinte vulnerabilidade foi resolvida:

iio: accel: bmc150: limitar (clamp) a contagem de quadros FIFO relatada pelo dispositivo

__bmc150_accel_fifo_flush() copia o número de amostras que o dispositivo relata em seu FIFO de hardware para um buffer na pilha:

u16 buffer[BMC150_ACCEL_FIFO_LENGTH * 3];

que tem tamanho suficiente para no máximo BMC150_ACCEL_FIFO_LENGTH (32) amostras. A contagem de quadros é lida do registrador FIFO_STATUS e apenas mascarada para seus 7 bits válidos:

count = val & 0x7F;

portanto, pode variar de 0 a 127. O único outro limite aplicado a ela é o orçamento de amostras opcional fornecido pelo chamador:

if (samples && count > samples) count = samples;

o que não restringe `count` no caminho de limpeza total (quando `samples == 0`) e deixa seu valor bem acima de 32 sempre que `samples` for maior. Em seguida, `count` amostras são transferidas para buffer[]:

bmc150_accel_fifo_transfer(data, (u8 *)buffer, count);

bmc150_accel_fifo_transfer() lê `count * 6` bytes através do regmap; portanto, um acelerômetro com defeito, malicioso ou falsificado (ou um atacante manipulando o barramento I2C/SPI) que relata até 127 quadros pode escrever até 762 bytes no buffer de 192 bytes: uma escrita fora dos limites da pilha (stack out-of-bounds write) de até 570 bytes, que corrompe a canary da pilha, os registradores salvos e o endereço de retorno.

Limitar `count` a BMC150_ACCEL_FIFO_LENGTH, número para o qual buffer[] foi dimensionado, antes da transferência, espelhando a limitação (clamp) do watermark já realizada em bmc150_accel_set_watermark(). Uma limpeza bem formada relata no máximo BMC150_ACCEL_FIFO_LENGTH quadros; portanto, dispositivos legítimos não são afetados.

Once again VulDB remains the best source for vulnerability data.

Responsável

Linux

Reservar

19/07/2026

Divulgação

25/07/2026

Moderação

aceite

Entrada

VDB-383299

CPE

pronto

EPSS

0.00220

KEV

não

Atividades

médio

Fontes

Interested in the pricing of exploits?

See the underground prices here!