{
"$type": "site.standard.document",
"bskyPostRef": {
"cid": "bafyreibb2df7xj7mpav5jfuyxhxtnvdzwp6f4du3iaxqaoxvyhemsi5klm",
"uri": "at://did:plc:ulfbtqn2ybcgbzf27z75qrvu/app.bsky.feed.post/3mnewvmh7xyl2"
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreifypf5jlgbgijb5outgfanrtb6ibi3bbhefvaetfxs244zdcpfl3e"
},
"mimeType": "image/jpeg",
"size": 418162
},
"path": "/seguranca/413590-falha-no-linux-com-quase-20-anos-permite-acesso-root-via-kernel.htm",
"publishedAt": "2026-06-03T10:30:00.000Z",
"site": "https://www.tecmundo.com.br",
"tags": [
"Segurança",
"o Linux",
"guardar credenciais",
"dados fornecidos",
"nossa newsletter",
"canal do YouTube."
],
"textContent": "Uma vulnerabilidade de escalada de privilégios locais descoberta no kernel do Linux permite que um atacante sem permissões administrativas obtenha acesso root na máquina. A falha, batizada de CIFSwitch, foi identificada pelo engenheiro de segurança da SpaceX Asim Viladi Oglu Manizada e afeta múltiplas distribuições Linux que utilizam combinações vulneráveis do módulo CIFS do kernel com versões recentes do pacote cifs-utils. O problema existe desde 2007 e só agora foi descoberto e corrigido.\n\nCIFS é um protocolo de rede que o Linux usa para acessar arquivos, pastas e dispositivos em uma rede local, como uma pasta compartilhada no escritório. Quando esse compartilhamento exige autenticação via Kerberos, um mecanismo comum em ambientes corporativos, o kernel do Linux não faz esse processo sozinho.\n\nEm vez disso, ele pede ajuda a um programa externo chamado cifs.upcall, que faz parte do pacote cifs-utils. Esse programa roda com privilégios de root e é responsável por buscar os dados de autenticação necessários.\n\nA falha CIFSwitch existe no kernel Linux desde 2007 e permite que qualquer usuário local forje uma requisição de autenticação normalmente reservada ao sistema operacional.\n\nA comunicação entre o kernel e o cifs.upcall acontece por meio do sistema de \"chaves\" do Linux, uma área de memória segura usada para guardar credenciais temporárias.\n\n## Onde está a falha\n\nO kernel cria uma requisição de chave do tipo cifs.spnego com uma descrição que contém informações como o servidor de destino, o usuário, o processo que fez o pedido e qual \"namespace\" o programa auxiliar deve usar.\n\nO problema é que o kernel nunca verificava se essa requisição veio mesmo do seu próprio subsistema CIFS. Qualquer usuário comum podia criar uma requisição falsa do mesmo tipo, com campos inventados, e o sistema a tratava como legítima. Quando isso acontecia, o cifs.upcall era chamado normalmente com privilégios de root, mas usando os dados fornecidos pelo atacante.\n\n## Como o ataque funciona na prática\n\nO exploit se apoia em uma cadeia de etapas. Primeiro, o atacante forja uma requisição cifs.spnego com um campo chamado pid contendo o identificador de um processo que ele controla, e outro campo chamado upcall_target com o valor app.\n\nAo receber essa requisição, o cifs.upcall interpreta os dados como se fossem genuínos e muda para o namespace do processo indicado pelo pid falso. Namespace é basicamente o \"universo isolado\" que o sistema operacional enxerga para um determinado processo, incluindo quais arquivos existem e onde estão.\n\nO código do kernel não incluía a função vet_description no tipo de chave cifs.spnego, a ausência dessa verificação é o que permite a falsificação da requisição por um usuário comum.\n\nDentro desse namespace controlado pelo atacante, o cifs.upcall ainda precisa fazer uma consulta para saber a qual grupo o usuário pertence. Isso é feito pelo mecanismo NSS, que lê arquivos de configuração locais para descobrir onde buscar as informações de conta.\n\nComo o programa ainda está rodando como root e agora está dentro do namespace do atacante, ele lê o arquivo nsswitch.conf do atacante. Esse arquivo aponta para um módulo NSS malicioso criado pelo próprio atacante.\n\nO módulo é carregado com privilégios de root e pode executar qualquer código. No exploit de prova de conceito publicado por Manizada, o módulo simplesmente adiciona o usuário atacante ao arquivo sudoers, que define quem tem permissão de root no sistema.\n\n## Quais sistemas estão vulneráveis\n\nA falha afeta distribuições que combinam um kernel vulnerável com versões recentes do cifs-utils, a partir da 6.14, embora versões mais antigas com backports de outras correções também possam ser afetadas.\n\nSão confirmadas como exploráveis nas configurações padrão o Linux Mint 21.3 e 22.3, CentOS Stream 9, Rocky Linux 9, AlmaLinux 9, Kali Linux de 2021.4 até 2026.1 e SLES 15 SP7. Ubuntu, Debian, Pop!_OS e openSUSE também podem ser afetados se o cifs-utils estiver instalado.\n\nFedora 40 a 44, CentOS Stream 10, Rocky Linux 10 e AlmaLinux 10 têm as configurações padrão de SELinux bloqueando o ataque, mas ficam vulneráveis se o SELinux for desativado. Amazon Linux 2 e Kali Linux 2019.4 e 2020.4 não são afetados porque suas versões do cifs-utils são antigas demais para ter o código de troca de namespace.\n\n## A correção e o que fazer agora\n\nA correção oficial é um patch no kernel que adiciona uma verificação de origem nas requisições cifs.spnego. Com ela, apenas o próprio subsistema CIFS do kernel pode criar esse tipo de chave.\n\nEnquanto o patch não está disponível para todas as distribuições, Manizada recomenda algumas medidas alternativas. A primeira é bloquear ou remover o módulo CIFS se a máquina não usa compartilhamentos de rede. A segunda é desinstalar o cifs-utils se a autenticação Kerberos não for necessária.\n\nA terceira é sobrescrever a regra padrão do cifs.spnego no arquivo de configuração do request-key, impedindo que qualquer programa seja chamado automaticamente. A quarta é desativar a criação de namespaces por usuários sem privilégios. O CVE-2026-46243 foi atribuído ao componente do kernel em 1 de junho de 2026. A falha foi comunicada com antecedência às distribuições Linux antes da divulgação pública.\n\nAcompanhe o TecMundo nas redes sociais. Inscreva-se em nossa newsletter e canal do YouTube.",
"title": "Falha no Linux com quase 20 anos permite acesso root via kernel"
}