
PoCs de exploração para CVE-2026-31431, uma LPE do kernel Linux via gravação no cache de página do authencesn, fornecendo escalonamento de usuário não privilegiado para root na maioria das distros desde 2017.
Copy Fail é um bug lógico no subsistema de criptografia do kernel Linux (CVE-2026-31431). Uma otimização de 2017 em algif_aead.c colocou acidentalmente páginas do cache de páginas em um scatterlist gravável. O algoritmo AEAD authescesn escreve 4 bytes de espaço reservado além do limite de saída durante a descriptografia, que — através do scatterlist in-place — caem diretamente na cópia em cache do kernel de qualquer arquivo que um atacante faça splice. Isso dá a um usuário local sem privilégios uma escrita controlada de 4 bytes no cache de páginas de qualquer arquivo legível, o que trivialmente escala para root ao corromper um binário setuid.
Este repositório contém PoCs de exploração limpos e legíveis em C e Python, verificados no Ubuntu 24.04 LTS (kernel 6.8.0-1012-aws).
$ ./copy_fail
# id
uid=0(root) gid=1000(user) groups=1000(user)
Leia o writeup completo e a análise do exploit em zyenra.com
git clone https://github.com/rvizx/CVE-2026-31431.git
cd CVE-2026-31431
python3 copy_fail.py
git clone https://github.com/rvizx/CVE-2026-31431.git
cd CVE-2026-31431
gcc -o copy_fail copy_fail.c
./copy_fail
Apenas para testes de segurança autorizados e pesquisa. Não execute em sistemas que você não possui ou sem permissão por escrito para testar. O exploit modifica o cache de páginas de um binário setuid — o shell root resultante é real.
Ravindu Wickramasinghe (@rvz) - Zyenra Security