← back
CVE-2017-0143highunder attackransomware

CVE-2017-0143

100Vexday Risk Score

Patch now. It under exploitation confirmed by CISA and has a working public exploit.

ssvc Actcvss 8.8epss 93%
from disclosure to weapon31 days
Published on NVDMar 17
1st PoC+31d
metasploitMar 14
CISA KEV+1692d
exploitation probability
93%top 1% of all CVEs
observed exploitation
yesCISA + VulnCheck
23 public exploit(s)
Action required by CISAfederal deadline: 2022-05-03

Apply updates per vendor instructions.

Summary

CVE-2017-0143 é uma das falhas de execução remota de código no servidor SMBv1 do Windows corrigidas pelo boletim MS17-010, a mesma leva que originou o exploit EternalBlue e permitiu a propagação do ransomware WannaCry em maio de 2017. É explorável sem autenticação contra qualquer host que exponha o serviço SMBv1 na rede, o que a torna crítica em qualquer ambiente com máquinas legadas ou mal segmentadas.

Technical detail

A falha está no driver srv.sys, que implementa o servidor SMBv1 no kernel do Windows. O boletim da Microsoft (MS17-010) agrupa CVE-2017-0143 com CVE-2017-0144, -0145, -0146 e -0148 sob a categoria de corrupção de memória por tratamento incorreto de pacotes SMBv1 especialmente manipulados (CWE-20, validação de entrada inadequada); o CVE-2017-0143 é descrito pela Microsoft como uma vulnerabilidade distinta das demais, mas do mesmo tipo — processamento incorreto de pacotes que leva à corrupção de memória no kernel.

Análises técnicas públicas sobre a família MS17-010 (a exemplo do exploit para CVE-2017-0148, que documenta a rotina SrvOs2FeaToNt) mostram o padrão geral: o servidor SMBv1 aloca buffers com base em campos de tamanho controlados pelo pacote (por exemplo, contadores de FEA — File Extended Attributes) e realiza operações de memmove/cópia sem validar corretamente os limites entre o tamanho declarado e o tamanho real dos dados, resultando em escrita fora dos limites do buffer (out-of-bounds write) em memória de kernel.

