
Scanner seguro para produção que detecta a exploração do CVE-2026-25177 (Colisão Unicode de SPN do AD) em Controladores de Domínio do Active Directory. Somente leitura.
Scanner seguro para produção que detecta a exploração de CVE-2026-25177 — a vulnerabilidade de Colisão Unicode em SPN do Active Directory (CVSS 8.8).
Esta vulnerabilidade permite que qualquer usuário autenticado com permissões de escrita em SPN eleve privilégios para SYSTEM ao injetar caracteres Unicode em Service Principal Names, contornando a validação de SPN duplicado do AD e causando emissão incorreta de tickets Kerberos.
read_only=True; nenhuma modificação é possível(servicePrincipalName=*), a mesma consulta leve usada por ferramentas integradas como setspn -Qpip install -r requirements.txt
# Em uma máquina ingressada no domínio — detecta automaticamente DC, domínio e nome de usuário
# Solicita a senha de forma segura (nunca exibida no terminal ou no histórico de comandos)
python detect_spn_abuse.py
# Detecção automática com relatório CSV e detecção de alterações recentes
python detect_spn_abuse.py --csv report.csv --days 7
# Especifique apenas o nome de usuário (detecta o restante automaticamente)
python detect_spn_abuse.py -u svc_scanner
# Totalmente manual
python detect_spn_abuse.py -dc dc01.corp.local -d corp.local -u scanner_svc
# Usar LDAPS (porta 636)
python detect_spn_abuse.py --use-ssl
Nota: Se você omitir -p, o script solicitará sua senha de forma segura — ela não aparecerá no seu terminal ou no histórico de comandos.
+==============================================================+
| CVE-2026-25177 - Detector de Colisão Unicode em SPN |
| Verificação somente leitura - segura para produção |
+==============================================================+
[+] Conectado via NTLM:389 (somente leitura)
[*] Verificando todas as contas com SPNs...
[+] Verificadas 247 contas, 1.042 SPNs
======================================================================
RESULTADOS DA VERIFICAÇÃO: 1 ocorrência(s)
CRÍTICO: 1 | ALTO: 0 | INFO: 0
======================================================================
[CRÍTICO] Ocorrência 1: SPN contém 1 caractere Unicode suspeito(s)
────────────────────────────────────────────────────────────
Conta: jsmith
DN: CN=jsmith,CN=Users,DC=corp,DC=local
SPN: HTTP/webserver.corp.local
SPN Hex: 48545450e2808b2f7765627365727665722e636f72702e6c6f63616c
Modificado: 2026-03-13 14:22:17+00:00
Posição 4: U+200B - Espaço de Largura Zero [invisível]
======================================================================
AÇÕES RECOMENDADAS:
1. Investigue imediatamente contas com ocorrências CRÍTICAS
2. Remova quaisquer SPNs que contenham caracteres Unicode
3. Verifique o Log de Eventos para eventos de modificação de SPN (ID do Evento 4742)
4. Revise as permissões de delegação (quem pode escrever SPNs)
5. Aplique o patch da Microsoft para CVE-2026-25177
Para verificar diariamente até que seus DCs sejam corrigidos, configure uma tarefa agendada (Windows) ou um job cron (Linux):
Windows (Agendador de Tarefas):
schtasks /create /tn "CVE-2026-25177 Scanner" /tr "python C:\path\to\detect_spn_abuse.py -dc dc01.corp.local -d corp.local -u scanner_svc -p 'password' --csv C:\logs\spn_scan.csv --days 1" /sc daily /st 06:00
Linux (cron):
0 6 * * * python3 /opt/detect_spn_abuse.py -dc dc01.corp.local -d corp.local -u scanner_svc -p 'password' --csv /var/log/spn_scan.csv --days 1
CVE-2026-25177 foi divulgada em 10 de março de 2026 (CVSS 8.8). Afeta todas as versões do Windows Server de 2012 a 2025. O ataque requer apenas credenciais padrão de usuário de domínio com permissões delegadas de escrita em SPN — uma configuração comum em ambientes corporativos.
A Microsoft lançou patches. Aplique-os imediatamente.
Licença MIT — livre para usar, modificar e distribuir. Consulte LICENSE.