Vulnerabilidade que permite sair do ambiente isolado do QEMU

Divulgado detalhes de vulnerabilidade crítica (CVE-2019-14378) no manipulador SLIRP padrão usado no QEMU para estabelecer um canal de comunicação entre o adaptador de rede virtual no sistema convidado e o back-end da rede no lado do QEMU. O problema também afeta sistemas de virtualização baseados em KVM (em Modo de usuário) e Virtualbox, que usam o backend slirp do QEMU, bem como aplicativos que usam a pilha de rede do espaço do usuário libSLIRP (emulador TCP/IP).

A vulnerabilidade permite que o código seja executado no lado do sistema host com os direitos de um processo manipulador QEMU quando um pacote de rede muito grande especialmente projetado é enviado do sistema convidado, o que requer fragmentação. Devido a um erro na função ip_reass(), chamada ao remontar os pacotes recebidos, o primeiro fragmento pode não caber no buffer alocado e sua cauda será gravada em áreas de memória próximas ao buffer.

Para testar já está disponível um protótipo funcional do exploit, que permite ignorar o ASLR e executar código substituindo a memória do array main_loop_tlg, incluindo um QEMUTimerList com manipuladores chamados pelo temporizador.
A vulnerabilidade já foi corrigida em Fedora и SUSE / openSUSE, mas permanece sem correção em Debian, Arch Linux и FreeBSD. Em Ubuntu и RHEL O problema não aparece por não usar o slirp. A vulnerabilidade permanece não corrigida na versão mais recente libslirp4.0 (a correção está atualmente disponível como correção).

Fonte: opennet.ru

Adicionar um comentário