Microsoft Windows Support Diagnostic Tool (MSDT) Remote Code Execution Vulnerability
Prioritize patching. It under exploitation confirmed by CISA.
Apply updates per vendor instructions.
Summary
Falha de execução remota de código no Microsoft Support Diagnostic Tool (MSDT) do Windows, explorada por meio de um arquivo de diagnóstico malicioso (.diagcab) que a vítima precisa abrir. Ficou conhecida na comunidade de segurança como 'DogWalk' e é frequentemente confundida com a Follina (CVE-2022-30190), mas o vetor técnico é diferente: aqui o problema é um path traversal na hora de salvar o arquivo de diagnóstico em cache, não uma injeção via protocolo ms-msdt em documentos Office. Entrou no catálogo KEV da CISA no mesmo dia da publicação, com prazo de correção de 30/08/2022, confirmando exploração ativa.
Technical detail
O MSDT processa pacotes de diagnóstico (.diagcab) que contêm, entre outros arquivos, um config XML especificando o nome do executável de resultado da coleta (result file). A falha está em como o Windows sanitiza esse nome de arquivo antes de gravá-lo: um pacote malicioso pode especificar um caminho com sequências de path traversal (ex.: subir diretórios com '..\'), fazendo o MSDT grava um arquivo controlado pelo atacante fora do diretório de cache temporário esperado e em um local arbitrário do sistema de arquivos — por exemplo, na pasta de inicialização (Startup) do usuário.
How it’s exploited
O vetor prático é entrega de um arquivo .diagcab (ou um .zip contendo esse arquivo, para escapar de filtros de anexo de e-mail que bloqueiam a extensão diretamente) via e-mail, link de download ou compartilhamento de rede. A exploração exige interação do usuário: ele precisa baixar e abrir o arquivo de diagnóstico — não há execução automática ao simples visualizar ou pré-visualizar. O CVSS reportado (AV:L, UI:R) reflete exatamente isso: o vetor de ataque é tratado como local porque a execução do payload depende de uma ação explícita da vítima no arquivo já presente no disco, mesmo que a entrega inicial seja remota (e-mail, web).
O fornecedor confirmou apenas que a vulnerabilidade 'existe quando o MSDT é chamado usando o protocolo URL a partir de uma aplicação chamadora' — descrição genérica que não detalha o mecanismo de path traversal; essa mecânica foi documentada por pesquisadores externos que reencontraram e testaram a falha (originalmente reportada anos antes e inicialmente não tratada como vulnerabilidade de segurança pela Microsoft, até ser revisitada após a repercussão da Follina em 2022). O resultado da exploração é execução de código arbitrário com os privilégios do usuário que abriu o arquivo, tipicamente obtido por persistência via gravação na pasta de inicialização (o payload roda no próximo login) em vez de execução imediata.
Versions
How to protect
A correção definitiva é aplicar as atualizações de segurança de agosto de 2022 da Microsoft para a versão de Windows em uso — a CISA orienta 'aplicar atualizações conforme instruções do fornecedor', sem especificar KB por build nesta entrada. Consulte o advisory do MSRC para o link de download exato correspondente à sua versão de Windows.
Se a atualização não puder ser aplicada de imediato, os paliativos reais envolvem reduzir a superfície de ataque do MSDT: bloquear o recebimento de arquivos com extensão .diagcab (e .diagpkg/.diagcfg) em gateways de e-mail e proxies web, e treinar/alertar usuários sobre não abrir arquivos de diagnóstico recebidos de fontes externas. Restringir ou desabilitar a execução do MSDT via política de grupo/AppLocker também reduz o risco, ao custo de perder a funcionalidade de diagnóstico automatizado da Microsoft nesse endpoint. Bloquear apenas a extensão .diagcab não é suficiente sozinho, já que o arquivo pode ser distribuído compactado em .zip para escapar de filtros simples de anexo.
How to detect
Procure por arquivos .diagcab, .diagpkg ou .diagcfg recebidos por e-mail ou download, especialmente dentro de arquivos .zip, vindos de remetentes externos ou não corporativos. Em endpoints, monitore a criação de novos arquivos executáveis na pasta de inicialização (Startup) do usuário logo após a execução de msdt.exe, e revise logs de execução de processos para invocações de MSDT com parâmetros ou pacotes de diagnóstico fora do fluxo normal de suporte técnico (que costuma ser iniciado pelo próprio usuário via painel de solução de problemas, não por um arquivo externo). Não há assinatura de rede confiável, já que a entrega pode ocorrer por qualquer canal de transferência de arquivo e a execução depende de ação local do usuário.