Windows Server Update Service (WSUS) Remote Code Execution Vulnerability
Patch now. It under exploitation confirmed by CISA and has a working public exploit.
Apply mitigations per vendor instructions, follow applicable BOD 22-01 guidance for cloud services, or discontinue use of the product if mitigations are unavailable.
Summary
Falha de desserialização insegura (CWE-502) no serviço WSUS do Windows Server, que permite execução remota de código com privilégios SYSTEM sem autenticação e sem interação do usuário. Afeta apenas servidores que têm a role "WSUS Server" habilitada — recurso que não vem ativado por padrão — o que reduz a superfície real de exposição, mas onde presente é crítica: já há exploração ativa confirmada e a CISA colocou no catálogo KEV com prazo de correção para agências federais dos EUA.
Technical detail
A falha está no endpoint GetCookie() do serviço de autorização do WSUS (Microsoft.UpdateServices.Internal.Authorization.AuthorizationManager). O cliente envia um AuthorizationCookie dentro de uma requisição SOAP; o servidor decripta esse cookie com AES-128-CBC via EncryptionHelper.DecryptData() e, se o tipo declarado não for UnencryptedCookieData, passa os bytes decriptados diretamente para BinaryFormatter.Deserialize() sem validar o tipo antes da desserialização. BinaryFormatter é conhecido por não oferecer nenhuma barreira contra desserialização de gadgets arbitrários — qualquer objeto .NET serializável presente no GAC ou nos assemblies carregados pode ser instanciado, incluindo cadeias que acionam execução de comandos do sistema operacional.
O pré-requisito para o atacante controlar o payload é conhecer (ou derivar) a chave AES usada pelo serviço para decriptar o cookie. A PoC pública divulgada pela HawkTrace Security usa uma chave hexadecimal fixa ("877C14E433638145AD21BD0C17393071") citada no código de exploração, o que indica que a chave de criptografia do cookie não é segredo suficientemente protegido — ela é derivada de forma previsível ou está embutida de modo recuperável no binário do WSUS, eliminando a necessidade de qualquer segredo específico do ambiente.
A cadeia de chamadas documentada pela HawkTrace é: Client.GetCookie() → ClientImplementation.GetCookie() → AuthorizationManager.GetCookie() → AuthorizationManager.CrackAuthorizationCookies() → GenericAuthorizationPlugIn.CrackAuthorizationCookie() → EncryptionHelper.DecryptData(). O atacante controla integralmente o payload serializado (o `array` decriptado passado ao BinaryFormatter), o que é suficiente para RCE via gadgets clássicos de desserialização .NET (ex.: DelegateSerializationHolder apontando para Process.Start).
How it’s exploited
O vetor é uma requisição SOAP não autenticada contra o serviço WSUS, tipicamente nas portas padrão 8530/TCP (HTTP) e 8531/TCP (HTTPS/SSL). Não há necessidade de credenciais, de interação do usuário, nem de configuração não padrão além de ter a role WSUS Server ativada e o serviço exposto na rede — condição que o CVSS (AV:N/AC:L/PR:N/UI:N) já reflete. A complexidade de exploração é baixa: basta montar um AuthorizationCookie com o payload de desserialização malicioso, criptografá-lo com a chave AES conhecida/recuperável e enviá-lo ao endpoint GetCookie. O resultado final é execução de código arbitrário com privilégios SYSTEM no servidor WSUS.
Há PoC pública funcional (HawkTrace Security) e módulo Metasploit disponíveis, o que baixou drasticamente a barreira técnica para exploração em massa. A vulnerabilidade foi classificada por fontes de imprensa como potencialmente "wormable" porque servidores WSUS que atuam como fonte de atualização para outros servidores WSUS dentro de uma organização podem propagar comprometimento lateral entre eles.
Exploração ativa foi confirmada por múltiplas empresas de segurança: a Huntress detectou ataques no mesmo dia em que os patches out-of-band foram lançados, visando instâncias com as portas padrão expostas na internet; a Eye Security observou varreduras e tentativas de exploração no dia seguinte, incluindo pelo menos um cliente comprometido usando uma variante de exploit diferente da divulgada pela HawkTrace. A Shadowserver rastreava mais de 2.800 instâncias WSUS com portas padrão expostas publicamente. A Microsoft classificou a falha como "Exploitation More Likely" mas, segundo a BleepingComputer, não havia atualizado formalmente o advisory para confirmar exploração ativa — a confirmação vem de terceiros e do KEV da CISA.
Versions
How to protect
A correção definitiva é aplicar as atualizações de segurança fora de banda (out-of-band) que a Microsoft lançou especificamente para esta CVE, cobrindo todas as versões afetadas (Windows Server 2012, 2012 R2, 2016 e 2019, incluindo instalações Server Core). Os números de build/KB exatos por versão não constavam nas fontes consultadas — confirme o KB específico de cada versão no MSRC Update Guide antes de considerar o ambiente corrigido. Após instalar a atualização, a CISA recomenda reiniciar o servidor WSUS para completar a mitigação.
Para quem não pode aplicar o patch imediatamente, o paliativo real e recomendado tanto pela Microsoft quanto pela CISA é desabilitar a role WSUS Server no servidor vulnerável, removendo completamente o vetor de ataque. O custo é a perda temporária da distribuição centralizada de atualizações via WSUS — aceitável como mitigação de emergência, mas não é solução permanente.
Restringir acesso às portas 8530/8531 via firewall (bloqueando exposição direta à internet e limitando a rede interna) reduz a superfície de ataque mas não elimina o risco de movimento lateral dentro da rede corporativa, já que o CVSS não exige acesso privilegiado nem posição de rede especial. Não há mitigação eficaz baseada em WAF genérico, pois o payload é uma requisição SOAP binária criptografada — assinaturas de rede específicas (IDS/IPS) para o formato do exploit publicado podem ajudar, mas variantes do exploit já foram observadas em ataques reais, então não há garantia de cobertura completa por assinatura.
How to detect
Monitore requisições SOAP dirigidas ao endpoint GetCookie do serviço WSUS nas portas 8530/TCP e 8531/TCP, especialmente cookies de autorização anômalos ou de tamanho/estrutura fora do padrão esperado pelo protocolo cliente-servidor legítimo do WSUS. No nível de host, procure processos filhos inesperados originados do processo do serviço WSUS (w3wp.exe do pool de aplicação WSUS ou WsusService), como cmd.exe, powershell.exe ou qualquer processo iniciado via System.Diagnostics.Process — a cadeia de exploração documentada usa exatamente esse mecanismo.
Não há assinatura de rede única e confiável publicada nas fontes consultadas, já que múltiplas variantes de exploit já foram observadas em ataques reais (a Eye Security relatou uma variante diferente da PoC original da HawkTrace). A ausência de sinal de exploração não deve ser interpretada como ausência de risco — a exposição de portas padrão do WSUS na internet (rastreada publicamente pela Shadowserver) é por si só indicador de risco elevado, independente de log de tentativa detectado.