CVE-2020-0674
CVE-2020-0674 é uma vulnerabilidade de use-after-free no mecanismo legado jscript. Ela pode ser acionada no Internet Explorer. O exploit aqui foi escrito por maxpl0it, mas a vulnerabilidade em si foi descoberta pela Qihoo 360 sendo usada na natureza. Este exploit simplesmente abre a calculadora.
A descrição do exploit pode ser encontrada aqui.
Visão Geral da Vulnerabilidade
- A vulnerabilidade existe na função
sort do Array ao usar uma função de comparação.
- Os dois argumentos fornecidos para a função de comparação não são rastreados pelo Garbage Collector e, portanto, apontarão para memória liberada após a chamada do GC.
Notas do Exploit
- O exploit foi escrito especificamente para Windows 7, mas provavelmente pode ser portado sem muita dificuldade.
- Este exploit foi escrito para instâncias x64 do IE, portanto será executado (e foi testado) nas seguintes configurações de navegador:
- IE 8 (build x64)
- IE 9 (build x64)
- IE 10 (Com Enhanced Protected Mode ativado ou TabProcGrowth ativado)
- IE 11 (Com Enhanced Protected Mode ativado ou TabProcGrowth ativado)
- Vale notar que o Enhanced Protected Mode no Windows 7 simplesmente ativa a versão x64 do processo do navegador, então não é uma fuga de sandbox, mas sim a ausência de qualquer sandbox adicional. Ironicamente, como este exploit é para x64, o EPM na verdade permite que ele funcione.
- O exploit não foi feito para contornar completamente o EMET (apenas uma detecção de bypass de stack pivot foi realmente implementada), no entanto, a versão final (5.52) parece não acionar o EAF+ quando o exploit é executado, ao contrário da versão 5.5 (pelo menos, no Windows 7 x64). Portanto, o IE 11 no Enhanced Protected Mode com as configurações máximas do EMET permite o exploit.
- O exploit é fortemente comentado, mas para entender melhor como o exploit funciona e o que ele faz em cada etapa, altere
var debug = false; para var debug = true; e abra o console do desenvolvedor para visualizar o log ou mantenha-o fechado e veja os popups alert (o que pode ser um pouco irritante).