O atacante controla o conteúdo e os campos de tamanho dos pacotes de transação SMB enviados ao servidor, o que permite manipular a corrupção de memória para redirecionar execução no contexto do kernel (SYSTEM). Não há exigência de credenciais válidas em configurações padrão — o Metasploit demonstra que é possível se conectar à árvore IPC$ autenticando como usuário nulo ("\") para sondar e, no caso das variantes exploráveis, disparar a corrupção.

A Microsoft não publicou detalhes de código-fonte da falha; a mecânica exata de CVE-2017-0143 especificamente (em contraste com as outras quatro do mesmo boletim) não é detalhada publicamente com a mesma profundidade que CVE-2017-0144 (usada pelo EternalBlue) — a atribuição de qual CVE corresponde a qual rotina interna do driver varia entre análises de terceiros.

How it’s exploited

O vetor é rede: o atacante envia pacotes SMBv1 manipulados diretamente à porta TCP 445 (ou 139) do host alvo, sem necessidade de autenticação válida em configuração padrão — o Metasploit demonstra a conexão como usuário nulo (\\) à IPC$. Não há pré-requisito de configuração não padrão: qualquer Windows com SMBv1 habilitado e acessível na rede é candidato. A complexidade de exploração é baixa a moderada — o WannaCry demonstrou exploração automatizada e auto-propagante em escala global usando exploits desta família (majoritariamente associados a CVE-2017-0144, mas MS17-010 cobre todo o grupo, incluindo 0143), e o exploit vazado do Equation Group (EternalBlue) tornou a técnica trivial de reutilizar.

Existe módulo Metasploit de detecção (smb_ms_17_010) que sonda o host via transação SMB na IPC$ e observa o código de erro retornado (STATUS_INSUFF_SERVER_RESOURCES indica não corrigido) — isso é usado tanto por defensores quanto por atacantes para varredura em massa antes de disparar o exploit real. Exploits públicos completos (ExploitDB 41987, ports do EternalBlue) demonstram execução de código no contexto de SYSTEM em Windows Server 2008 R2 x64 e versões relacionadas.

O resultado final da exploração bem-sucedida é execução arbitrária de código em contexto de kernel/SYSTEM, sem interação do usuário — controle total da máquina. A presença desta CVE no catálogo KEV da CISA confirma exploração ativa e contínua, e é historicamente associada a campanhas de ransomware (WannaCry, e posteriormente NotPetya reaproveitou a mesma técnica de propagação SMB).

Versions

Affected
Windows Vista SP2; Windows Server 2008 SP2 e R2 SP1; Windows 7 SP1; Windows 8.1; Windows Server 2012 Gold e R2; Windows RT 8.1; Windows 10 Gold, 1511 e 1607; Windows Server 2016 — todos com o serviço de servidor SMBv1 habilitado.
Fixed in
Versões corrigidas pelas atualizações de segurança do boletim MS17-010 da Microsoft, incluindo patches extraordinários emitidos posteriormente para sistemas fora do ciclo de suporte (Windows XP, Server 2003 e Vista). Os números exatos de KB por build não constam nas fontes consultadas nesta pesquisa — verificar o Security Guidance da Microsoft (portal.msrc.microsoft.com) para a KB correspondente à versão específica.

How to protect

A correção oficial é aplicar o boletim MS17-010 da Microsoft, que também recebeu patches extraordinários para sistemas fora de suporte (Windows XP, Server 2003, Vista) devido à gravidade e ao impacto do WannaCry — consulte o Security Guidance da Microsoft para a KB específica de cada versão de Windows listada (Vista SP2; Server 2008 SP2 e R2 SP1; 7 SP1; 8.1; Server 2012 e R2; RT 8.1; 10 Gold/1511/1607; Server 2016), pois os números de KB variam por build e não foram fornecidos nas fontes consultadas — não infira um KB específico sem confirmar na página oficial.

Se a atualização não for possível de imediato, o paliativo real é desabilitar o SMBv1 por completo (via PowerShell Remove-WindowsFeature/Disable-WindowsOptionalFeature ou chave de registro, conforme documentação da Microsoft) e bloquear as portas TCP 139/445 no perímetro e entre segmentos internos. Esse controle tem custo operacional: sistemas e aplicações legadas que dependem de SMBv1 (algumas impressoras, NAS antigos, sistemas industriais e de imagem médica, como mostram os advisories ICS-CERT e Siemens ligados a este CVE) podem parar de funcionar até serem migrados para SMBv2/v3.

Filtrar tráfego SMB apenas por firewall perimetral não é mitigação suficiente — a exploração ocorre predominantemente lateral, dentro da rede interna, entre estações e servidores; segmentação de rede interna e desabilitação de SMBv1 endpoint a endpoint é necessária. Superfície de exposição direta à internet na porta 445 deve ser tratada como incidente, não como risco tolerável.

How to detect

O sinal mais direto é a resposta a uma transação SMB manipulada na IPC$: hosts não corrigidos retornam STATUS_INSUFF_SERVER_RESOURCES ao pacote de sondagem (técnica usada pelo módulo auxiliar smb_ms_17_010 do Metasploit), enquanto hosts corrigidos retornam STATUS_ACCESS_DENIED ou STATUS_INVALID_HANDLE — essa mesma sondagem pode indicar reconhecimento por um atacante antes do ataque real. Em nível de rede, monitorar conexões SMBv1 anômalas na porta 445/139 vindas de hosts que não deveriam falar SMB, especialmente tentativas de logon nulo (usuário "\") seguidas de conexão à árvore IPC$, seguidas de pacotes de transação malformados ou de tamanho incomum. Não há um IOC de payload único e estável, porque exploits desta família (incluindo variantes do EternalBlue) evoluíram e foram reempacotados por múltiplos atores — ausência de assinatura confiável e universal é a realidade prática; a defesa mais confiável é verificar exposição e status de patch, não tentar detectar a exploração no tráfego.

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.
The SMBv1 server in Microsoft Windows Vista SP2; Windows Server 2008 SP2 and R2 SP1; Windows 7 SP1; Windows 8.1; Windows Server 2012 Gold and R2; Windows RT 8.1; and Windows 10 Gold, 1511, and 1607; and Windows Server 2016 allows remote attackers to execute arbitrary code via crafted packets, aka "Windows SMB Remote Code Execution Vulnerability." This vulnerability is different from those described in CVE-2017-0144, CVE-2017-0145, CVE-2017-0146, and CVE-2017-0148.
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
⚠ Public resources, to assess the exposure of systems you control or are authorized to test. Test only with authorization.