CVE-2010-2883
Corrige ahora. Ella está bajo explotación confirmada por CISA y tiene exploit funcional público.
Apply updates per vendor instructions.
Resumen
Buffer overflow baseado em pilha no CoolType.dll, a biblioteca de renderização de fontes usada pelo Adobe Reader e Acrobat 9.x (antes de 9.4) e 8.x (antes de 8.2.5) em Windows e Mac OS X. A falha foi explorada in the wild como 0-day em setembro de 2010, antes de existir patch, o que a coloca no catálogo KEV da CISA — é o tipo de CVE antiga que só importa hoje se alguém ainda tiver Reader/Acrobat de 2010 rodando, o que é raro, mas presente em sistemas legados e apliances embarcados.
Detalle técnico
O overflow está no parser de fontes TrueType do CoolType.dll, especificamente no tratamento da tabela SING (Smart INdependent Glyphlets), uma extensão usada para glyphlets individuais dentro de uma fonte TTF. Segundo a análise do CERT/CC, o código usa uma chamada `strcat` sem validar o tamanho do dado copiado ao processar um campo dessa tabela — um overflow clássico de cópia sem limite (CWE-121, stack-based buffer overflow / CWE-787 write-out-of-bounds).
O atacante controla o conteúdo da fonte TrueType embutida no PDF, incluindo o campo problemático dentro da tabela SING. Um campo mais longo do que o buffer de pilha alocado sobrescreve dados adjacentes na stack, incluindo potencialmente endereços de retorno, permitindo desviar o fluxo de execução.
O parser de fontes é acionado durante a renderização normal do documento, não depende de JavaScript nem de nenhuma funcionalidade avançada do PDF — basta o visualizador processar a fonte embutida para o código vulnerável ser alcançado. Isso explica por que desabilitar JavaScript no Reader, mitigação comum para outras falhas da época, não neutraliza esta.
Cómo se explota
O vetor é um PDF malicioso com uma fonte TrueType embutida cuja tabela SING contém o campo manipulado para sobrecarregar o buffer. A exploração exige apenas que a vítima abra o arquivo no Reader/Acrobat vulnerável (interação do usuário necessária) — não há necessidade de autenticação, configuração não padrão nem privilégios elevados. Isso é consistente com o vetor de rede/entrega por e-mail ou download típico de campanhas de 2010.
A vulnerabilidade foi identificada porque estava sendo ativamente explorada como 0-day em ataques direcionados observados em setembro de 2010, conforme documentado pela Websense Security Labs e discutido no blog da Metasploit. O módulo Metasploit publicado na época ('Return of Unpublished Adobe') demonstrou a viabilidade prática do exploit contra a base instalada da época, o que consolidou a exploração generalizada e motivou a inclusão no catálogo KEV da CISA.
Resultado da exploração bem-sucedida: execução de código arbitrário com os privilégios do processo do Reader/Acrobat (o usuário que abriu o PDF), ou, em caso de falha na exploração, apenas crash da aplicação (DoS). Não há relato de exploração remota sem interação do usuário — o vetor sempre depende de engenharia social para abrir o arquivo.
Versiones
Cómo protegerse
A correção definitiva é atualizar para Adobe Reader/Acrobat 9.4 ou 8.2.5 (Windows e Mac OS X), conforme o boletim APSB10-21 da Adobe. Distribuições Linux que empacotam o Acrobat Reader (ex.: acroread) trataram isso junto com outras CVEs do mesmo período; o GLSA do Gentoo recomenda mover para >= 9.4.1, que cobre esta e outras falhas do mesmo boletim.
Se a atualização não for imediatamente viável, o CERT/CC lista paliativos reais, todos com limitações: usar o Microsoft EMET (Enhanced Mitigation Experience Toolkit) para dificultar a exploração via DEP/ASLR forçados; desabilitar a exibição de PDF dentro do navegador (reduz superfície de ataque via web, mas não impede exploração via arquivo aberto localmente); e impedir que o Internet Explorer abra PDFs automaticamente sem prompt do usuário, via ajuste de registro no chave `AcroExch.Document.7`.
O mito a descartar: desabilitar JavaScript no Reader, mitigação eficaz contra várias outras CVEs da família Adobe daquela época, NÃO resolve esta falha — o próprio CERT/CC afirma isso explicitamente, porque o bug está no parser de fontes, acionado independentemente de JavaScript estar habilitado ou não.
Cómo detectar
Não há assinatura de log nativa confiável no próprio Reader/Acrobat para identificar tentativas de exploração; o sinal mais direto é o crash do processo (AcroRd32.exe ou Acrobat.exe) com falha atribuída ao CoolType.dll, correlacionado com a abertura de um PDF recebido por e-mail ou download. Soluções de antivírus e IDS/IPS da época passaram a ter assinaturas específicas para o padrão malformado da tabela SING em fontes TTF embutidas em PDF; a ausência de tais assinaturas atualizadas em ambientes legados reduz a chance de detecção retroativa.