CVE-2017-7269
Corrija agora. Ela está sob exploração confirmada pelo CISA, tem exploit funcional público e 1 grupo(s) de ameaça a utilizam.
Grupos conhecidos por explorar esta vulnerabilidade (atribuição MITRE ATT&CK).
Apply updates per vendor instructions.
Resumo
Buffer overflow na função ScStoragePathFromUrl do módulo WebDAV do IIS 6.0, explorável remotamente e sem autenticação através de uma requisição PROPFIND com um cabeçalho 'If: <http://' anormalmente longo. Afeta exclusivamente Windows Server 2003 R2 com a extensão WebDAV habilitada — um SO fora de suporte estendido desde julho de 2015, o que significa que a base de instalação legítima e patcheável é praticamente zero, mas os sistemas remanescentes (embarcados, industriais, esquecidos) ficam permanentemente expostos. Importa porque tem exploração confirmada em massa desde 2016, PoC pública, módulo Metasploit e presença no catálogo KEV da CISA.
Detalhamento técnico
A falha (CWE-119, escrita/leitura fora dos limites de um buffer) está na função ScStoragePathFromUrl, usada pela extensão WebDAV do IIS 6.0 para converter uma URL em um caminho de armazenamento interno. O parser processa o valor do cabeçalho HTTP 'If:' de uma requisição PROPFIND esperando um formato como ''; quando o valor após 'If: <http://' é excessivamente longo, o código copia esses dados para um buffer de tamanho fixo sem validar o comprimento antes da cópia, corrompendo memória adjacente na pilha.
A função é invocada duas vezes durante o processamento da mesma requisição, o que o pesquisador original (Zhiniang Peng, com Chen Wu, da South China University of Technology) e implementações públicas exploram para construir uma cadeia ROP em múltiplos estágios, contornando DEP/ASLR sem precisar de um único overflow gigante. O atacante controla integralmente o conteúdo do cabeçalho 'If:' — comprimento, bytes e, por consequência, o fluxo de execução sequestrado.
Como o corpo do overflow precisa sobreviver ao parsing de texto HTTP e ao decodificador da função vulnerável, o shellcode funcional exige encoding alfanumérico (visto nos PoCs públicos como sequências de bytes multibyte estilo UTF-8), o que aumenta o tamanho da carga mas não a dificuldade de exploração de forma relevante.
O processo IIS 6.0/w3wp.exe no Windows Server 2003 tipicamente corre com privilégios elevados (SYSTEM em muitas configurações padrão da época), então um overflow bem-sucedido tende a resultar em execução de código com privilégios altos na máquina, não apenas no contexto de um usuário limitado.
Como é explorada
Pré-requisito real, e o ponto que a nota do CVSS 9.8 esconde: o servidor precisa ser IIS 6.0 em Windows Server 2003 R2 com a extensão de serviço WebDAV habilitada — não é o padrão em toda instalação de IIS 6, mas era comum em ambientes que expunham compartilhamentos via WebDAV. Não exige autenticação nem interação do usuário; basta acesso de rede à porta HTTP/HTTPS do serviço.
O vetor é uma única requisição PROPFIND HTTP contendo o cabeçalho malicioso 'If: <http://' seguido de um payload longo. Isso a torna trivialmente automatizável e explica a exploração em massa: existem PoC pública (Exploit-DB #41738, escrita pelos próprios descobridores), módulo Metasploit (iis_webdav_scstoragepathfromurl) e uma reimplementação em Python chamada ExplodingCan, que replica um exploit atribuído ao arsenal da NSA vazado posteriormente pelo grupo Shadow Brokers — coincidência (ou não) relevante, já que a exploração 'in the wild' relatada remonta a julho/agosto de 2016, antes da divulgação pública.
O resultado final, quando bem-sucedido, é execução de código arbitrário no contexto do processo do IIS, geralmente equivalente a comprometimento total do host. Não há relato de exploração parcial ou de negação de serviço apenas — os writeups descrevem RCE completo (ex.: lançamento de calc.exe como prova de conceito, substituível por qualquer payload).
Versões
Como se proteger
Não há confirmação de uma atualização de segurança oficial da Microsoft cobrindo especificamente esta CVE para Windows Server 2003 R2 — o produto está fora do ciclo de suporte estendido desde julho de 2015. A única correção documentada nas fontes consultadas é um micropatch de terceiros publicado pela 0patch pouco depois da divulgação pública em 2017, tratado pelos próprios autores como remediação para uma vulnerabilidade que o fornecedor não vai mais corrigir oficialmente ('Immortal CVE'). Não foi possível confirmar nesta pesquisa se o KB3197835 referenciado corresponde a uma correção desta falha específica ou a outra atualização emergencial da mesma época para Windows XP/Server 2003; trate essa referência com cautela até confirmação direta no boletim.
O controle compensatório real e independente de fornecedor é desabilitar ou remover a extensão WebDAV do IIS 6.0 (via IIS Manager / ISAPI Filters, removendo o mapeamento do WebDAV) em qualquer servidor 2003 R2 ainda em produção — isso elimina o vetor por completo, já que a função vulnerável só é alcançável através dessa extensão. Bloquear ou inspecionar requisições PROPFIND com cabeçalho 'If:' anormalmente longo em um proxy/WAF na frente do servidor reduz a superfície, mas não é confiável como controle único.
O mito a descartar: atualizar apenas o sistema operacional para um service pack ou hotfix genérico do Windows Server 2003 não corrige a falha — ela está no módulo WebDAV do IIS 6.0, não no kernel. A mitigação de fato eficaz e permanente é sair do Windows Server 2003/IIS 6.0, que não recebe mais suporte de segurança do fornecedor.
Como detectar
Em logs do IIS (W3C extended logging), procurar requisições PROPFIND cujo cabeçalho 'If:' começa com '<http://' e tem comprimento muito acima do normal, especialmente contendo sequências de bytes altos/multibyte (padrão de shellcode codificado em alfanumérico/UTF-8-like observado nos PoCs públicos). Em nível de rede, IDS/IPS com assinaturas para PROPFIND com cabeçalho If oversized na porta HTTP/HTTPS do servidor WebDAV são o sinal mais confiável disponível; não há indicador de comportamento pós-exploração único, já que o resultado é execução arbitrária de código, então a detecção de payloads subsequentes depende do que o atacante executa a seguir (novos processos, conexões de saída, criação de contas).