[ Início ]
Vol. 2 | N. 5 | Pp. 129–132 | 2026 | ISSN xxxx-xxxx
Fragnesia permite escalonamento local de privilégios universal no Kernel Linux (CVE-2026-46300)
Estamos cientes de uma PoC denominada “Fragnesia”, que se trata de um exploit de escalonamento local de privilégios (Local Privilege Escalation ou LPE) universal para kernels Linux, rastreado como CVE-2026-46300 (CVSS: 7.8). Foi divulgado publicamente em 13/05/2026, simultaneamente ao envio do patch corretivo para a lista netdev do kernel.
Contexto e Origem
A Fragnesia é o terceiro LPE crítico no kernel Linux em menos de três semanas, após Copy Fail (CVE-2026-31431, aproximadamente em 29/04) e Dirty Frag (CVE-2026-43284 / CVE-2026-43500, aproximadamente em 07 a 08/05). Embora pertença à mesma família de vulnerabilidades do Dirty Frag, trata-se de um bug distinto (ambas abusam do subsistema XFRM ESP-in-TCP para corromper o page cache) . Os três CVEs estão relacionados: Copy Fail (CVE-2026-31431) foi uma vulnerabilidade anterior, e Dirty Frag (CVE-2026-43284 + CVE-2026-43500) é uma evolução que encadeia dois bugs distintos no kernel Linux para escalonamento local de privilégios determinístico.
Notavelmente, a Fragnesia foi ativada acidentalmente pelo próprio patch do Dirty Frag: a correção anterior estreitou uma superfície de ataque, mas deixou um caminho adjacente aberto. O patch candidato à Fragnesia carrega duas tags Fixes: uma apontando para o commit do Dirty Frag (f4c50a4034e6) e outra para um commit de 2013 (cef401de7be8), indicando que o bug de coalescing subjacente existe há mais de uma década.
| Vulnerabilidade | CVE | Divulgação |
|---|---|---|
| Copy Fail | CVE-2026-31431 | ~29/04/2026 |
| Dirty Frag | CVE-2026-43284 / CVE-2026-43500 | ~07 a 08/05/2026 |
| Fragnesia | CVE-2026-46300 | 13/05/2026 |
Como a vulnerabilidade é explorada
Um usuário local sem privilégios explora uma falha no modo como o kernel Linux gerencia páginas de memória durante operações de rede IPsec. Usando recursos padrão do sistema, o atacante consegue fazer o kernel tratar o conteúdo de um arquivo somente-leitura (como, por exemplo /usr/bin/su ) como se fosse dados criptografados a serem processados, substituindo partes do arquivo na memória por código malicioso. Como o atacante controla a chave criptográfica usada nesse processo, ele calcula exatamente quais valores inserir para obter o resultado desejado. O arquivo em disco não é alterado, mas quando o sistema executa o binário adulterado na memória, o atacante obtém acesso root. O processo é determinístico — não depende de sorte ou de explorar janelas de tempo — o que o torna especialmente confiável e perigoso.
Versões Afetadas
Todos os kernels afetados pelo Dirty Frag (CVE-2026-43284) são igualmente vulneráveis à Fragnesia. A janela efetiva vai de aproximadamente entre 07 a 08/05/2026 (data do patch do Dirty Frag) até 13/05/2026 (data do patch da Fragnesia).
AppArmor) bloqueiam parcialmente o PoC público, exigindo técnicas adicionais para a exploração.Referência do patch upstream: https://lore.kernel.org/netdev/20260513041635.1289541-1-vakzz@zellic.io/
Status de Exploração
Até o momento dessa escrita, não há evidências de exploração ativa em larfga escala (confirmado por Microsoft e Tenable). O PoC público foi lançado imediatamente após a divulgação, sem embargo, e está disponível no repositório GitHub da equipe V12.
Mitigações
1. Mitigação imediata (idêntica à do Dirty Frag)
Descarregue os módulos vulneráveis:
% sudo rmmod esp4 esp6 rxrpc
Bloqueie o carregamento permanente adicionando ao /etc/modprobe.d/dirtyfrag.conf:
# install esp4 /bin/false
# install esp6 /bin/false
# install rxrpc /bin/false
Atenção: Desabilitar esp4/esp6 interrompe túneis IPsec (strongSwan/Libreswan). Não aplique em hosts que terminam ou transitam tráfego IPsec. O módulo rxrpc é usado quase exclusivamente por clientes AFS e raramente presente em servidores típicos.
2. Limpeza do page cache (se o sistema pode ter sido alvo antes da mitigação)
% sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
Isso força o reload dos binários do disco, eliminando qualquer modificação in-memory que possa ter ocorrido antes da aplicação da mitigação.
3. Correção definitiva: atualização do kernel
Atualize o kernel com o patch corretivo. Status por distribuição:
| Distribuição | Status |
|---|---|
| AlmaLinux | Patch disponível OK |
| CloudLinux | Patch disponível OK |
| openSUSE | Patch disponível OK |
| RHEL / CentOS Stream | Em avaliação pela Red Hat |
| Ubuntu | Verificar canais de atualização |
Soluções de live patching (ex.: KernelCare) também estão sendo preparadas para aplicação sem necessidade de reboot.
Apêndice Técnico
Você pode ignorar essa seção, caso não queira ver os detalhes debaixo do capô do motor 🙂
1. Descrição Técnica
A vulnerabilidade explora um bug lógico no subsistema XFRM ESP-in-TCP do kernel Linux, permitindo escrita arbitrária de bytes no page cache de arquivos somente-leitura, sem necessidade de condição de corrida.
A causa raiz reside na função skb_try_coalesce(): ao transferir fragmentos paginados entre buffers (sk_buff), ela deixava de propagar o marcador SKBFL_SHARED_FRAG. Com isso, o kernel perdia o rastreamento de que aquele fragmento era respaldado por páginas do page cache (obtidas, por exemplo, via splice de um arquivo). O caminho de recepção ESP-in-TCP do XFRM, ao verificar skb_has_shared_frag(), concluía equivocadamente que era seguro ignorar o skb_cow_data() (copy-on-write), realizando a descriptografia AES-GCM in-place diretamente sobre as páginas em cache — que pertencem ao arquivo original somente-leitura.
A técnica estende a mesma classe de bugs de page cache do Dirty Frag: ao transitar um socket TCP para modo espintcp após o splice de dados de um arquivo para a fila de recepção, o kernel processa as páginas como ciphertext ESP, XORando bytes do keystream AES-GCM diretamente nas páginas em cache.
2. Funcionamento do Exploit
(Fonte: TuxCare — Fragnesia Technical Analysis)
O PoC constrói uma tabela de lookup de 256 entradas para mapear bytes de keystream a nonces, iterando sobre um payload para modificar bytes específicos via splice/ULP. O fluxo de execução é:
- Cria novos namespaces de usuário e rede via
unshare(CLONE_NEWUSER | CLONE_NEWNET), obtendoCAP_NET_ADMINdentro do namespace isolado — sem privilégios no host. - Instala uma Security Association ESP-in-TCP via
NETLINK_XFRMcom AES-128-GCM e chave conhecida. - Escreve um stub ELF position-independent (
setresuid/setresgid/execve /bin/sh) nos primeiros 192 bytes de/usr/bin/suno page cache. - Executa
execve("/usr/bin/su"), obtendo shell root.
As alterações não persistem em disco: o binário original é intacto. Um reboot ou flush do page cache restaura o estado normal. Importante: o exploit não está limitado ao /usr/bin/su — qualquer arquivo legível pelo atacante é alvo em potencial, incluindo /etc/passwd.
Referências
Tags: Alerta, CVE, Cybersecurity, Kernel, Linux, Linux Kernel, Vulnerabilidades.
Categorias: Alerta, CentOS, CVE, Debian, Falhas, Kernel, Linux, Linux Kernel, LPE, LTE, OpenSUSE, Red Hat, Ubuntu, Vulnerabilidade.
Alerta: Campanha Massiva Shai-Hulud “Here We Go Again” Compromete 170 Pacotes npm e 2 PyPI
Github Actions, de novo. Sim, de novo! Pesquisadores da JFrog Security Research [1] divulgaram uma das campanhas de supply chain…
Palo Alto Networks divulga onda massiva de vulnerabilidades críticas e médias
A Palo Alto Networks publicou [1] há alguns minutos uma das maiores ondas recentes de advisories de segurança, envolvendo seu…
Vulnerabilidade importante na urllib3 pode permitir vazamento de credenciais em Redirects
O GitHub alertou para a vulnerabilidade CVE-2026-44431 [1] que afeta a biblioteca urllib3 [2] (versões >=1.23, <2.7.0), especificamente referente ao…
Alerta: Chrome v148 libera um dos maiores pacotes de correções da história
O Google Chrome liberou essa semana a versão estável do Chrome 148, considerada um dos maiores pacotes de correções de…
Foi divulgada há algumas horas uma vulnerabilidade que envolve vazamento de informações em um plugin WordPress, catalogada como CVE-2023-54346 [1]…
Quatro CVEs Críticas no Linux nas últimas 48h: Xen, Kernel e PackageKit em Risco
Nas últimas 48 horas foram publicadas quatro vulnerabilidades (CVEs) com impacto confirmado em ambientes Linux, afetando o kernel, o gerenciador…