O Diário do Analista
Vol. 2 (abr. 2026)  |  Pp. 150–152  |  ISSN 3086-6103

Container escape em ambientes Kubernetes utilizando vulnerabilidade Copy-Fail

Estamos cientes de uma nova PoC publicamente disponível demonstrando como a vulnerabilidade CVE-2026-31431 pode ser explorada em ambientes Kubernetes para realizar uma fuga de contêiner (container escape) em pods não privilegiados, obtendo execução de código arbitrário a nível de nó e, dessa forma, comprometendo a máquina contendo o nó e todos os pods nela hospedada.


Contexto e Origem

A CVE-2026-31431, conhecida pelo nome “Copy-Fail”, é uma vulnerabilidade de escalonamento de privilégio presente no kernel Linux, relacionada ao mecanismo Copy-on-Write do cache de páginas utilizados pelo subsistema criptográfico AF_ALG. A vulnerabilidade recebeu uma classificação de vulnerabilidade alta, com uma pontuação CVSS de 7.8, e também foi incluída no catálogo KEV (Known Exploited Vulnerabilities), indicando evidências de exploração ativa em ambientes reais.

A vulnerabilidade permite que usuários locais sem privilégios modifiquem o conteúdo de páginas de memória referentes a arquivos abertos em modo de somente leitura. Após a modificação, processos que executem um arquivo afetado poderão utilizar o conteúdo adulterado pelo atacante em cache.

A exploração desta vulnerabilidade abre uma ampla superfície de ataque em diversos serviços hospedados em Linux. Entre eles, um ambiente particularmente relevante é a plataforma Kubernetes, amplamente utilizada no mercado como ferramenta de orquestração de contêineres em nuvem, em ambientes como AWS e Alibaba Cloud.

Em uma PoC publicamente disponível [1], pesquisadores demonstraram como a CVE-2026-31431 pode ser explorada dentro de pods não privilegiados em um ambiente Kubernetes para alcançar uma fuga de contêiner. O método utilizado toma vantagem de que certos binários são compartilhados entre contêineres dentro de nós, assim permitindo que um binário adulterado dentro de um nó privilegiado seja executado por um processo privilegiado.


Execução

A execução do ataque pode ser resumida em três passos principais:

  1. (CVE-2026-31431) Em um pod não privilegiado, um processo malicioso sobreescreve as páginas de memória referentes a binários de runtimes compartilhados entre o DaemonSet do ambiente, que possui alto privilégio no host
  2. O DaemonSet eventualmente executa a versão em cache adulterada do binário, assim dando acesso aos altos privilégios do serviço para o processo malicioso
  3. Agora com os privilégios do DaemonSet, o processo pode executar código arbitrário dentro do nó que hospeda o pod.

Na PoC em questão, o processo apenas realiza uma operação de mount dentro do nó e escreve um arquivo no diretório /root/, demonstrando a elevação de privilégios e a fuga do contêiner.


Versões afetadas

Visto que o ataque depende da (CVE-2026-31431), qualquer nó que utilize versões vulneráveis do kernel Linux está afetado, incluindo:

  • Linux Kernel 6.6.x anteriores à versão 6.6.98,
  • Linux Kernel 6.12.x anteriores à versão 6.12.37,
  • Linux Kernel 6.15.x anteriores à versão 6.15.

Mitigações

Recomenda-se a verificação e atualização imediata de nós para versões corrigidas do kernel Linux, já disponibilizadas em todas as principais distribuições.

Também se recomenda habilitar o isolamento de camadas de imagens dentro do ambiente Kubernetes em questão, visto que esta configuração impede o compartilhamento de páginas de cache entre contêineres.

Exemplo para a imagem do containerd:

[plugins."io.containerd.snapshotter.v1.overlayfs"]
mount_options = ["metacopy=on"]

Assim como já foi descrito no post descrevendo o LPE Fragnesia, a limpeza das páginas de cache de nós potencialmente afetados também é recomendada para este ataque, visto que esta ação elimina uma das etapas da cadeia de ataque:

$ sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"

 


Referências

[1] Copy-Fail CVE-2026-31431 Kubernetes PoC. Disponível em: https://github.com/Percivalll/Copy-Fail-CVE-2026-31431-Kubernetes-PoC. Acesso em: 16 de junho de 2026.

[2] National Vulnerability Database (NVD). CVE-2026-31431 Detail. Disponível em: https://nvd.nist.gov/vuln/detail/CVE-2026-31431. Acesso em: 16 de junho de 2026.

[3] Copy Fail: 732 Bytes to Root on Every Major Linux Distribution. Disponível em: https://xint.io/blog/copy-fail-linux-distributions#the-fix-6. Acesso em: 16 de junho de 2026.

Categorias: Uncategorized.