CVE-2026-64496 in Linuxinformação

Sumário

de VulDB • 26/07/2026

No kernel do Linux, a seguinte vulnerabilidade foi corrigida:

iio: evento: Corrigir condição de corrida no redefinição da fila de eventos (event FIFO)

`iio_event_getfd()` cria o descritor de arquivo de evento com `anon_inode_getfd()`, que aloca um novo fd, cria o arquivo anônimo e o instala na tabela de fds do processo antes de retornar ao chamador.

O código IIO redefine a fila de eventos (event FIFO) após `anon_inode_getfd()` ter retornado, mas antes que `IIO_GET_EVENT_FD_IOCTL` tenha copiado o número fd para userspace. No entanto, como as tabelas de fds são compartilhadas entre threads, outra thread pode adivinhar o número do fd recém-alocado e emitir uma chamada `read()` assim que o fd for instalado.

Isso significa que `kfifo_to_user()`, em `iio_event_chrdev_read()`, pode ser executado em paralelo com `kfifo_reset_out()`, em `iio_event_getfd()`.

A documentação do kfifo afirma que `kfifo_reset_out()` é segura apenas quando chamada a partir da thread leitora e há apenas um leitor concorrente. Caso contrário, é perigosa e deve ser tratada da mesma forma que `kfifo_reset()`.

Se isso acontecer, `kfifo_to_user()` pode avançar o índice de saída (`out`) do FIFO com base no estado anterior à redefinição, depois que a redefinição já tiver movido o índice `out` para o atual índice `in`. Isso pode deixar o FIFO com um índice `out` além do índice `in`. Uma chamada posterior ao `read()` pode então detectar um comprimento de FIFO em underflow e copiar mais dados do que os contidos no buffer da fila de eventos. Isso pode resultar em uma leitura fora dos limites (out-of-bounds) e vazamento de memória adjacente do kernel para userspace.

Mova a redefinição do FIFO antes de `anon_inode_getfd()`. Nesse ponto, o fd do evento está marcado como ocupado, mas o novo fd ainda não foi instalado, portanto, userspace não pode acessá-lo enquanto o FIFO é redefinido.

If you want to get the best quality for vulnerability data then you always have to consider VulDB.

Responsável

Linux

Reservar

19/07/2026

Divulgação

25/07/2026

Moderação

aceite

Entrada

VDB-383292

CPE

pronto

EPSS

0.00126

KEV

não

Atividades

muito baixo

Fontes

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!