Em ambientes corporativos, o alvo mais valioso costuma ser o Active Directory (AD) — o sistema que centraliza usuários, computadores, grupos e políticas de toda a organização (você o conheceu na aula Windows internals: processos, registro e o coração da autenticação). E o protocolo que serve de espinha dorsal para consultar o AD é o LDAP (Lightweight Directory Access Protocol). Enumerar o LDAP é, essencialmente, ler o catálogo da organização inteira: quem são os usuários, como estão organizados, quem é administrador, quais são as políticas. É uma das fontes de enumeração mais ricas que existem, e prepara diretamente o terreno para os ataques de Active Directory do Bloco XI. Esta aula introduz a enumeração LDAP; a exploração aprofundada virá lá.
O diretório como agenda hierárquica
Entenda o conceito de diretório. Um diretório LDAP é como uma agenda telefônica corporativa altamente estruturada: uma base de dados hierárquica que armazena "objetos" (usuários, grupos, computadores) organizados numa árvore, cada um com atributos (nome, e-mail, cargo, grupos a que pertence, e muito mais). O Active Directory é a implementação da Microsoft desse conceito, e o LDAP é a linguagem para consultá-lo. O protocolo roda tipicamente nas portas 389 (LDAP) e 636 (LDAPS, a versão sobre TLS). Quando seu scan revela essas portas — especialmente junto com outras características Windows —, você identificou provavelmente um controlador de domínio, o coração do AD e o alvo mais cobiçado do ambiente.
DN, DC, OU e CN
A estrutura hierárquica do LDAP usa uma nomenclatura própria que você precisa reconhecer. Os objetos são identificados por Distinguished Names (DN), construídos a partir de componentes como DC (Domain Component, as partes do domínio), OU (Organizational Unit, unidades organizacionais que agrupam objetos) e CN (Common Name, o nome do objeto). Um usuário pode ter um DN como CN=João Silva,OU=Financeiro,DC=empresa,DC=com — que se lê como "o usuário João Silva, na unidade Financeiro, do domínio empresa.com". Entender essa estrutura é o que permite navegar e consultar o diretório com precisão.
ldapsearch e o bind anônimo
A enumeração usa ferramentas que consultam o LDAP, e — tema recorrente do bloco — a possibilidade de consultas anônimas (quando o AD permite bind sem credenciais) é o que a torna especialmente reveladora:
# ldapsearch — a ferramenta clássica de consulta LDAP
ldapsearch -x -H ldap://192.168.1.10 -b "dc=empresa,dc=com"
# -x = autenticação simples/anônima; -b = base da busca
# tenta descobrir a base de nomes (naming context) do diretório
ldapsearch -x -H ldap://192.168.1.10 -s base namingcontexts
# scripts NSE do Nmap para LDAP
nmap --script ldap-search 192.168.1.10
# nmap para descoberta geral de AD
nmap --script ldap-rootdse 192.168.1.10
O catálogo que uma consulta anônima devolve
Quando as consultas anônimas são permitidas, um ldapsearch bem construído devolve o catálogo: usuários (com atributos como último login, se a conta está ativa, descrições — que às vezes contêm senhas deixadas por administradores desatentos), grupos (e quem pertence a eles, revelando quem são os administradores do domínio), computadores ingressados, e as políticas. É, literalmente, o organograma técnico da organização.
Quem são os Domain Admins
O valor ofensivo é imenso e conecta diretamente com o Bloco XI. A enumeração LDAP entrega: a lista completa de usuários do domínio (não de uma máquina, mas de toda a organização); a estrutura de grupos, revelando quem são os Domain Admins — os alvos de maior valor; descrições e atributos que ocasionalmente vazam credenciais ou pistas; e o mapa que ferramentas avançadas como o BloodHound (aula Active Directory ofensivo: fundamentos e enumeração com BloodHound) consomem para calcular caminhos de ataque dentro do AD — como chegar de um usuário comum comprometido até o administrador do domínio. A enumeração LDAP não é um fim; é o alicerce sobre o qual toda a estratégia de ataque a Active Directory se constrói. Por isso, encontrar um DC com consultas LDAP anônimas permitidas é um achado de alto impacto.
Fechar o anônimo, assinar e segmentar
Do lado defensivo, o LDAP e o AD exigem endurecimento cuidadoso justamente por concentrarem tanto valor. As contramedidas incluem: desabilitar consultas LDAP anônimas (exigir autenticação para qualquer consulta ao diretório); aplicar LDAP signing e LDAPS para proteger a integridade e confidencialidade das consultas (o que também mitiga certos ataques de relay que veremos no Bloco XI); praticar higiene de atributos — jamais colocar senhas ou informações sensíveis em campos de descrição; aplicar menor privilégio para que usuários comuns não consigam enumerar todo o diretório; e monitorar consultas LDAP anômalas, especialmente as que parecem mapear a estrutura inteira (assinatura típica de ferramentas como o BloodHound). Proteger o AD é proteger as chaves do reino.
Fontes e leituras recomendadas
- HackTricks — seção "Pentesting LDAP" (389, 636)
- Documentação do ldapsearch (parte das ferramentas OpenLDAP)
- Microsoft Docs — fundamentos de Active Directory e LDAP
- BloodHound (bloodhound.readthedocs.io) — para vislumbrar o que a enumeração LDAP alimenta
Exercícios
-
O que é um diretório LDAP, e qual a relação entre LDAP e Active Directory?
✓ Resposta:Um diretório LDAP é uma base de dados hierárquica que armazena objetos (usuários, grupos, computadores) com atributos, organizados em árvore — como uma agenda corporativa estruturada. O Active Directory é a implementação da Microsoft desse conceito, e o LDAP é o protocolo/linguagem usado para consultá-lo.
-
Em quais portas o LDAP roda, e o que sua presença (com características Windows) provavelmente indica sobre o host?
✓ Resposta:Nas portas 389 (LDAP) e 636 (LDAPS, sobre TLS). Sua presença, junto de características Windows, provavelmente indica que o host é um controlador de domínio — o coração do Active Directory.
-
Decomponha o Distinguished Name
CN=João Silva,OU=Financeiro,DC=empresa,DC=com, explicando cada componente.✓ Resposta:CN=João Silvaé o Common Name (o objeto/usuário);OU=Financeiroé a Organizational Unit (unidade que o agrupa);DC=empresaeDC=comsão Domain Components (as partes do domínio empresa.com). Lê-se: o usuário João Silva, na unidade Financeiro, do domínio empresa.com. -
Por que a enumeração LDAP é considerada "o alicerce" dos ataques a Active Directory? Cite o que ela entrega e a ferramenta avançada que consome esses dados.
✓ Resposta:Porque entrega a lista completa de usuários do domínio, a estrutura de grupos (revelando os Domain Admins), atributos que podem vazar pistas/credenciais, e o mapa da organização. Esses dados são consumidos por ferramentas como o BloodHound, que calcula caminhos de ataque até o administrador do domínio, servindo de base para toda a estratégia de ataque ao AD.
-
Liste três contramedidas defensivas para proteger o LDAP/AD contra enumeração.
✓ Resposta:Exemplos: desabilitar consultas LDAP anônimas (exigir autenticação); aplicar LDAP signing e LDAPS; praticar higiene de atributos (não colocar senhas em descrições); aplicar menor privilégio; monitorar consultas anômalas que mapeiam toda a estrutura. (Três quaisquer.)