← voltar
CVE-2017-0145highsob ataqueransomware

CVE-2017-0145

100Vexday Risk Score

Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.

ssvc Actcvss 8.8epss 90%
da publicação à arma31 dias
Publicada no NVD17 de mar.
1ª PoC+31d
metasploit14 de mar.
CISA KEV+1791d
probabilidade de exploração
90%top 1% das CVEs
exploração observada
simCISA + VulnCheck
8 exploit(s) público(s)
Ação exigida pela CISAprazo federal: 2022-08-10

Apply updates per vendor instructions.

Resumo

Falha de execução remota de código no servidor SMBv1 do Windows, explorável sem autenticação via pacotes manipulados na porta 445. É a vulnerabilidade que, junto com CVE-2017-0143, 0144, 0146 e 0148 (todas cobertas pelo boletim MS17-010), forma a base do exploit EternalBlue, usado nos ataques WannaCry e NotPetya em 2017 — por isso está no catálogo KEV da CISA com exploração ativa confirmada, apesar de já ter sete anos.

Detalhamento técnico

A falha reside na implementação do protocolo SMBv1 (Server Message Block versão 1) no driver srv.sys / srv2.sys do Windows, que processa requisições de transação SMB. O problema é classificado como validação de entrada inadequada (CWE-20): o servidor SMB não verifica corretamente o tamanho ou o conteúdo de campos em pacotes de transação criados sob medida, permitindo que um atacante corrompa memória do kernel e obtenha execução de código com privilégios de sistema.

A NVD trata CVE-2017-0145 como uma falha distinta de CVE-2017-0143, 0144, 0146 e 0148, mas na prática todas fazem parte do mesmo boletim MS17-010 e do mesmo conjunto de bugs no manuseio de transações SMBv1 (SrvOs2FeaToNt, SrvOs2FeaListToNt e funções relacionadas de conversão de FEA/FEA_LIST) que a NSA reuniu no exploit EternalBlue, vazado pelo grupo Shadow Brokers em abril de 2017. O atacante controla o conteúdo e o tamanho de campos dentro do pacote de transação SMB, o que é suficiente para desencadear a corrupção.

Depois da execução de código via EternalBlue, o vetor de ataque histórico instala o EternalBlue's payload companion conhecido como DoublePulsar, um implante que roda em modo kernel e serve como backdoor para carregar DLLs arbitrárias na memória — mecanismo documentado nas análises de resposta a incidentes referenciadas (Packet Storm) sobre neutralização e detecção do DoublePulsar.

Como é explorada

O vetor é de rede, sem necessidade de autenticação nem interação do usuário: basta acesso TCP à porta 445 (SMB) — em algumas configurações também 139 — de um host com SMBv1 habilitado e sem o patch MS17-010. Não há pré-condição de configuração não padrão relevante: SMBv1 vinha habilitado por padrão em todas as versões de Windows listadas antes de 2017, o que tornou o problema crítico em redes internas e, por um período, em hosts expostos diretamente à internet.

Na exploração real (WannaCry, maio de 2017, e NotPetya, junho de 2017), o EternalBlue foi usado tanto como vetor de entrada inicial em hosts expostos quanto, mais frequentemente, como mecanismo de movimento lateral dentro de redes já comprometidas, self-propagando via varredura de blocos de rede na porta 445. Após a corrupção de memória, o exploit tipicamente instalava o DoublePulsar para então carregar o payload final (ransomware, worm, etc.).

Há módulo Metasploit (auxiliary/scanner/smb/smb_ms_17_010, referenciado no Exploit-DB) que detecta se o host está vulnerável através de disclosure de informação (retorno STATUS_INSUFF_SERVER_RESOURCES em uma transação PeekNamedPipe contra IPC$, sem precisar de credenciais válidas), além de PoCs públicas de exploração completa. A complexidade técnica de construir o exploit é alta (requer conhecimento de heap grooming em kernel), mas como já existem ferramentas prontas e amplamente distribuídas desde 2017, a barreira de exploração prática é baixa.

Versões

Afetadas
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.
Corrigidas em
Corrigido pelas atualizações de segurança do boletim MS17-010 (14 de março de 2017), aplicáveis a todas as versões listadas como afetadas. Não há números de build específicos por edição disponíveis nas fontes consultadas.

Como se proteger

A correção oficial é o patch distribuído pela Microsoft no boletim MS17-010, publicado em 14 de março de 2017, cobrindo todas as versões listadas (Vista SP2; Server 2008 SP2 e R2 SP1; 7 SP1; 8.1; Server 2012 Gold e R2; RT 8.1; 10 Gold/1511/1607; Server 2016). Sistemas fora de suporte na época (Windows XP, Server 2003) receberam patch extraordinário fora do ciclo normal dado o risco de propagação self-replicante do worm. A entrada no catálogo KEV da CISA (adicionada em 2022, com prazo de correção 2022-08-10) reforça que ambientes ainda sem esse patch, sete anos depois, devem tratá-lo como prioridade máxima.

Se a atualização não puder ser aplicada imediatamente, o paliativo real é desabilitar o protocolo SMBv1 por completo (via configuração de recursos do Windows / Set-SmbServerConfiguration -EnableSMB1Protocol $false), já que SMBv2/v3 não são afetados por esta falha. Bloquear as portas 445 e 139 na borda da rede e entre segmentos internos reduz a superfície de ataque para movimento lateral, mas não corrige hosts vulneráveis expostos a segmentos onde o tráfego SMB é necessário.

O que não funciona como mitigação suficiente: apenas bloquear a porta 445 no firewall de perímetro não protege contra propagação lateral dentro da rede interna, que foi o vetor dominante no NotPetya. Antivírus e detecção de assinatura também não substituem o patch, pois variantes do exploit e do implante DoublePulsar evoluíram para evadir assinaturas estáticas.

Como detectar

Não existe assinatura confiável e definitiva no tráfego para distinguir com certeza uma tentativa de exploração de CVE-2017-0145 isoladamente, já que ela é explorada em conjunto com as demais falhas do MS17-010 dentro do mesmo pacote de transação SMB — o sinal mais prático é a presença de tráfego SMBv1 anômalo na porta 445/139, especialmente transações malformadas ou picos de conexões oriundas de hosts internos (comportamento típico de propagação tipo worm). Ferramentas de varredura como o módulo Metasploit smb_ms_17_010 identificam hosts vulneráveis via disclosure de erro (STATUS_INSUFF_SERVER_RESOURCES) em uma transação PeekNamedPipe contra o compartilhamento IPC$, sem exigir credenciais — o mesmo padrão de tráfego pode ser usado defensivamente para auditoria de exposição.

Após exploração bem-sucedida, o indicador mais forte é a presença do implante DoublePulsar em memória kernel, cuja detecção e neutralização foram documentadas publicamente (ver referências Packet Storm sobre DoublePulsar Payload Execution e Neutralization); scanners específicos para DoublePulsar (checagem de resposta a comandos multiplexados na porta 445) são mais confiáveis do que assinaturas de rede genéricas para SMBv1.

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.
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-0143, CVE-2017-0144, 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
⚠ Recursos públicos, para você avaliar a exposição de sistemas que controla ou está autorizado a testar. Teste apenas com autorização.