← voltar
CVE-2015-4495highsob ataqueCWE-346

CVE-2015-4495

98Vexday Risk Score

Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.

ssvc Actcvss 8.8epss 69%
da publicação à arma2 dias
Publicada no NVD8 de ago.
1ª PoC+2d
CISA KEV+2482d
probabilidade de exploração
69%top 1% das CVEs
exploração observada
simCISA + VulnCheck
4 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2022-06-15

Apply updates per vendor instructions.

Resumo

Falha na engine XPConnect do Firefox permite que JavaScript malicioso, executado no contexto de uma página web, obtenha acesso a um 'setter' nativo (o setter de location de uma janela privilegiada) através do visualizador de PDF embutido (PDF.js). Isso quebra a Same Origin Policy e permite ler arquivos locais arbitrários — sem execução de código, mas com exfiltração de segredos como chaves SSH, histórico de shell e credenciais de clientes FTP. Importa porque foi explorada in-the-wild antes da correção, via anúncio malicioso veiculado em site de notícias russo, com upload dos arquivos roubados para um servidor na Ucrânia.

Detalhamento técnico

A causa raiz (CWE-346, violação de origem confiável / bypass de mesma origem; também relacionado a CWE-668, exposição de recurso a esfera de controle incorreta) está na interação entre o mecanismo de isolamento de contexto JavaScript do Firefox e o PDF Viewer (PDF.js), que roda como código privilegiado dentro do navegador. O pesquisador Cody Crews (Bugzilla 1178058) documentou a cadeia: folhas de estilo carregadas via C++ para o pretty-print de XML ficam acessíveis por document.styleSheets, mesmo sem aparecer em document.childNodes. A partir dessas referências, um atacante alcança o contexto de execução XBL e, subindo a cadeia de protótipos até Object, usa o método nativo __lookupSetter__ (equivalente a Object.getOwnPropertyDescriptor(win, 'location').set) para obter o setter nativo de 'location' de uma janela à qual não deveria ter acesso.

Como é explorada

Com o setter de location em mãos, o atacante o aplica sobre a janela do PDF Viewer e injeta uma URI javascript: nesse contexto — que herda privilégios elevados por fazer parte do PDF.js embutido. A partir daí, o código injetado carrega um recurso local via esquema resource://, contexto que tem permissão de leitura de arquivo, e o conteúdo carregado fica acessível ao script do atacante. Não há execução arbitrária de código nativo: o ganho é leitura de arquivo e potencial escalonamento de privilégio dentro do próprio browser (acesso a janelas como about:home).

Versões

Afetadas
Firefox anterior a 39.0.3; Firefox ESR 38.x anterior a 38.1.1; Firefox OS anterior a 2.2.
Corrigidas em
Firefox 39.0.3; Firefox ESR 38.1.1; Firefox OS 2.2. Distribuições Linux corrigiram via pacotes baseados nessas versões (ex.: RHSA-2015:1581 trazendo Firefox 38.1.1 ESR).

Como se proteger

Atualizar para Firefox 39.0.3, Firefox ESR 38.1.1 ou Firefox OS 2.2 corrige a falha — a correção removeu o registro do PlayPreview do PDF Viewer e ajustou XPConnect para não converter um 'expanded principal' herdando o principal do carregamento atual, entre outros patches (bugs 1178058 e 1179262). Distribuições Linux empacotaram o mesmo fix: RHEL via RHSA-2015:1581 (pacotes Firefox baseados em 38.1.1 ESR) e openSUSE via os avisos listados.

Como detectar

Segundo o próprio blog de segurança da Mozilla, o exploit observado 'não deixa rastro de que foi executado na máquina local' — não há artefato confiável de disco ou log local para confirmar exploração pós-fato. O único sinal prático é de rede/publicidade: consumo de anúncio malicioso servido por rede de ads em site legítimo, seguido de conexão de upload de arquivos para um servidor então identificado como hospedado na Ucrânia; não há IOC (domínio/IP) publicado de forma persistente para caça retroativa. Bloqueadores de anúncio podem ter impedido a entrega do payload em alguns casos, mas isso é incidental, não uma defesa garantida.

Pesquisado e redigido com IA a partir do advisory do fornecedor e de análises públicas, com as fontes acima. Confira sempre a versão corrigida no advisory oficial antes de agir.
The PDF reader in Mozilla Firefox before 39.0.3, Firefox ESR 38.x before 38.1.1, and Firefox OS before 2.2 allows remote attackers to bypass the Same Origin Policy, and read arbitrary files or gain privileges, via vectors involving crafted JavaScript code and a native setter, as exploited in the wild in August 2015.
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
Produtos afetados
n/a · n/a
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.