
ToolShell scanner - CVE-2025-53770 e informações de detecção
100% montado às pressas com todos os tweets que circulam com payloads e diferentes ataques, portanto, vem sem qualquer garantia, etc. O scanner foi projetado para identificar instâncias vulneráveis e possui uma configuração com usos de exploração conhecidos em ambientes reais; é projetado principalmente para uso defensivo, para identificar instâncias vulneráveis e permitir que você aplique as correções.
Este scanner realiza verificações automatizadas em implantações do SharePoint:
SP2013: WEBSER~1\15\ vs SP2016+: WEBSER~1\16\)git clone https://github.com/ZephrFish/CVE-2025-53770-Scanner
cd CVE-2025-53770-Scanner
pip install -r requirements.txt
Crie um arquivo de texto com os hosts alvo (um por linha):
sharepoint1.example.com
sharepoint2.example.net
internal-sp.company.local
Execute o scanner:
python3 scanner.py -i hosts.txt
python3 scanner.py -i hosts.txt -o results.json -l scan.log -t 20 -v
| Opção | Descrição | Padrão |
|---|---|---|
-i, --input | Caminho para o arquivo de lista de hosts (obrigatório) | - |
-o, --output | Arquivo de saída para os resultados (.json, .csv, .txt) | Nenhum |
-l, --logfile | Caminho do arquivo de log para registro detalhado | Nenhum |
-t, --threads | Número de threads concorrentes | 10 |
-v, --verbose | Habilita saída e registro detalhados | Falso |
-o results.json)[
{
"host": "sharepoint.example.com",
"url": "https://sharepoint.example.com/_layouts/15/ToolPane.aspx?DisplayMode=Edit&a=/ToolPane.aspx",
"scan_time": "2025-07-21T10:30:00.123456",
"vulnerable": true,
"status_code": 200,
"response_size": 15432,
"error": null,
"response_time": 1.23
}
]
-o results.csv)Fornece dados tabulares adequados para análise em planilhas, com colunas para todas as métricas da varredura.
-o results.txt)Formato legível por humanos com status de vulnerabilidade e detalhes da varredura.
CVE-2025-53770 tem como alvo uma vulnerabilidade de desserialização no componente ExcelDataSet do SharePoint que tem sido ativamente explorada em ambientes reais. O scanner detecta:
/_layouts/15/ToolPane.aspx?DisplayMode=Edit&a=/ToolPane.aspx com payload serializadoValidationKey|Validation|DecryptionKey|Decryption|CompatibilityMode
Example: [128-256 hex chars]|HMACSHA256|[48-96 hex chars]|AES|Framework45
spinstall0.aspx para acesso persistente e extração de chavesMozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0/_layouts/SignOut.aspxO scanner analisa as respostas em busca de:
$ python3 scanner.py -i corporate-sharepoint.txt -o vuln-results.json -l scan.log -v
Starting scan of 150 hosts with 10 threads...
Target CVE: CVE-2025-53770 (SharePoint ExcelDataSet deserialization)
Logging to: scan.log
Results will be saved to: vuln-results.json
[+] VULNERABLE [CRITICAL]: sp-prod-01.acme.local
[-] Not vulnerable: sp-dev-02.acme.local
[!] ERROR: offline-sp.acme.local - Connection timeout
[+] VULNERABLE [HIGH]: sp-legacy.acme.local
Progress: 50/150 (33.3%)
Progress: 100/150 (66.7%)
Progress: 150/150 (100.0%)
============================================================
SCAN COMPLETE
============================================================
Total hosts scanned: 150
Vulnerable hosts: 3
Success rate: 97.3%
VULNERABLE HOSTS (CVE-2025-53770):
CRITICAL - MACHINE KEY EXTRACTED (1 hosts):
• sp-prod-01.acme.local (Response time: 0.85s, Version: 2016+)
WARNING: IMMEDIATE ACTION REQUIRED: Machine keys compromised
HIGH CONFIDENCE (1 hosts):
• sp-legacy.acme.local (Response time: 1.23s, Version: 2013-2016)
LOW CONFIDENCE (1 hosts):
• sp-archive.acme.local (Response time: 2.10s, Version: Unknown)
Detailed results saved to: vuln-results.json
Habilite o registro detalhado (-v) e arquivos de log (-l) para uma solução de problemas detalhada:
tail -f scan.log
O scanner incorpora detecção para padrões de exploração confirmados observados em ataques ativos:
POST /_layouts/15/ToolPane.aspx?DisplayMode=Edit&a=/ToolPane.aspx HTTP/1.1
Host: target.domain.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:120.0) Gecko/20100101 Firefox/120.0
Content-Length: 7699
Content-Type: application/x-www-form-urlencoded
Referer: /_layouts/SignOut.aspx
Connection: close
MSOTlPn_Uri=http%3A%2F%2F{{host}}%2F_controltemplates%2F15%2FAclEditor.ascx
&MSOTlPn_DWP=[ExcelDataSet payload with CompressedDataTable containing serialized exploit]