← voltar
CVE-2020-0688highsob ataqueransomwareCWE-287

CVE-2020-0688

100Vexday Risk Score

Corrija agora. Ela está sob exploração confirmada pelo CISA, tem exploit funcional público e 3 grupo(s) de ameaça a utilizam.

ssvc Actcvss 8.8epss 100%
da publicação à arma14 dias
Publicada no NVD11 de fev.
1ª PoC+14d
metasploit11 de fev.
CISA KEV+631d
probabilidade de exploração
100%top 1% das CVEs
exploração observada
simCISA + VulnCheck
3 grupo(s)46 exploit(s) público(s)
Quem explora3

Grupos conhecidos por explorar esta vulnerabilidade (atribuição MITRE ATT&CK).

Ação exigida pela CISAprazo federal: 2022-05-03

Apply updates per vendor instructions.

Resumo

Falha de deserialização no Exchange Control Panel (ECP) do Microsoft Exchange Server que permite execução remota de código como SYSTEM. Exige autenticação — qualquer conta de caixa de correio válida, mesmo sem privilégios administrativos — o que reduz o requisito de acesso, mas ainda assim é considerada crítica porque compromete o servidor inteiro, não apenas a caixa do usuário autenticado. Está no catálogo KEV da CISA com exploração confirmada e possui módulo Metasploit e PoC públicos desde fevereiro de 2020.

Detalhamento técnico

O problema está no mecanismo de ViewState do ASP.NET usado pela aplicação web ECP do Exchange. Segundo a Zero Day Initiative (ZDI-20-258), o produto falha em gerar uma chave criptográfica única durante a instalação — a mesma chave (ou um valor derivado de forma previsível) é usada para assinar/validar o ViewState em instalações diferentes. Isso quebra a garantia de integridade que o MAC do ViewState deveria oferecer.

Como a chave de validação é previsível, um atacante consegue forjar um ViewState malicioso que passa a verificação de integridade do ASP.NET. O ASP.NET então desserializa esse ViewState — que contém dados controlados pelo atacante — instanciando objetos arbitrários. Esse padrão é uma deserialização de dados não confiáveis clássica (CWE-502), viabilizada por uma chave criptográfica fixa/previsível (CWE-321/CWE-330). A CISA classifica a falha sob CWE-287 (Improper Authentication), enfatizando que a raiz é a ausência de unicidade da chave gerada no install, mas o impacto prático é execução de código via desserialização.

O pool de aplicação do ECP no IIS roda com privilégios de SYSTEM, então qualquer código desserializado e executado nesse contexto herda esse nível de acesso — daí o CVSS C:H/I:H/A:H mesmo com PR:L (privilégio baixo) no vetor.

Como é explorada

A exploração exige autenticação: o atacante precisa de credenciais válidas de uma conta com caixa de correio no Exchange (não precisa ser administrador) e acesso de rede ao endpoint ECP, normalmente exposto junto com o OWA em implantações com Exchange voltado à internet. Não há interação de usuário adicional (UI:N) além do próprio atacante autenticado enviando a requisição.

Com credenciais em mãos, o atacante monta uma requisição ao ECP contendo um ViewState malicioso assinado com a chave previsível/fixa da instalação, forçando o ASP.NET a desserializar um payload que resulta em execução de comando no contexto do processo do app pool — SYSTEM. Isso dá controle total do servidor Exchange, não apenas da conta usada para autenticar, o que é o salto de privilégio real da falha.

Há PoC pública, módulo Metasploit e a vulnerabilidade está no catálogo KEV da CISA, confirmando exploração ativa em campanhas reais — inclusive combinada com técnicas de obtenção de credenciais de baixo privilégio (phishing, spraying) como passo prévio, já que a barreira de entrada é justamente ter qualquer conta válida.

Versões

Afetadas
Microsoft Exchange Server 2010 Service Pack 3 (até Update Rollup 30); Exchange Server 2013 (builds anteriores à atualização de fevereiro/2020); Exchange Server 2016 Cumulative Update 14 e Cumulative Update 15; Exchange Server 2019 Cumulative Update 3 e Cumulative Update 4.
Corrigidas em
As atualizações de segurança de fevereiro de 2020 da Microsoft para cada uma das linhas afetadas (Exchange 2010 SP3, 2013, 2016 CU14/CU15 e 2019 CU3/CU4) corrigem a falha; a Microsoft não publicou números de build específicos nas fontes consultadas além dessa referência às CUs/RUs afetadas — confirme o KB exato no advisory oficial da Microsoft (MSRC) antes de considerar o ambiente corrigido.

Como se proteger

A correção é aplicar as atualizações de segurança de fevereiro de 2020 da Microsoft para a linha específica de Exchange em uso (2010 SP3, 2013, 2016 CU14/CU15, 2019 CU3/CU4 conforme listado no advisory). Não há paliativo equivalente a patch: a raiz do problema é a chave de validação gerada de forma insegura no install, e não existe flag de configuração documentada pela Microsoft que regenere essa chave corretamente sem aplicar a atualização.

