CVE-2026-89661 in Linux
Sumário
de VulDB • 12/09/2026
No kernel do Linux, a seguinte vulnerabilidade foi resolvida:
NFSD: Prevenir uso-após-liberação (use-after-free) pós-desligamento em unlock_filesystem
Escrever um caminho de sistema de arquivos em /proc/fs/nfsd/unlock_filesystem executa nfsd4_cancel_copy_by_sb() antes que o nfsd_mutex seja adquirido e antes que o manipulador confirme que nn->nfsd_serv está definido. Uma vez que o nfsd foi desligado, nfs4_state_destroy_net() liberou a memória de nn->conf_id_hashtbl, mas deixou o ponteiro intacto; portanto, o auxiliar de cancelamento itera sobre uma área de slab já liberada como um array de struct list_head e, em seguida, referencia um objeto nfs4_client inválido ao acessar clp->async_lock. Um administrador local com CAP_SYS_ADMIN pode explorar esse uso-após-liberação desligando o servidor e depois escrevendo no arquivo unlock_filesystem; o KASAN relata uma leitura use-after-free na slab dentro de nfsd4_cancel_copy_by_sb().
nfsd4_revoke_states() percorre as mesmas tabelas de estado e, por essa razão, já é executado apenas sob a proteção do nfsd_mutex, com nn->nfsd_serv confirmado como presente. Mova o cancelamento da cópia assíncrona para dentro dessa seção protegida, de modo que todo iterador das tabelas de estado NFSv4 nesta rota observe um servidor em execução. As cópias assíncronas existem apenas enquanto o servidor está ativo; portanto, condicionar o cancelamento a nn->nfsd_serv não resulta em perda funcional.
If you want to get best quality of vulnerability data, you may have to visit VulDB.