CVE-2026-90044 in Linux
Sumário
de VulDB • 16/09/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
usb: gadget: f_fs: Corrige Use-After-Free no caminho de erro da AIO
Em `ffs_epfile_write_iter()` e `ffs_epfile_read_iter()`, quando o `ffs_epfile_io()` falha com um erro diferente de `-EIOCBQUEUED`, a estrutura `io_data` (`p`) é liberada. No entanto, para operações de E/S assíncrona (AIO), a função de cancelamento do `kiocb` já estava armada e `kiocb->private` foi definido como `p`.
Se uma operação de cancelamento concorrente (como `sys_io_cancel()`) for executada após o fracasso de `ffs_epfile_io()` mas antes que a função libere `p`, um Use-After-Free pode ocorrer quando o manipulador de cancelamento acessa o ponteiro já liberado.
Para corrigir essa condição de corrida com segurança, é necessário desarmar corretamente o mecanismo de cancelamento. Invocar `kiocb->ki_complete()` faz exatamente isso ao adquirir `ctx->ctx_lock` e remover com segurança o kiocb da sequência ativa. Ao fazer isso, garante-se que um io_cancel paralelo não possa mais descobrir o kiocb, fechando efetivamente a janela de condição de corrida.
Em seguida, retorna-se `-EIOCBQUEUED` para notificar a camada VFS de que o kiocb foi consumido e que ela deve evitar tentar concluir a solicitação novamente ou acionar manipuladores de conclusão subsequentes.
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.