A segurança do Linux enfrenta mais um desafio após a descoberta do vulnerabilidade CVE-2026-31431, apelidada de "Falha de Cópia" pelos pesquisadores da Xint Code. Longe de ser uma falha teórica, este problema de design Permite que um usuário local sem privilégios eleve suas permissões e obtenha acesso total. como um superusuário de forma previsível e silenciosa.
Os pesquisadores mencionam que essa vulnerabilidade foi explorada com sucesso em distribuições líderes como Ubuntu, Amazon Linux, RHEL e SUSE, confirmando que qualquer sistema executando um kernel posterior à versão 4.14 e mantém Habilitar o suporte para sockets AF_ALG é potencialmente vulnerável. a este ataque.
Operações In-Place e estouro do cache de páginas
Com relação à decisão, menciona-se que isto Isso remonta a uma otimização introduzida em 2017 na API criptográfica do kernel (AF_ALG). esta modificação Eu estava procurando eliminar o buffering desnecessário. Executar operações de criptografia autenticada (AEAD) diretamente no mesmo espaço de memória, o que é conhecido como operações "in-place".
El Um problema crítico surge ao combinar essa otimização com a função splice(), Este método transfere dados entre descritores de arquivo transferindo referências diretas ao cache de páginas do kernel em vez de copiar fisicamente os dados. Ao solicitar a descriptografia, a estrutura de memória foi configurada de forma que o buffer de destino, que deveria ser um espaço temporário para o usuário, acabasse sendo vinculado diretamente às páginas de cache que continham os dados do arquivo do sistema.
Autenticação e escrita fora dos limites da memória
El O gatilho final da vulnerabilidade reside no comportamento anômalo do algoritmo de autenticação. Ao contrário de outras rotinas criptográficas que respeitam estritamente os limites de seus buffers de destino, Este algoritmo específico utiliza o espaço de memória do usuário como uma área de trabalho temporária. (bloco de rascunho) para reorganizar sequências de bytes durante o cálculo da tag de autenticação.
Nesse processo, o algoritmo escreve quatro bytes além do limite estabelecido para a região de saída. Devido à otimização in-place e à cadeia de referência criada por splice(),Essa escrita aparentemente inofensiva ultrapassa os limites da memória do usuário. e aterrissa diretamente na página de cache do kernel associada ao arquivo que está sendo processado.
Essa cadeia de falhas lógicas Isso concede ao atacante a capacidade de sobrescrever arbitrariamente quatro bytes em posições específicas do cache. de páginas para qualquer arquivo que ele possa ler. Enviando uma série de solicitações calculadas, Um atacante pode injetar código malicioso. na versão em memória de arquivos executáveis críticos com o bit SUID definido, como a ferramenta de troca de usuário.
Como todas as operações de leitura primeiro consultam o cache da página, na próxima vez que o utilitário legítimo for invocado, O sistema executará o código injetado a partir da memória, concedendo privilégios de root instantaneamente. sem jamais alterar o arquivo físico no disco rígido. Ainda mais alarmante, como o isolamento de contêineres compartilha o cache de páginas do host subjacente, essa vulnerabilidade serve como uma porta de entrada direta para escapar de ambientes virtualizados como clusters Kubernetes e comprometer o nó primário.
Remendos de emergência e soluções de mitigação
Dada a gravidade desta decisão, o As equipes de manutenção implementaram atualizações de emergência. onde reside a solução definitiva Reverta a otimização in-place dentro do arquivo algif_aead.c, separando estritamente as listas de memória de origem e destino. Para evitar que páginas em cache acabem em caminhos graváveis.
Essas correções já foram integradas aos kernels 6.18.22, 6.19.12 e 7.0 e estão sendo aplicadas retroativamente às versões de suporte de longo prazo. Para administradores que não podem reiniciar ou atualizar seus servidores imediatamente, recomenda-se desativar o módulo do kernel algif_aead, caso tenha sido compilado externamente, ou restringir severamente a criação de sockets AF_ALG usando políticas de segurança como o SELinux, uma proteção que, por exemplo, tem mantido os dispositivos Android atuais a salvo dessa ameaça.
Por fim, se tiver interesse em saber mais, você pode encontrar os detalhes no seguinte link.