Vol. 2 (abr. 2026) | Pp. 260–262 | ISSN 3086-6103
Alerta: Zapscape no KVM permite escape de máquinas virtuais (CVE-2026-64561)
Uma nova vulnerabilidade no kernel Linux, apelidada de Zapscape, pode permitir que um atacante com privilégios de kernel dentro de uma máquina virtual convidada L1 escape do isolamento do KVM e execute código no host.
A falha é identificada como CVE-2026-64561 e afeta a unidade de gerenciamento de memória sombreada, ou shadow MMU, do KVM/x86. Esse componente administra as tabelas de páginas usadas para traduzir a memória de convidados aninhados. O problema foi corrigido no código principal do kernel, e administradores de hosts KVM devem atualizar para uma versão estável corrigida ou para um pacote da distribuição que inclua o backport do patch.
Como a ameaça funciona
A vulnerabilidade [1] foi descoberta pelo pesquisador de segurança Hyunwoo Kim [2], que publicou uma análise técnica e uma prova de conceito. Segundo o pesquisador, o caminho demonstrado pode executar comandos no host com privilégios de kernel, equivalentes a root.
A exploração exige condições específicas. O atacante normalmente precisa ter privilégios de kernel dentro da máquina virtual L1, acesso root ao convidado e a virtualização aninhada precisa estar habilitada e exposta pelo host. Em sistemas Intel, também é necessário que o convidado L1 tenha acesso aos comprimentos 4 e 5 do page walk de EPT. Sistemas AMD não possuem essa condição equivalente.
O problema está relacionado à ordem em que o KVM verifica se uma raiz da shadow MMU está obsoleta. Durante o tratamento de uma falha de página provocada pelo convidado, o KVM pode liberar páginas da MMU, nesse processo, e invalidar a raiz que ainda está sendo usada pelo caminho de tratamento da falha. Como a rotina não verifica novamente o estado da raiz, o processamento continua utilizando uma estrutura já invalidada.
A falha pode resultar em uma condição de use-after-free, na qual o kernel continua acessando uma área de memória depois que ela foi liberada. No caminho recursivo de remoção de páginas, o KVM verifica se a raiz atual está obsoleta antes de disponibilizar novas páginas de MMU. O processo de recuperação pode invalidar essa mesma raiz logo depois da verificação, enquanto o caminho de tratamento continua criando páginas-filhas a partir dela.
As páginas-filhas podem herdar o estado inválido da página-pai e, mesmo assim, ser inseridas na lista de páginas MMU ativas. Em uma etapa posterior de limpeza, o mesmo vínculo de lista pode acabar associado a duas listas. A página pode então ser liberada enquanto ainda existem referências para ela, deixando ponteiros pendentes e possibilitando uma escrita após a liberação. Essa corrupção de memória é o elemento que permite construir a cadeia de escape para o host.
O comportamento foi corrigido pelo commit 2abd5287f083, que move a verificação da raiz obsoleta para depois da chamada a make_mmu_pages_available(). Se a recuperação invalidar a raiz atual, o KVM agora reinicia o tratamento da falha com RET_PF_RETRY, em vez de continuar mapeando ou buscando páginas sob uma raiz inválida.
A falha foi reportada ao security@kernel.org em 11 de julho de 2026. O patch foi publicado e integrado em 21 de julho, enviado à lista linux-distros em 1º de agosto sob embargo de cinco dias, recebeu o identificador CVE em 4 de agosto e teve divulgação pública em 6 de agosto.
Impacto
Em ambientes de hospedagem compartilhada, nuvens privadas e plataformas de desenvolvimento, um escape de máquina virtual pode permitir que um invasor com controle privilegiado sobre um convidado alcance o kernel do host. A partir daí, o atacante poderia executar código fora da máquina virtual, acessar dados de outros convidados, interromper serviços ou comprometer toda a infraestrutura.
Versões afetadas e corrigidas
O National Vulnerability Database [3] lista o Linux 5.9 e versões posteriores como afetados até a aplicação das correções correspondentes. Entre as versões estáveis corrigidas estão 6.6.148, 6.12.101, 6.18.42, 7.1.6 e 7.2-rc5.
A numeração pode variar conforme a distribuição. O Red Hat [4], por exemplo, alerta que seus pacotes frequentemente recebem correções sem necessariamente adotar a mesma versão upstream do kernel. Portanto, a verificação deve ser feita no rastreador de segurança do fornecedor.
Recomendações
A recomendação principal é atualizar imediatamente os hosts KVM que expõem virtualização aninhada a convidados não confiáveis e reiniciá-los para garantir que o kernel corrigido esteja efetivamente em execução.