CEVIU Logo
Voltar

Falha no CIFSwitch do Linux permite escalonamento de privilégios até root em múltiplas distros

Aprofundamento CEVIU

Aprofundamento

A falha CIFSwitch (CVE-2026-46243) não é um bug novo, é um erro de lógica no subsistema CIFS do kernel Linux que existe desde 2007, ou seja, há 19 anos. Ela permite que qualquer usuário local sem privilégios forje descrições de chaves cifs.spnego via request_key(2) ou add_key(2), enganando o helper cifs.upcall (executado como root) para carregar módulos NSS maliciosos durante uma troca de namespace. O ponto crítico está em fs/smb/client/cifs_spnego.c: o kernel registra o tipo de chave sem validar se a requisição realmente vem do próprio cliente CIFS do kernel, uma falha de confiança entre componentes que o descobridor, Asim Manizada (da SpaceX), identificou usando grafos semânticos gerados por IA, não por análise manual.

O exploit PoC já está público, e a exploração exige apenas três condições: kernel vulnerável, cifs-utils instalado (versão 6.14+ ou backports anteriores), e namespaces de usuário habilitados. Distribuições como Ubuntu 18.04, 24.04, Debian 11, 13 e Amazon Linux 2023 estão na mira, mas nem todas são igualmente expostas: SELinux ou AppArmor ativados por padrão (como no Fedora 40, 44 ou CentOS Stream 10) bloqueiam o caminho de ataque. Já Kali Linux 2021.4, 2026.1 e SLES 15 SP7 têm configurações que permitem a escalada mesmo com proteções ativas.

O que mudou

O artigo CEVIU de 2 de junho já havia revelado a existência do CIFSwitch e sua origem em 2007, mas a notícia atual (1º de junho) traz o que faltava: a divulgação oficial da CVE-2026-46243, o commit de correção upstream (3da1fdf4efbc), os kernels corrigidos já liberados por distribuições como AlmaLinux (para as versões 8, 9 e 10), e o detalhamento técnico completo do vetor de exploração, incluindo como o invasor manipula pid, uid e upcall_target nas descrições forjadas para forçar a pesquisa NSS antes do drop de privilégios. Também foi confirmado que o exploit é viável em ambientes reais, não apenas teóricos, e que a Red Hat classificou a falha como 'Importante', não 'Crítica', por conta das mitigações efetivas disponíveis.

Por que isso importa

Essa falha coloca em risco servidores corporativos, estações de trabalho Linux e ambientes de nuvem onde usuários locais têm acesso limitado, como em máquinas compartilhadas, laboratórios acadêmicos ou infraestrutura de CI/CD com contas de serviço. Diferente de ataques remotos, o CIFSwitch não depende de rede: basta um shell local, mesmo sem senha, para elevar para root. E como afeta o kernel, não há workaround via aplicativo, só patch real ou desativação do módulo CIFS. Em um cenário onde falhas de escalada como PinTheft (21/05), Dirty Frag (07/05) e Fragnesia (13/05) já tinham exposto fragilidades recorrentes no modelo de confiança entre subsistemas do kernel, o CIFSwitch confirma um padrão perigoso: a ausência de validação de origem em interfaces privilegiadas continua sendo uma porta aberta para ataques locais de alto impacto.

Linha do tempo

  1. Introdução do subsistema CIFS no kernel Linux com a falha de validação de origem em cifs_spnego

  2. Divulgação oficial da CVE-2026-46243 após período de embargo

  3. CEVIU publica primeira cobertura detalhada sobre a origem e mecanismo do CIFSwitch

  4. Notícia atual confirma exploração prática, patches lançados e lista ampliada de distribuições afetadas

Perguntas frequentes

O CIFSwitch afeta meu servidor Ubuntu 22.04?

Sim, Ubuntu 22.04 está na lista de versões vulneráveis, pois usa kernel e cifs-utils compatíveis com o vetor de ataque. A Canonical já publicou atualizações, verifique se o kernel está atualizado para 6.8.0-59.61 ou superior e se o pacote cifs-utils foi atualizado para 6.14-1ubuntu2.1 ou mais recente.

Posso me proteger sem reiniciar o sistema?

Sim, temporariamente: desabilite o módulo CIFS com sudo modprobe -r cifs e bloquee seu carregamento com echo 'blacklist cifs' | sudo tee /etc/modprobe.d/blacklist-cifs.conf. Remover o pacote cifs-utils também reduz o risco, mas não elimina totalmente se o módulo estiver embutido no kernel.

SELinux ou AppArmor impedem essa exploração?

Podem sim, mas não por padrão em todas as distribuições. No Fedora ou RHEL 9 com SELinux enforcing, a política default bloqueia o carregamento de módulos NSS externos nesse contexto. Já no Ubuntu ou Kali, onde AppArmor está presente mas com perfis menos restritivos para upcalls, a proteção é parcial ou inexistente sem ajustes manuais.

Por que essa falha demorou tanto para ser descoberta?

Porque ela não envolve erros clássicos como buffer overflow ou use-after-free. É um problema de design: o kernel assume que requisições cifs.spnego vêm sempre do seu próprio cliente CIFS. Auditorias tradicionais ignoram esse tipo de inconsistência lógica entre criador e consumidor de objetos, o que exigiu uma abordagem nova, baseada em IA para mapear relações semânticas no código do kernel.

Fontes

Avalie este artigo:
Compartilhar:
Categoria
CEVIU Segurança da Informação
Publicado
01 de junho de 2026
Editoria
CEVIU Segurança da Informação

Quer receber mais sobre CEVIU Segurança da Informação?

Conteúdo curado diariamente, direto no seu e-mail.

Conteúdo curado diariamenteDiversas categoriasCancele quando quiser