← voltar
CVE-2020-0938highsob ataqueCWE-787

CVE-2020-0938

83Vexday Risk Score

Priorize a correção. Ela está sob exploração confirmada pelo CISA e tem prova de conceito pública.

ssvc Actcvss 7.8epss 69%
da publicação à arma
Publicada no NVD15 de abr.
CISA KEV+567d
probabilidade de exploração
69%top 1% das CVEs
exploração observada
simCISA + VulnCheck
1 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2022-05-03

Apply updates per vendor instructions.

Resumo

Falha de escrita fora dos limites (CWE-787) na Windows Adobe Type Manager Library (atmfd.dll), o componente que renderiza fontes PostScript Type 1 multi-master. Um arquivo de fonte malformado processado pelo Windows Explorer ou por qualquer aplicação que use a lib para preview de fontes pode corromper memória e levar à execução de código. É especialmente grave porque a Microsoft confirmou exploração ativa em campo antes mesmo de existir patch, e a falha entrou no catálogo KEV da CISA.

Detalhamento técnico

O bug está no parser de fontes Adobe Type 1 (PostScript) dentro do Adobe Type Manager Font Driver (atmfd.dll), carregado pelo kernel do Windows para renderizar fontes em várias superfícies — Explorer com preview de arquivos, WebDAV, documentos que embutem fontes, etc. O parser trata incorretamente uma fonte multi-master malformada, gerando uma escrita fora dos limites de um buffer (CWE-787). O atacante controla o conteúdo do arquivo de fonte: os campos que definem o número de masters, offsets e tabelas do formato Type 1 podem ser manipulados para forçar o parser a escrever além do buffer alocado.

Como o atmfd.dll roda historicamente em contexto de kernel em versões pré-Windows 10 (o driver de fontes é carregado no kernel-mode em sistemas mais antigos), uma corrupção de memória ali tem potencial de execução de código com privilégios de kernel — daí a gravidade em "todos os sistemas exceto Windows 10". No Windows 10, a Microsoft já havia movido parte da renderização de fontes para um processo de usuário isolado em AppContainer (sandbox), então o mesmo bug ali resulta em execução de código dentro dessa sandbox, com privilégios e capacidades limitadas — não em comprometimento direto do sistema.

Esta CVE é irmã da CVE-2020-1020: ambas cobrem a mesma classe de falha no mesmo parser, reportadas e corrigidas juntas pela Microsoft, mas registradas como CVEs distintas por afetarem trechos de código ou condições de trigger diferentes dentro da mesma biblioteca.

Como é explorada

O vetor mais citado é engano do usuário: basta que a vítima visualize o arquivo de fonte malicioso — por exemplo, abrindo o Explorer em uma pasta que contém o arquivo com o painel de visualização (preview pane) habilitado, ou abrindo um documento que embuta a fonte. Isso explica o UI:R (interação do usuário) no vetor CVSS e o AV:L (ataque local) — não é uma falha explorável remotamente sem que a vítima realize alguma ação, ainda que essa ação seja trivial (navegar até uma pasta, receber um documento por e-mail ou baixar um arquivo compartilhado via rede/WebDAV).

A Microsoft reportou, no advisory original que precedeu o patch, que havia exploração ativa e limitada e direcionada dessa classe de falha antes de existir correção — o que motivou a entrada no catálogo KEV da CISA (adicionada em novembro de 2021, retroativamente, como parte do esforço de catalogar vulnerabilidades já exploradas). Existe PoC pública documentada, incluindo um caso relacionado ao parser de fontes da Apple (CoreText/libFontParser) que ilustra a classe de corrupção em parsers Type 1 similares, mas não confundir isso com um exploit direto para o Windows — são implementações de parser distintas, ainda que a família de bug (parsing de fontes PostScript legado) seja a mesma.

O resultado final da exploração bem-sucedida depende da versão: em sistemas pré-Windows 10, execução de código no contexto do driver de fonte (potencialmente kernel); em Windows 10, execução restrita dentro do AppContainer sandbox, o que limita drasticamente o dano sem uma escalada de privilégios adicional.

