Copy Fail: Falha de Escalada de Privilégio no Linux Permite que Usuários Sem Privilégios Obtenham Acesso Root
Uma vulnerabilidade de escalada de privilégio local (LPE) recém-divulgada no kernel do Linux, apelidada de **Copy Fail** (CVE-2026-31431), pode permitir que usuários locais sem privilégios obtenham acesso root. A falha, presente desde 2017, decorre de um erro lógico no subsistema criptográfico do kernel.
Pesquisadores de cibersegurança divulgaram detalhes de uma falha de escalada de privilégio local (LPE) no Linux que pode permitir que um usuário local sem privilégios obtenha acesso root.
A vulnerabilidade de alta severidade rastreada como **CVE-2026-31431** (pontuação CVSS: 7.8) foi codinomeada **Copy Fail** pela **Xint.io** e **Theori**.
"Um usuário local sem privilégios pode escrever quatro bytes controlados no page cache de qualquer arquivo legível em um sistema Linux e usá-lo para obter acesso root", disse a equipe de pesquisa de vulnerabilidades da Xint.io e Theori [aqui](https://xint.io/blog/copy-fail-linux-distributions).
## Análise da Causa Raiz
Em sua essência, a vulnerabilidade decorre de uma falha lógica no subsistema criptográfico do kernel do Linux, especificamente dentro do módulo `algif_aead`. O problema foi introduzido em um [commit de código fonte](https://github.com/torvalds/linux/commit/72548b093ee3) feito em agosto de 2017.
A exploração bem-sucedida da falha poderia permitir que um script Python simples de 732 bytes editasse um binário setuid e obtivesse acesso root em essencialmente todas as distribuições Linux enviadas desde 2017, incluindo **Amazon Linux**, **RHEL**, **SUSE** e **Ubuntu**. O exploit em Python envolve quatro etapas:
* Abrir um socket AF_ALG e vincular a authencesn(hmac(sha256),cbc(aes))
* Construir o payload shellcode
* Disparar a operação de escrita na cópia em cache do kernel de "/usr/bin/su"
* Chamar execve("/usr/bin/su") para carregar o shellcode injetado e executá-lo como root
Embora a vulnerabilidade não seja explorável remotamente isoladamente, um usuário local sem privilégios pode obter acesso root simplesmente corrompendo o page cache de um binário setuid. O mesmo primitivo também tem impactos inter-container, pois o page cache é compartilhado entre todos os processos em um sistema.

## Resposta dos Fornecedores
Em resposta à divulgação, as distribuições Linux lançaram seus próprios avisos:
* [AlmaLinux](https://almalinux.org/blog/2026-05-01-cve-2026-31431-copy-fail/)
* [Amazon Linux](https://explore.alas.aws.amazon.com/CVE-2026-31431.html)
* [Arch Linux](https://security.archlinux.org/CVE-2026-31431)
* [CloudLinux](https://blog.cloudlinux.com/cve-2026-31431-copy-fail-mitigation-and-patches)
* [Debian](https://security-tracker.debian.org/tracker/CVE-2026-31431)
* [Gentoo](https://bugs.gentoo.org/show_bug.cgi?id=CVE-2026-31431)
* [Red Hat Enterprise Linux](https://access.redhat.com/security/cve/cve-2026-31431)
* [SUSE](https://www.suse.com/security/cve/CVE-2026-31431.html)
* [Ubuntu](https://ubuntu.com/security/CVE-2026-31431)
## Vulnerabilidades Semelhantes
Copy Fail tem seus ecos em [Dirty Pipe](https://thehackernews.com/2022/03/researchers-warn-of-linux-kernel-dirty.html) (CVE-2022-0847), outra vulnerabilidade LPE no kernel do Linux que poderia permitir que usuários sem privilégios inserissem dados no page cache de arquivos somente leitura e, eventualmente, sobrescrevessem arquivos sensíveis no sistema para obter execução de código.
**David Brumley** da **Bugcrowd** disse [aqui](https://www.bugcrowd.com/blog/what-we-know-about-copy-fail-cve-2026-31431/): "Copy Fail é a mesma classe de primitivo, em um subsistema diferente. A otimização in-place de 2017 em `algif_aead` permite que uma página do page cache acabe na scatterlist gravável do kernel para uma operação AEAD submetida através de um socket AF_ALG. Um processo sem privilégios pode então usar splice() nesse socket e completar uma pequena escrita direcionada no page cache de um arquivo que ele não possui."
O que torna a vulnerabilidade perigosa é que ela pode ser acionada de forma confiável e não requer nenhuma condição de corrida ou offset de kernel. Além disso, o mesmo exploit funciona em todas as distribuições.
"Esta vulnerabilidade é única porque possui quatro propriedades que quase nunca aparecem juntas: é portátil, minúscula, furtiva e inter-container", disse um porta-voz da Xint.io ao The Hacker News em uma declaração. "Ela permite que qualquer conta de usuário, não importa quão de baixo nível, aumente seus privilégios para acesso total de administrador. Ela também permite que eles contornem o sandboxing e funciona em todas as versões e distribuições Linux."