CVE-2012-4969
Corrige ahora. Ella está bajo explotación confirmada por CISA y tiene exploit funcional público.
Apply updates per vendor instructions.
Resumen
Falha use-after-free (CWE-416) na função CMshtmlEd::Exec do mshtml.dll, o motor de renderização do Internet Explorer 6 a 9, ligada ao comando execCommand. Foi descoberta já em exploração ativa em setembro de 2012, usada por um grupo (associado à campanha 'Nitro', que também usou o 0day de Java CVE-2012-4681) para instalar o RAT Poison Ivy em ataques direcionados. Está no catálogo KEV da CISA desde 2022, mesmo sendo uma falha de 2012, porque continua sendo achada em sistemas legados não atualizados.
Detalle técnico
A vulnerabilidade está no tratamento de objetos DOM pelo mshtml.dll quando o script da página chama execCommand em condições específicas de edição/seleção de conteúdo. A função CMshtmlEd::Exec mantém uma referência a um objeto que já foi liberado da memória (free), e o código continua operando sobre esse ponteiro — o clássico padrão use-after-free. Como o objeto liberado pode ser realocado pelo atacante com dados controlados antes do reuso, isso permite corromper o heap e, em última instância, desviar o fluxo de execução para código controlado pelo atacante.
O gatilho é inteiramente client-side: uma página HTML maliciosa com JavaScript que manipula o DOM (via execCommand, edição de conteúdo, etc.) força a liberação prematura do objeto e depois provoca seu reuso. Não há necessidade de plugins adicionais — o vetor primário observado combinava essa falha do IE com um Flash (SWF) criptografado usado como carregador do exploit, mas o Flash não era parte da vulnerabilidade em si, apenas do encadeamento do ataque.
O CVSS 3.1 retroativo atribuído (AV:N/AC:H/PR:N/UI:N) reflete que, apesar de não exigir autenticação nem interação de usuário alem de abrir a página, a complexidade de exploração é considerada alta — coerente com o que pesquisadores relataram na época: a exploração confiável dependia de uma combinação específica de versão do IE e do sistema operacional (ver seção de exploração).
Cómo se explota
A exploração observada in-the-wild em setembro de 2012 usava uma página 'exploit.html' que carregava um arquivo Flash ('Moh2010.swf') criptografado, decodificado e descomprimido em memória, que então acionava o use-after-free no IE para obter execução de código e instalar o backdoor Poison Ivy. Após a exploração, um segundo arquivo ('Protect.html') verificava um marcador em Flash Storage para evitar reexplorar o mesmo navegador em visitas repetidas — um comportamento típico de operação cuidadosa para reduzir detecção.
Segundo análise da VUPEN citada por pesquisadores da época, embora a falha subjacente no mshtml.dll afete IE 6 a 9, o exploit encontrado em campanha real só funcionava de forma confiável contra Internet Explorer 7 e 8 rodando em Windows XP — a exploração seria trivial nesse combo específico, mas não necessariamente replicável sem ajuste em outras versões de IE/Windows (como Vista/7, que têm ASLR). Isso é relevante: a manchete 'IE 6-9 vulnerável' não implica que todo esse universo era explorável com o mesmo grau de facilidade.
Há módulo público no framework Metasploit (ie_execcommand_uaf) desde os primeiros dias da divulgação, o que baixou a barreira técnica para reprodução e testes — e também para uso oportunista por outros atores após a divulgação pública. A CISA formalizou a inclusão no catálogo KEV em 2022, indicando que a exploração de instâncias remanescentes (sistemas legados sem patch, IE embutido em software industrial/legado) ainda é considerada viável e relevante para órgãos federais dos EUA.
Versiones
Cómo protegerse
A correção definitiva é a atualização cumulativa de segurança MS12-063 da Microsoft, publicada em 21/09/2012, que endereça a CVE-2012-4969 junto com outras falhas do IE. Não temos, nas fontes consultadas, os números de KB específicos por versão de IE/Windows — aplique o Windows Update ou o pacote correspondente ao MS12-063 para a sua versão exata do IE 6-9.
Antes do patch estar disponível, a Microsoft distribuiu um Fix it interino (Microsoft Fix it 50939, 'Prevent Memory Corruption via ExecCommand in Internet Explorer'), que exigia que todas as atualizações de segurança anteriores do Windows já estivessem instaladas para funcionar. Como paliativos adicionais documentados pelo CERT/CC: configurar as zonas de segurança da Internet e Intranet Local para 'Alto' (bloqueando ActiveX e Active Scripting), configurar o IE para perguntar antes de executar Active Scripting ou desabilitá-lo nessas zonas, usar o Enhanced Mitigation Experience Toolkit (EMET) e habilitar DEP — sendo que DEP só é mitigação robusta em sistemas com ASLR (Vista/Server 2008 em diante; Windows XP e Server 2003 não têm ASLR, o que explica por que o exploit in-the-wild era mais confiável nesses sistemas). Trocar temporariamente de navegador foi recomendação explícita da Microsoft e de pesquisadores enquanto o patch não existia.
Hoje, mais de uma década depois, a mitigação real é: não existe motivo para manter IE 6-9 sem patch ou em uso ativo — o produto está fora de suporte. Se a falha ainda aparece em ambiente atual (KEV 2022), o problema é herança de sistemas legados/embarcados com IE desatualizado; a solução correta é aplicar o patch histórico disponível via Windows Update/WSUS ou remover/isolar o componente IE legado, não depender de workarounds de 2012 como controle permanente.
Cómo detectar
Nos artefatos originais da campanha de 2012: presença de arquivos com os nomes 'exploit.html', 'Moh2010.swf' (Flash criptografado carregado em memória) e 'Protect.html' em diretórios web (relatado em 'public/help' de servidores comprometidos), além de tráfego/indicadores associados ao RAT Poison Ivy pós-exploração. Em ambientes que usam o módulo Metasploit ie_execcommand_uaf para testes ou ataques, o tráfego HTTP de entrega tende a seguir o padrão desse módulo público, o que pode ser assinalado por IDS/IPS com assinaturas específicas para essa CVE (a Microsoft distribuiu detalhes via MAPP a fornecedores de segurança em 2012).
Não há um indicador de rede único e confiável para a falha em si, já que o disparo ocorre inteiramente no processamento local do DOM pelo mshtml.dll — o sinal mais forte é comportamental (crash do iexplore.exe com stack trace referenciando mshtml.dll/CMshtmlEd::Exec, ou telemetria de EDR mostrando iexplore.exe gerando processos/injeção anômala) combinado com os artefatos de entrega conhecidos da campanha original.