NT-2026.10.02 DOSSIÊ RED TEAM
ADSCAN E ADPULSE: AUTOMATIZANDO PENTEST DE ACTIVE DIRECTORY
ADScan automatiza enumeração e ataque em AD via DNS, LDAP, SMB, Kerberos. ADPulse faz auditoria read-only com relatórios HTML/JSON. Ambos reduzem trabalho repetitivo em pentests de AD.

Introdução
Pentests de Active Directory frequentemente começam com os mesmos checks repetitivos: shares SMB expostos, LDAP acessível no DC, políticas de senha, contas privilegiadas mal configuradas, contas roastable e caminhos de escalação via ADCS. ADScan e ADPulse são duas ferramentas que automatizam esse trabalho — ADScan para enumeração ativa e ataque, ADPulse para auditoria read-only e relatórios.
ADScan — Enumeração Ativa e Ataque
ADScan automatiza pentesting de Active Directory fazendo enumeração através de DNS, LDAP, SMB e Kerberos, coletando dados que podem ser alimentados no BloodHound para análise. Ele também usa bibliotecas Python para parsear os arquivos JSON e entregar saída acionável diretamente — Kerberoasting, AS-REP roasting, DCSync, password spraying.

Instalação do ADScan
O processo de instalação requer paciência. Antes de começar, é necessário ter Docker instalado no Kali.
kali > sudo apt install docker.io
kali > sudo apt install docker-compose
kali > sudo service docker start
kali > sudo systemctl enable docker
Uma conexão de internet estável é importante. Com o Docker pronto:
kali > pipx install adscan
kali > adscan install
Após a instalação completar, credenciais para o BloodHound são fornecidas. Tudo pronto para iniciar:
kali > adscan start
Dentro da interface, um menu de ajuda mantém comandos em seções lógicas, cada uma com seus subcomandos.




Exploitation com ADScan
ADScan funciona com ou sem conta de domínio. Fornecendo credenciais:
start_auth
Depois forneça as credenciais e detalhes do domínio conhecidos. O ADScan executa checks automatizados: puxa dados do BloodHound, busca contas Kerberoastable e AS-REP roastable, procura caminhos de escalação no ADCS.
No exemplo da fonte, a ferramenta encontrou que o usuário lowpriv tem permissões GenericAll sobre grupos sensíveis — resultado de manipulação SDProp, onde permissões são atribuídas de formas difíceis de encontrar com ferramentas administrativas padrão (RSAT).
Quando a enumeração termina, ADScan oferece dois motores de attack path:
- Baseado em BloodHound — organiza findings em attack paths incluindo password spraying, ataques Kerberos, captura de hash NTLM, construindo acesso progressivamente.
- Busca local Python — encontra abuso de permissão via DACL misconfigurations. No exemplo, mostrou que o usuário pode modificar diretamente a membresia em Domain Admins.
ADScan também verifica CVEs conhecidos afetando domain controllers (Zerologon, NoPac em sistemas antigos).
ADScan não substitui entendimento, mas melhora significativamente eficiência e consistência.






ADPulse — Auditoria Read-Only e Relatórios
ADPulse tem abordagem diferente: é uma ferramenta de auditoria read-only que avalia a postura de segurança geral de um ambiente Active Directory. Conecta-se a um DC via LDAP/LDAPS e executa um conjunto definido de security checks — misconfigurations comuns, políticas fracas, attack paths potenciais. Resultados saem em CLI, JSON e HTML.
Instalação e Execução do ADPulse
Comparado ao ADScan, setup do ADPulse é direto:
kali > git clone https://github.com/yourorg/adpulse.git
kali > cd adpulse
kali > python -m venv venv
kali > source venv/bin/activate
kali > pip install -r requirements.txt
Execução:
kali > python ADPulse.py --domain sekvoya.local --user lowpriv --password 'P@ssw0rd123!'
Durante a execução, ADPulse mostra summaries no terminal. Ao finalizar, gera relatórios JSON e HTML — a versão HTML apresenta findings em estrutura hierárquica com recomendações, pronta para compartilhar com sysadmins e defenders.



Comparativo: ADScan vs ADPulse
| Aspecto | ADScan | ADPulse |
|---|---|---|
| Modo | Ativo (enumeração + ataque) | Passivo (read-only audit) |
| Objetivo | Comprometer, escalar, explorar | Avaliar postura, reportar |
| Output | Attack paths, creds, shells | JSON, HTML, CLI summary |
| Setup | Docker + pipx (complexo) | Git + venv (simples) |
| Uso ideal | Red team, exploitation phase | Blue team, assessment, compliance |
| BloodHound | Integração nativa | Não necessário |
| CVE checks | Sim (Zerologon, NoPac, etc.) | Não nativo |
| DACL abuse | Engine local Python | Checks de misconfig |
Quando usar cada um: ADScan quando o objetivo é demonstração de impacto, exploit chain, domain compromise. ADPulse quando o deliverable é relatório de postura, hardening guide, compliance evidence. Em pentests completos, use ambos: ADPulse para baseline inicial, ADScan para validation de findings e demonstração de exploit.
Conclusão
Pentest de Active Directory começa com discovery e frequentemente avança para exploitation, mas nem sempre termina em domain compromise total. Sucesso não se mede por conseguir Domain Admin, mas por quão bem você mapeia a superfície de ataque e demonstra risco real. ADScan e ADPulse, cada um no seu papel, tiram o trabalho repetitivo das mãos do pentester e deixam o foco onde deve estar: análise, validação e comunicação de impacto.
Detecção e Mitigação
Detecção de ADScan:
- Tráfego LDAP/SMB/Kerberos anômalo vindo de host não administrativo
- Execução de
docker runcom imagens suspeitas (adscan/adscan) - Enumeração massiva de objetos AD em curto período (BloodHound collection)
- Tentativas de Kerberoasting/AS-REP roasting em logs de segurança (Event ID 4769, 4768)
- Modificações suspeitas em grupos privilegiados (Domain Admins, Enterprise Admins)
Detecção de ADPulse:
- Conexões LDAP/LDAPS de host não autorizado para DC
- Enumeração de políticas de senha, GPOs, delegações
- Consultas LDAP em massa para objetos sensíveis
Mitigação:
- Restringir LDAP/LDAPS apenas a hosts de gerenciamento conhecidos
- Monitorar Event ID 4662 (operação em objeto AD) para GenericAll/WriteDacl
- Implementar tiered administration (PAW, Tier 0 isolation)
- Habilitar LDAP Channel Binding e LDAP Signing
- Patch DCs contra Zerologon (CVE-2020-1472) e NoPac (CVE-2021-42287/42278)
- Auditar delegações de permissão sensíveis (DS-Replication-Get-Changes-All, etc.)
- Usar Protected Users group para contas de alto privilégio