← back
CVE-2024-4947criticalunder attackCWE-843

CVE-2024-4947

85Vexday Risk Score

Prioritize patching. It under exploitation confirmed by CISA and has a public proof of concept.

ssvc Actcvss 9.6epss 15%
from disclosure to weapon432 days
Published on NVDMay 15
1st PoC+432d
CISA KEV+5d
exploitation probability
15%top 3% of all CVEs
observed exploitation
yesCISA + VulnCheck
4 public exploit(s)
Action required by CISAfederal deadline: 2024-06-10

Apply mitigations per vendor instructions or discontinue use of the product if mitigations are unavailable.

Summary

Falha de type confusion no motor JavaScript V8 do Chrome que permite execução de código arbitrário dentro do sandbox do navegador a partir de uma página HTML maliciosa. A Google confirmou exploração ativa antes da correção — está no catálogo KEV da CISA — o que eleva a urgência mesmo com EPSS baixo (0,15), típico de exploits direcionados e não massificados.

Technical detail

A falha é uma type confusion (CWE-843) no V8, o motor JavaScript/WASM do Chromium. Esse tipo de bug ocorre quando o compilador JIT (TurboFan) faz suposições sobre o tipo/formato de um objeto em tempo de otimização que deixam de ser válidas em runtime — por exemplo, após uma desotimização (deoptimization) ou uma mudança de shape do objeto via side effects durante a compilação especulativa. O motor passa a tratar uma região de memória com o layout de um tipo diferente do que ela realmente contém, dando ao atacante controle sobre leitura e escrita de memória a partir de JavaScript puro, sem precisar de um bug de memória 'clássico' como buffer overflow.

O detalhe da issue no Chromium (340221135) permanece com acesso restrito — prática padrão da Google até que a maioria dos usuários receba a correção — então não há descrição pública do trecho exato de código ou da rotina do V8 afetada. O que se sabe com certeza vem do advisory: é reportado por Vasily Berdnikov e Boris Larin, da Kaspersky, pesquisadores com histórico de encontrar bugs de V8 explorados em campanhas reais (inclusive ligados a APTs em investigações anteriores da Kaspersky).

O que o atacante controla é o conteúdo JavaScript executado pela página — layout de objetos, tipos, timing de garbage collection e operações que forçam o V8 a tomar decisões de tipo incorretas. A partir da confusão de tipo, a exploração típica dessa classe de bug consegue transformar uma escrita fora de contexto em corrupção controlada de estruturas internas do heap do V8, e daí em execução de código dentro do processo de renderização.

How it’s exploited

O vetor é uma página HTML/JavaScript maliciosa servida a um usuário — via link, anúncio malicioso, ou site comprometido. Exige interação do usuário (UI:R no vetor CVSS), ou seja, a vítima precisa abrir a página no Chrome vulnerável; não há exploração sem esse clique/carregamento. Não exige autenticação nem configuração não padrão do navegador — o V8 roda habilitado por padrão em qualquer instalação do Chrome.

Ponto crítico que a nota CVSS 9.6 não deixa óbvio: a descrição oficial diz explicitamente 'execute arbitrary code inside a sandbox'. Isso significa que, isoladamente, esse bug dá execução de código dentro do processo de renderização, confinado ao sandbox do Chrome — não é escape de sandbox nem comprometimento do sistema operacional por si só. Para impacto total (acesso ao sistema, persistência, movimento lateral), um atacante precisaria encadear essa falha com uma segunda vulnerabilidade de escape de sandbox ou de escalonamento de privilégio, algo comum em campanhas que usam V8 bugs como primeiro estágio de uma cadeia de exploração.

A Google declarou no próprio advisory que 'está ciente de que existe um exploit para CVE-2024-4947 in the wild', e o CISA a incluiu no catálogo KEV, confirmando exploração real antes do patch — mas não há detalhes públicos sobre quem foi o alvo, escala da campanha ou se o exploit observado incluía uma cadeia completa de escape de sandbox.

Versions

Affected
Google Chrome anterior a 125.0.6422.60 (todas as plataformas afetadas: Windows, Mac e Linux; builds anteriores ao Chrome 125 estável).
Fixed in
Chrome 125.0.6422.60 (Linux) e 125.0.6422.60/.61 (Windows e Mac). Distribuições Linux baseadas em Chromium publicaram pacotes equivalentes, como chromium-125.0.6422.60-1 para Fedora 38, 39 e 40.

How to protect

Atualizar o Chrome para 125.0.6422.60 (Linux) ou 125.0.6422.60/.61 (Windows/Mac) resolve a falha — é a única mitigação real. Distribuições baseadas em Chromium seguiram com pacotes equivalentes: Fedora 38, 39 e 40 lançaram chromium-125.0.6422.60 nos respectivos repositórios pouco depois do release upstream.

Se a atualização não for imediata, não há flag de configuração ou controle compensatório documentado pelo fornecedor que neutralize type confusion no V8 — desativar JavaScript integralmente elimina o vetor, mas quebra a usabilidade da maioria dos sites e não é uma mitigação prática para navegação geral. Isolamento de processo (site isolation, já padrão no Chrome) e a própria sandbox reduzem o impacto de um bug isolado como este, mas não impedem a execução dentro do processo comprometido — por isso o problema é tratado como severidade alta mesmo estando 'contido' no sandbox.

Não funciona como mitigação: extensões de bloqueio de anúncios ou scripts não garantem cobertura contra todo vetor de entrega, e políticas de firewall/proxy não detectam o payload porque ele é JavaScript legítimo do ponto de vista de rede — a exploração ocorre inteiramente no parsing/execução local do V8.

How to detect

Não há assinatura de rede confiável: o vetor é JavaScript executado localmente dentro do V8, sem payload de rede distintivo que diferencie tráfego malicioso de uma página legítima. O sinal mais forte disponível publicamente é a confirmação da própria Google de exploração in the wild e a inclusão no catálogo KEV da CISA — o que indica que houve campanhas direcionadas, mas sem indicadores de comprometimento (IOCs) publicados pelo fornecedor ou por pesquisadores até o momento das fontes consultadas. Em ambientes corporativos, crashes recorrentes do processo de renderização do Chrome (renderer) associados a acesso a domínios específicos antes da atualização para 125.0.6422.60 podem ser um indício indireto, mas não são prova de exploração desta CVE especificamente.

Researched and written with AI from the vendor advisory and public analysis, with the sources above. Always confirm the fixed version in the official advisory before acting.
Type Confusion in V8 in Google Chrome prior to 125.0.6422.60 allowed a remote attacker to execute arbitrary code inside a sandbox via a crafted HTML page. (Chromium security severity: High)
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:H/I:H/A:H
Affected products
Google · Chrome
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.