Como mitigação compensatória enquanto o patch não é aplicado, restringir o acesso ao ECP (e ao OWA/ECP combinados) apenas a redes confiáveis ou VPN reduz a superfície de exposição, já que a maioria dos cenários de exploração observados depende de alcançar o endpoint remotamente pela internet. Isso não corrige a falha, apenas limita quem pode tentar.

MFA e políticas de senha forte não neutralizam esta vulnerabilidade — o pré-requisito é qualquer conta autenticada válida com caixa de correio, e uma vez a sessão estabelecida a exploração ocorre no nível da aplicação web, não no processo de login. Segmentar contas por privilégio também não ajuda, pois PR:L basta.

Como detectar

Requisições autenticadas ao endpoint /ecp/ com parâmetros __VIEWSTATE anormalmente grandes ou malformados, vindas de contas com histórico de uso atípico do ECP, são um indício. Em nível de sistema, o processo do app pool do ECP (w3wp.exe rodando como MSExchangeECPAppPool) gerando processos filho inesperados (cmd.exe, powershell.exe, csc.exe) é um sinal forte de exploração bem-sucedida, já que a execução de código ocorre no contexto desse worker process. Não há assinatura de rede única e confiável documentada nas fontes consultadas — a detecção depende de correlacionar logs de IIS/ECP com telemetria de processo no host.

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 Exchange software when the software fails to properly handle objects in memory, aka 'Microsoft Exchange Memory Corruption Vulnerability'.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
PoCs públicas encontradas46 VexDay Proof
exploitdbVexDay Proofwww.exploit-db.com/exploits/48168exploitdbwww.exploit-db.com/exploits/48153não verificadogithubgithub.com/zcgonvh/CVE-2020-0688353githubgithub.com/Ridter/cve-2020-0688327githubgithub.com/random-robbie/cve-2020-0688164githubgithub.com/Yt1g3r/CVE-2020-0688_EXP144githubgithub.com/Jumbo-WJB/CVE-2020-068866githubgithub.com/onSec-fr/CVE-2020-0688-Scanner37githubgithub.com/w4fz5uck5/cve-2020-0688-webshell-upload-technique23githubgithub.com/MrTiz/CVE-2020-068821githubgithub.com/W01fh4cker/CVE-2020-0688-GUI16githubgithub.com/zyn3rgy/ecp_slap11githubgithub.com/ravinacademy/CVE-2020-068811githubgithub.com/youncyb/CVE-2020-068810githubgithub.com/cert-lv/CVE-2020-06888githubgithub.com/justin-p/PSForgot2kEyXCHANGE5githubgithub.com/murataydemir/CVE-2020-06884githubgithub.com/ktpdpro/CVE-2020-06883githubgithub.com/1337-llama/CVE-2020-0688-Python32githubgithub.com/mahyarx/Exploit_CVE-2020-06882githubgithub.com/righter83/CVE-2020-06882githubgithub.com/SLSteff/CVE-2020-0688-Scanner2githubgithub.com/ann0906/proxylogon1githubgithub.com/chudamax/CVE-2020-0688-Exchange20101githubgithub.com/truongtn/cve-2020-06881githubgithub.com/tvdat20004/CVE-2020-06880githubgithub.com/7heKnight/CVE-2020-06880githubgithub.com/iamwajd/Cyber-Attack-Analysis0vulncheckvulncheck.com/xdb/05c78c55c273não verificadovulncheckvulncheck.com/xdb/f58d70470909não verificadovulncheckvulncheck.com/xdb/ac5f11e6a30dnão verificadovulncheckvulncheck.com/xdb/96c707bb39f5não verificadovulncheckvulncheck.com/xdb/1fe8a75efd31não verificadovulncheckvulncheck.com/xdb/ae5d257ebb54não verificadovulncheckvulncheck.com/xdb/e502b8576da7não verificadovulncheckvulncheck.com/xdb/ab48dae2440anão verificadovulncheckvulncheck.com/xdb/8a20e8eac65dnão verificadovulncheckvulncheck.com/xdb/42b75e809382não verificadovulncheckvulncheck.com/xdb/ed6eb904124bnão verificadovulncheckvulncheck.com/xdb/7f793deb1114não verificadovulncheckvulncheck.com/xdb/c2dc4dbb6f66não verificadovulncheckvulncheck.com/xdb/730fc9157ab0não verificadocve_referencepacketstormsecurity.com/files/156620/Exchange-Control-Panel-Viewstate-Deserialization.htmlnão verificadocve_referencepacketstormsecurity.com/files/156592/Microsoft-Exchange-2019-15.2.221.12-Remote-Code-Execution.htmlnão verificadovulncheckvulncheck.com/xdb/7937e058bdf2não verificadovulncheckvulncheck.com/xdb/868234a5c9b7não verificado
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.