← back
CVE-2017-0199highunder attackransomware

CVE-2017-0199

100Vexday Risk Score

Patch now. It under exploitation confirmed by CISA, has a working public exploit and 9 threat group(s) use it.

ssvc Actcvss 7.8epss 100%
from disclosure to weapon1 days
Published on NVDApr 12
1st PoC+1d
metasploit+2d
CISA KEV+1666d
exploitation probability
100%top 1% of all CVEs
observed exploitation
yesCISA + VulnCheck
9 group(s)44 public exploit(s)
Action required by CISAfederal deadline: 2022-05-03

Apply updates per vendor instructions.

Summary

CVE-2017-0199 é uma falha de execução remota de código no Microsoft Office e no WordPad, explorada por meio de documentos RTF/DOC maliciosos que abusam do OLE2Link e do URL Moniker do Windows para baixar e executar conteúdo HTA disfarçado de objeto vinculado. Foi um zero-day ativamente explorado por campanhas de malware bancário (Dridex) antes da correção da Microsoft em abril de 2017, e continua no catálogo KEV da CISA por uso confirmado em campanhas de ransomware. O CVSS 7.8 reflete a gravidade do impacto (execução de código com privilégios do usuário), mas a exploração exige que a vítima abra o documento — não é um ataque sem interação.

Technical detail

A vulnerabilidade está na forma como o Office e o WordPad processam objetos OLE embutidos em documentos RTF (e DOC/DOCX). Um objeto do tipo OLE2Link, ao ser carregado ou atualizado, invoca o URL Moniker do Windows (identificável pelo GUID {79EAC9E0-BAF9-11CE-8C82-00AA004BA90B}) para buscar o conteúdo do link em vez de usar o OLE Moniker padrão. Isso permite que o documento aponte para uma URL remota controlada pelo atacante em vez de um arquivo local.

O atacante controla o servidor que responde a essa requisição e define o cabeçalho Content-Type da resposta. Se o servidor responder com Content-Type de HTA (HTML Application), o Windows entrega o conteúdo baixado ao mecanismo de execução do mshta.exe em vez de tratá-lo como um documento estático — mesmo que o payload tenha extensão .rtf ou .doc. O HTA pode conter VBScript/JScript arbitrário, que roda com os privilégios do usuário que abriu o documento, sem qualquer aviso de macro (esse é o ponto crítico: a técnica contorna completamente os avisos de macro/Modo Protegido que os usuários já foram treinados a desconfiar).

Análises técnicas (NVISO Labs, rewtin) mostraram que o objeto OLE pode ser configurado com a flag objautlink/objupdate para ser atualizado automaticamente na abertura do documento, dispensando até o clique manual no objeto vinculado. Isso reduz a interação do usuário ao mínimo: apenas abrir o arquivo.

How it’s exploited

O vetor primário é phishing: um e-mail com anexo RTF ou DOC malicioso, cujo objeto OLE aponta para um servidor HTTP/WebDAV controlado pelo atacante. A exploração documentada publicamente (PoC do rewtin) exige um servidor configurado para servir o payload com Content-Type application/hta e, em alguns casos, suporte a WebDAV/PROPFIND para emular o comportamento esperado pelo Office ao resolver o link OLE. Não há necessidade de habilitar macros, ActiveX ou conteúdo dinâmico — a cadeia de exploração usa recursos nativos de vinculação de objetos que o Office trata como funcionalidade legítima.

A exploração em massa começou antes da correção: pesquisadores (FireEye, McAfee, Proofpoint) relataram campanhas com o trojan bancário Dridex distribuindo esse exploit como zero-day já em março/abril de 2017. Depois do patch, PoCs públicos (Exploit-DB) e um módulo Metasploit tornaram a técnica um item recorrente em kits de phishing genéricos, sendo reaproveitada por múltiplos grupos, incluindo operações associadas a ransomware — motivo da inclusão no catálogo KEV da CISA com nota explícita de uso em campanhas de ransomware.

O resultado final da exploração é execução de código arbitrário no contexto do usuário que abriu o documento — não há elevação de privilégio automática, mas em ambientes onde o usuário tem privilégios administrativos (uma reclamação recorrente em comentários sobre servidores Windows com Wordpad como visualizador padrão) o impacto é equivalente a comprometimento total da máquina.

Versions

Affected
Microsoft Office 2007 SP3, Microsoft Office 2010 SP2, Microsoft Office 2013 SP1, Microsoft Office 2016; e, via WordPad, Windows Vista SP2, Windows Server 2008 SP2, Windows 7 SP1, Windows 8.1.
Fixed in
Versões corrigidas pela atualização de segurança da Microsoft de abril de 2017 (11/04/2017) para cada produto/plataforma listado acima. As fontes consultadas não especificam números de KB individuais; consultar o portal oficial de segurança da Microsoft para o pacote correspondente a cada versão.

How to protect

A correção definitiva é aplicar a atualização de segurança da Microsoft publicada em 11 de abril de 2017 (ciclo de Patch Tuesday daquele mês), que se aplica a todas as combinações de Office 2007 SP3, 2010 SP2, 2013 SP1, 2016 e às versões de Windows listadas (Vista SP2, Server 2008 SP2, 7 SP1, 8.1). As fontes consultadas não trazem números de KB específicos por produto; use o canal oficial de atualizações do fornecedor para identificar o pacote correto para cada versão/idioma.

