DirtyClone (CVE-2026-43503) e pedit COW (CVE-2026-46331): análise técnica, identificação, atualização e mitigação para administradores Linux. Comandos práticos inclusos.
Duas novas vulnerabilidades no kernel Linux——DirtyClone (CVE-2026-43503) e pedit COW (CVE-2026-46331)——permitem que usuários locais sem privilégios escalem acesso para root em distribuições amplamente utilizadas. Este guia aborda a mecânica das falhas, procedimentos de identificação, remediação e mitigações temporárias para ambientes de produção.
Em junho de 2026, pesquisadores documentaram duas vulnerabilidades de escalação local de privilégios (LPE) no kernel Linux que compartilham o mesmo padrão de falha: corrupção de memória paginada (page cache) durante operações de rede.
O DirtyClone, com CVSS 8.8, explora o túnel IPsec para sobrescrever a cópia em memória de binários com privilégios.
O pedit COW explora a funcionalidade act_pedit de edição de pacotes.
Ambas as falhas não modificam arquivos em disco, tornando a detecção por ferramentas de integridade de arquivos (tripwire, AIDE) ineficaz. Um simples reboot limpa a memória e restaura o sistema, mas o dano——uma vez que o atacante obtém root——já pode ter ocorrido.
Pré-requisitos
Para acompanhar os procedimentos deste guia, você precisará de:
- Acesso shell com privilégios sudo em um sistema Linux afetado.
- Conhecimento de gerenciamento de pacotes da sua distribuição (apt, dnf, yum, zypper).
- Familiaridade com parâmetros do kernel via sysctl.
- Ambiente de teste (não executar em produção sem validação prévia).
Passo a Passo
1. Identificação de Sistemas Afetados
As vulnerabilidades afetam distribuições que combinam um kernel vulnerável com suporte a CIFS e funcionalidades de rede específicas. Para verificar se seu sistema está vulnerável:
Passo 1.1 – Verifique a versão do kernel:
$ uname -r 6.8.0-45-generic
Por que isso importa: A correção para DirtyClone foi incorporada ao kernel 7.1-rc5 (24 de maio de 2026). Sistemas com kernel anterior a essa data estão vulneráveis.
Passo 1.3 – Verifique a presença do módulo CIFS:
$ lsmod | grep cifs cifs 149504 0
Se o módulo CIFS estiver carregado, o sistema pode estar vulnerável à falha CIFSwitch.
2. Avaliação de Exposição: CAP_NET_ADMIN e Namespaces
O vetor de ataque exige que o usuário possua a capacidade CAP_NET_ADMIN. Em muitas distribuições, essa capacidade pode ser obtida por um usuário comum ao criar um namespace de rede.
Passo 2.1 – Verifique se usuários não-privilegiados podem criar namespaces:
$ cat /proc/sys/user/max_user_namespaces 64000
Se o valor for maior que zero (especialmente em Debian e Fedora, onde está habilitado por padrão), usuários sem privilégios podem criar namespaces.
Passo 2.2 – Teste a criação de um namespace de rede como usuário comum:
$ unshare -r -n whoami root
Se o comando retornar root, o sistema permite que usuários não-privilegiados criem namespaces de rede——um dos pré-requisitos para exploração.
Por que isso importa: O atacante não precisa ser root para obter CAP_NET_ADMIN——a criação de um namespace já concede essa capacidade. O Ubuntu 24.04+ possui restrições via AppArmor que dificultam o caminho padrão, mas o kernel continua vulnerável.
3. Procedimento de Atualização do Kernel
A recomendação principal é atualizar o kernel e reiniciar o sistema.
$ sudo apt update $ sudo apt upgrade linux-image-$(uname -r) $ sudo reboot
Passo 3.2 – RHEL / Fedora / CentOS:
$ sudo dnf update kernel $ sudo reboot
Passo 3.3 – SUSE:
$ sudo zypper update kernel-default $ sudo reboot
Passo 3.4 – Verifique a versão após a reinicialização:
$ uname -r 7.1.0-1-generic # ou versão superior à 7.1-rc5
Por que isso importa: A correção para DirtyClone foi incorporada a partir do kernel 7.1-rc5. Versões anteriores——incluindo backports de correções de outras vulnerabilidades——permanecem vulneráveis.
4. Mitigação Temporária: Desativação de Namespaces sem Privilégios
Para ambientes onde a atualização imediata não é possível, a desativação da criação de namespaces por usuários sem privilégios bloqueia o vetor de ataque.
$ sudo sysctl -w kernel.unprivileged_userns_clone=0 $ echo "kernel.unprivileged_userns_clone=0" | sudo tee -a /etc/sysctl.conf
Passo 4.2 – RHEL / Fedora / CentOS:
$ sudo sysctl -w user.max_user_namespaces=0 $ echo "user.max_user_namespaces=0" | sudo tee -a /etc/sysctl.conf
Passo 4.3 – Verifique a aplicação:
$ sysctl kernel.unprivileged_userns_clone # Debian/Ubuntu kernel.unprivileged_userns_clone = 0 $ sysctl user.max_user_namespaces # RHEL user.max_user_namespaces = 0
⚠️ Atenção: Esta medida quebra funcionalidades que dependem de containers rootless (podman, rootless Docker) e pode impactar ambientes de desenvolvimento. Avalie o trade-off antes de aplicar em produção.
5. Monitoramento e Detecção
Como as falhas não modificam arquivos em disco, ferramentas tradicionais de integridade de arquivos não detectam a alteração. Estratégias alternativas são necessárias.
Passo 5.1 – Monitore processos suspeitos com auditd:
$ sudo auditctl -w /usr/bin/su -p x -k su_exec $ sudo auditctl -w /usr/bin/sudo -p x -k sudo_exec
Passo 5.2 – Verifique assinaturas de binários críticos em memória (abordagem avançada):
$ sudo gdb -p 1 -batch -ex "dump memory /tmp/init_mem 0x$(cat /proc/1/maps | grep r-xp | head -1 | cut -d'-' -f1) 0x$(cat /proc/1/maps | grep r-xp | head -1 | cut -d'-' -f2)" 2>/dev/null $ sha256sum /tmp/init_mem
Compare com uma baseline coletada em sistema conhecidamente íntegro. Variações indicam possível corrupção de memória.
Passo 5.3 – Monitore logs do kernel para atividades anômalas:
$ sudo dmesg | grep -i "xfrm\|esp\|act_pedit\|cifs"Por que isso importa: O DirtyClone sobrescreve a cópia em memória do /usr/bin/su, entregando uma shell root na próxima execução. A detecção requer monitoramento em nível de memória, não de disco.
📘 Indicação de Leitura
Esse livro é um guia prático e abrangente sobre a segurança do sistema operacional Linux como um todo. O livro ensina a pensar como um atacante para fortalecer a defesa do servidor, abordando tópicos fundamentais como:
- Ferramentas de rede: Nmap, Netcat, knockd.
- Monitoramento: de arquivos e sistemas de arquivos.
- Defesas: contra malware e ataques DDoS.
- Descoberta de vulnerabilidades: como invasores encontram pontos fracos.
Troubleshooting
Problema Comum: Atualização do Kernel Não Resolve a Vulnerabilidade.
Sintoma: Após atualizar o kernel e reiniciar, o sistema ainda é listado como vulnerável em scanners de segurança.
Causa: A distribuição pode ter backportado correções para versões mais antigas do kernel, mas o scanner pode estar verificando apenas a versão numérica. Ou a vulnerabilidade pode ser do pedit COW (CVE-2026-46331) , cuja correção varia por distribuição.
Solução:
1. Verifique se o patch específico foi aplicado:
$ grep -i "CVE-2026-43503" /var/log/apt/history.log # Debian/Ubuntu $ rpm -q --changelog kernel | grep -i "CVE-2026-43503" # RHEL/Fedora
2. Para o pedit COW, consulte o status específico da sua distribuição:
- Ubuntu 18.04–26.04: afetados
Se a correção não estiver disponível, aplique a mitigação temporária (desativação de namespaces) como medida de contenção.
Armadilha Comum
Iniciantes assumem que "atualizar o kernel" é suficiente sem reiniciar o sistema.
O kernel em execução——carregado na memória RAM durante o boot——não é substituído por uma atualização de pacote até que o sistema seja reiniciado.
Comandos como uname -r continuarão mostrando a versão antiga.
A vulnerabilidade permanece explorável até o próximo reboot.
Verificação obrigatória pós-atualização:
Conclusão
O DirtyClone (CVE-2026-43503) e o pedit COW (CVE-2026-46331) representam a quarta e quinta ondas de vulnerabilidades com o mesmo padrão de falha——corrupção de page cache durante operações de rede.
O problema não está em uma função isolada, mas em um contrato de memória que precisa ser respeitado por todo o código que manipula fragmentos de rede.
A postura recomendada para equipes de infraestrutura:
- Priorize a atualização do kernel para versão ≥ 7.1-rc5.
- Se a atualização não for possível imediatamente, desative unprivileged_userns_clone ou max_user_namespaces.
- Monitore processos com privilégios e logs do kernel para atividades anômalas
- Eduque a equipe sobre a natureza in-detectável por ferramentas de integridade de arquivos
A tendência indica que novas variantes podem surgir enquanto o contrato de memória não for reforçado em todo o código-fonte do kernel. Manter-se atualizado com os patches de segurança continua sendo a defesa mais eficaz.

Nenhum comentário:
Postar um comentário