Versões

Afetadas
Segundo o registro CVE: Microsoft Windows 10 versão 1903 (32-bit, ARM64, x64), Windows 10 versão 1909 (32-bit, ARM64, x64) e Microsoft Windows Server. O advisory original da Microsoft (ADV200006), que trata da mesma falha de parsing de fontes Adobe Type 1 na Windows Adobe Type Manager Library, cobriu um leque mais amplo de versões suportadas na época (incluindo Windows 7 SP1, Windows 8.1 e outras edições de Windows Server) — consulte o advisory da Microsoft para confirmar a lista completa e o status por build específica.
Corrigidas em
Corrigida pelas atualizações de segurança da Microsoft do ciclo de abril de 2020 para as versões de Windows e Windows Server então suportadas. Não apuramos aqui os números exatos de KB por versão; verificar no Microsoft Update Catalog / MSRC o KB vinculado a CVE-2020-0938 para a build específica em uso antes de considerar o sistema corrigido.

Como se proteger

A correção definitiva veio via atualização de segurança da Microsoft no ciclo de patches de abril de 2020, cobrindo as branches então suportadas do Windows (Windows 7 SP1, Windows 8.1, Windows 10 nas versões listadas — 1903 e 1909 — e as edições correspondentes de Windows Server). Não temos aqui o número exato de KB por versão; a orientação segura é aplicar as atualizações cumulativas de abril/2020 (ou posteriores) do Windows Update / WSUS para o SO específico, conferindo no Microsoft Update Catalog o KB associado a essa CVE para a build exata em uso.

Antes do patch existir, a Microsoft publicou paliativos no advisório original (ADV200006) para reduzir a superfície de ataque enquanto a correção não estava disponível: desabilitar o painel de visualização e o painel de detalhes no Explorer (que disparam a renderização automática de fontes ao navegar em pastas), e desabilitar o serviço WebClient (para bloquear o vetor via WebDAV). Essas mitigações não eliminam a vulnerabilidade — apenas removem os gatilhos automáticos mais comuns; um usuário que abra manualmente o arquivo de fonte ou um documento que a incorpore ainda pode acionar a falha.

Sistemas Windows 7 e 8.1 fora de suporte estendido (sem ESU) não recebem mais patches para essa CVE — nesses casos o único controle real é isolamento de rede, bloqueio de execução/preview de arquivos de fonte não confiáveis e desativação dos vetores citados acima. Não considerar a sandbox do Windows 10 como mitigação suficiente por si só: ela reduz o impacto, mas não impede a exploração inicial nem uma eventual escalada.

Como detectar

Não há assinatura de rede confiável, já que a exploração ocorre no processamento local de um arquivo de fonte (via Explorer, documento ou compartilhamento de arquivo) e não via um protocolo de rede distintivo — o tráfego, quando existe, é apenas a transferência do arquivo malicioso (ex.: via SMB, WebDAV ou e-mail), indistinguível de tráfego legítimo de arquivos. Em nível de host, procurar por crashes ou eventos de erro do processo relacionado à renderização de fontes (Explorer.exe, ou o processo de sandbox do Font Driver Host em Windows 10 — fontdrvhost.exe) coincidindo com o acesso a pastas ou arquivos com fontes incomuns, além de arquivos de fonte Type 1 (.pfb/.pfm) recebidos por canais atípicos (anexos, downloads, compartilhamentos externos) como indicador de possível tentativa de entrega do artefato malicioso.

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.
A remote code execution vulnerability exists in Microsoft Windows when the Windows Adobe Type Manager Library improperly handles a specially-crafted multi-master font - Adobe Type 1 PostScript format.For all systems except Windows 10, an attacker who successfully exploited the vulnerability could execute code remotely, aka 'Adobe Font Manager Library Remote Code Execution Vulnerability'. This CVE ID is unique from CVE-2020-1020.
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.