Como controle compensatório quando a atualização não é imediata: bloquear a criação de processos filhos por aplicativos do Office (o encadeamento típico do ataque é WINWORD.EXE/WORDPAD.EXE gerando MSHTA.EXE), remover ou restringir o uso do WordPad em servidores onde ele é o visualizador padrão de .txt/.rtf, e desabilitar handlers OLE que não sejam estritamente necessários. Bloqueio de saída para hosts desconhecidos a partir de processos do Office também reduz a superfície, já que a exploração depende de uma requisição de rede feita pelo próprio aplicativo Office.

O que não funciona como mitigação: desabilitar macros do Office não tem efeito algum aqui — essa é justamente a característica que tornou o CVE-2017-0199 perigoso, pois contorna os avisos de macro que os usuários aprenderam a temer. Treinamento de usuário para 'não habilitar edição' também não protege, já que a variante com objautlink dispara a exploração apenas com a abertura do arquivo.

How to detect

A regra YARA publicada pela NVISO Labs procura pela assinatura de objeto OLE1.0 (objdata 0105000002000000) combinada com o GUID binário do URL Moniker (E0C9EA79F9BACE118C8200AA004BA90B) e a string http:// codificada em UTF-16 dentro de um arquivo RTF — mas os próprios autores do PoC (rewtin) demonstraram que variações no payload (sem a string literal 'OLE2Link', usando https ou outro moniker) evadem essa regra, então ela detecta apenas a variante documentada inicialmente, não a técnica em geral.

Um sinal mais robusto em telemetria de endpoint é comportamental: processos do Office (WINWORD.EXE, WORDPAD.EXE) gerando MSHTA.EXE ou PowerShell como processo filho é anômalo e raramente legítimo — esse encadeamento é o indicador mais confiável de exploração bem-sucedida, independente da ofuscação do documento. Em nível de rede, requisições HTTP/WebDAV originadas de processos do Office para hosts externos com resposta Content-Type application/hta também indicam tentativa de exploração.

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.
Microsoft Office 2007 SP3, Microsoft Office 2010 SP2, Microsoft Office 2013 SP1, Microsoft Office 2016, Microsoft Windows Vista SP2, Windows Server 2008 SP2, Windows 7 SP1, Windows 8.1 allow remote attackers to execute arbitrary code via a crafted document, aka "Microsoft Office/WordPad Remote Code Execution Vulnerability w/Windows API."
CVSS:3.1/AV:L/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H
public PoCs found44 VexDay Proof
exploitdbVexDay Proofwww.exploit-db.com/exploits/41934exploitdbwww.exploit-db.com/exploits/42995unverifiedexploitdbwww.exploit-db.com/exploits/41894unverifiedgithubgithub.com/bhdresh/CVE-2017-0199724githubgithub.com/haibara3839/CVE-2017-0199-master16githubgithub.com/NotAwful/CVE-2017-0199-Fix13githubgithub.com/SyFi/cve-2017-019912githubgithub.com/Exploit-install/CVE-2017-01997githubgithub.com/jacobsoo/RTF-Cleaner3githubgithub.com/n1shant-sinha/CVE-2017-01992githubgithub.com/mzakyz666/PoC-CVE-2017-01992githubgithub.com/kn0wm4d/htattack2githubgithub.com/nicpenning/RTF-Cleaner2githubgithub.com/herbiezimmerman/2017-11-17-Maldoc-Using-CVE-2017-01992githubgithub.com/Sunqiz/CVE-2017-0199-reprofuction2githubgithub.com/Phantomlancer123/CVE-2017-01991githubgithub.com/ahmed-tarek22752/RCE-CVE-2017-0199-detection-analysis1githubgithub.com/viethdgit/CVE-2017-01990githubgithub.com/likekabin/CVE-2017-01990githubgithub.com/stealth-ronin/CVE-2017-0199-PY-KIT0githubgithub.com/BRAINIAC22/CVE-2017-01990githubgithub.com/TheCyberWatchers/CVE-2017-0199-v5.00githubgithub.com/kash-123/CVE-2017-01990githubgithub.com/BlackOclock/XLS-to-DBatLoader-or-GuLoader-for-AgentTesla-variant0githubgithub.com/ryhanson/CVE-2017-01990githubgithub.com/joke998/Cve-2017-01990githubgithub.com/joke998/Cve-2017-0199-0githubgithub.com/sUbc0ol/Microsoft-Word-CVE-2017-0199-0cve_referencewww.exploit-db.com/exploits/41934/unverifiedvulncheckvulncheck.com/xdb/970b6cfbc7fbunverifiedvulncheckvulncheck.com/xdb/0dd660910a33unverifiedvulncheckvulncheck.com/xdb/ed3b3ae95b69unverifiedvulncheckvulncheck.com/xdb/2924f4e487d3unverifiedvulncheckvulncheck.com/xdb/6318b2a065f3unverifiedcve_referencewww.exploit-db.com/exploits/41894/unverifiedvulncheckvulncheck.com/xdb/945fef08ea28unverifiedvulncheckvulncheck.com/xdb/aacae3861886unverifiedvulncheckvulncheck.com/xdb/9ef95e7ea4b5unverifiedvulncheckvulncheck.com/xdb/7c99d68f36e5unverifiedvulncheckvulncheck.com/xdb/532c2574ee56unverifiedvulncheckvulncheck.com/xdb/448adc18dbf6unverifiedvulncheckvulncheck.com/xdb/5b55113c6830unverifiedvulncheckvulncheck.com/xdb/306bb11d6afeunverifiedcve_referencewww.exploit-db.com/exploits/42995/unverified
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.