CVE-2017-0144
Corrija agora. Ela está sob exploração confirmada pelo CISA e tem exploit funcional público.
Apply updates per vendor instructions.
Resumo
CVE-2017-0144 é uma falha de execução remota de código no servidor SMBv1 do Windows, corrigida pelo boletim MS17-010 (março de 2017). É a vulnerabilidade por trás do exploit EternalBlue, vazado pelo grupo Shadow Brokers e atribuído ao arsenal da NSA (Equation Group), usado para propagar o ransomware WannaCry e depois o NotPetya. Está no catálogo KEV da CISA com nota explícita de uso em campanhas de ransomware — não é uma CVE teórica, é uma das mais exploradas da história recente.
Detalhamento técnico
A falha reside na implementação do servidor SMBv1 (driver srv.sys) no processamento de pacotes de transação, classificada como CWE-20 (validação inadequada de entrada). O fornecedor descreve o vetor genericamente como 'pacotes manipulados' enviados ao servidor SMB, sem detalhar publicamente a rotina exata — o texto oficial da Microsoft evita especificar mecanismo interno, como é padrão nos advisories de RCE em componentes de kernel.
A CVE-2017-0144 é distinta de outras falhas corrigidas no mesmo boletim (CVE-2017-0143, 0145, 0146, 0148), todas no mesmo subsistema SMBv1 mas em pontos de código diferentes — o exploit público EternalBlue, na prática, encadeia mais de uma dessas falhas para conseguir corrupção de memória controlada e execução de código em contexto de kernel (SYSTEM). Por isso ferramentas de exploração e módulos de detecção (como o auxiliary/scanner/smb/smb_ms_17_010 do Metasploit, referenciado no Exploit-DB) tratam o conjunto MS17-010 como um bloco só, testando a resposta do servidor a uma transação SMB manipulada (comando PeekNamedPipe sobre FID inválido) para inferir se o alvo está com o patch aplicado.
O atacante não controla dados de aplicação nem precisa de qualquer interação do usuário — o vetor é a pilha de rede SMB em si. O que ele controla é a estrutura dos pacotes SMBv1 enviados à porta 445/TCP, manipulando campos de transação para provocar corrupção de memória não paginada e desviar fluxo de execução para shellcode injetado.
Como é explorada
O vetor é puramente de rede: o atacante precisa apenas de conectividade TCP com a porta 445 do host alvo, onde o serviço SMBv1 esteja habilitado e escutando. A exploração histórica e amplamente documentada (WannaCry, NotPetya, e o próprio EternalBlue do Equation Group) não depende de credenciais válidas nem de interação do usuário — a superfície vulnerável está na camada de protocolo, antes de qualquer autenticação completa da sessão, o que explica a capacidade de auto-propagação em worm observada no WannaCry em maio de 2017.
Após a exploração bem-sucedida, o payload típico observado no mundo real não é a execução direta de código malicioso, mas a instalação do implante DOUBLEPULSAR — um backdoor em modo kernel que injeta DLLs arbitrárias na memória, também atribuído ao arsenal vazado pelo Shadow Brokers. É esse implante que carregou o ransomware WannaCry em milhares de máquinas em poucas horas, e depois serviu de vetor inicial para o NotPetya.
A complexidade técnica de desenvolver o exploit original foi alta (engenharia de heap grooming em kernel), mas isso deixou de ser barreira relevante: o código está público desde 2017 (Shadow Brokers, depois portado para Metasploit e diversos PoCs em Python/Exploit-DB), tornando a exploração trivial para qualquer atacante com acesso de rede ao alvo. O fato de estar no catálogo KEV com marcação de uso confirmado em ransomware reforça que não é risco hipotético.
Versões
Como se proteger
A correção do fornecedor é o boletim de segurança MS17-010, lançado em março de 2017, aplicável a Windows Vista SP2, Windows Server 2008 SP2/R2 SP1, Windows 7 SP1, Windows 8.1, Windows Server 2012/R2, Windows RT 8.1, Windows 10 (versões Gold, 1511, 1607) e Windows Server 2016. Diante da gravidade e do surto WannaCry, a Microsoft chegou a publicar patches extraordinários também para sistemas já fora de suporte (como Windows XP e Server 2003), fora do ciclo normal de atualizações — mas o número exato de KB varia por versão/idioma e deve ser confirmado na página oficial do boletim antes de aplicar.
O paliativo mais eficaz quando o patch não pode ser aplicado imediatamente é desabilitar completamente o SMBv1 no host (o protocolo é legado e a maioria dos ambientes modernos não depende dele para nada além de compatibilidade com sistemas muito antigos) e bloquear a porta 445/TCP nas bordas da rede e entre segmentos internos, já que a propagação tipo worm depende de alcance lateral irrestrito. Segmentação de rede e isolamento de dispositivos que não podem ser atualizados (comum em ambientes de OT/saúde, como no caso do Philips IntelliSpace Portal citado em advisory da CISA/ICS-CERT) reduz a superfície mesmo sem patch.
O que não funciona como mitigação real: apenas ter antivírus/EDR atualizado não impede a exploração, já que a falha ocorre em kernel antes de qualquer payload de usuário ser inspecionado por controles de endpoint tradicionais — o problema está no protocolo de rede, não em um arquivo malicioso. Firewalls de aplicação web (WAF) são irrelevantes aqui, pois não é vetor HTTP.
Como detectar
O sinal mais confiável é tráfego SMBv1 anômalo na porta 445/TCP, especialmente pacotes de transação (Trans2) malformados ou fora do padrão de uso legítimo — a maioria dos IDS/IPS e soluções de rede tem assinaturas dedicadas para MS17-010/EternalBlue desde 2017. A presença do implante DOUBLEPULSAR pode ser verificada por scripts públicos de detecção (referenciados em Packet Storm) que identificam a resposta característica do backdoor em memória.
Em ambientes que já aplicaram o patch, uma varredura com o módulo de detecção MS17-010 do Metasploit (auxiliary/scanner/smb/smb_ms_17_010) permite confirmar remotamente se o host está vulnerável, observando o código de erro retornado numa transação IPC$ manipulada — método não invasivo e amplamente usado por SOCs para inventário de exposição residual.