CertiHound - Enumeração de AD CS para BloodHound Cheatsheet
CertiHound é uma ferramenta de enumeração de Serviços de Certificado do Active Directory (AD CS) que coleta configurações de modelo de certificado e autoridade de certificação via LDAP e a exporta em formato compatível com BloodHound CE. Adiciona nós PKI e bordas de abuso de certificado (os caminhos de ataque do estilo ESC1–ESC) ao seu gráfico BloodHound, para que a escalação de privilégio baseada em certificado apareça junto com os caminhos de ataque clássicos do AD. Preenche a lacuna entre o abuso de ADCS do Certipy e a visualização de caminho de ataque do BloodHound.
Apenas para avaliações autorizadas. Enumerar AD CS requer credenciais de domínio e permissão.
Instalação
| Método | Comando |
|---|
| pip | pip install certihound |
| From source | git clone o repo, depois pip install -e . |
| Requirement | Acesso LDAP ao domínio; BloodHound CE v6 para visualizar |
| Verify | certihound --help |
Coletando Dados de AD CS
certihound -u analyst -p '***' -d example.local \
-dc dc01.example.local -o output/
| Flag | Propósito |
|---|
-u, --username | Usuário de domínio |
-p, --password | Senha (ou hash/Kerberos) |
-d, --domain | Domínio alvo |
-dc, --domain-controller | DC para consultar via LDAP |
-o, --output | Diretório de saída para JSON |
--ldaps | Use LDAPS (636) |
A saída é um conjunto de arquivos JSON que você importa para BloodHound CE.
O Que Enumera
| Objeto de AD CS | Por que importa |
|---|
| Certificate Authorities | Configuração de inscrição/CA, inscrição na web |
| Certificate templates | O coração das configurações incorretas do ESC |
| Enrollment rights | Quem pode solicitar quais modelos |
| Template flags | ENROLLEE_SUPPLIES_SUBJECT, EKUs, etc. |
| CA permissions | Direitos ManageCA / ManageCertificates |
Caminhos de Ataque ESC Expostos
| ESC | Configuração incorreta |
|---|
| ESC1 | Modelo permite que inscritor forneça assunto + EKU auth |
| ESC2 | Modelo EKU de qualquer finalidade |
| ESC3 | Modelos de agente de inscrição |
| ESC4 | ACLs de modelo vulnerável (modelos graváveis) |
| ESC6 | EDITF_ATTRIBUTESUBJECTALTNAME2 na CA |
| ESC7 | Permissões de CA vulnerável |
| ESC8 | Retransmissão NTLM para inscrição na web de AD CS |
CertiHound codifica esses como bordas para que BloodHound possa caminhar de um usuário com poucos privilégios para Administrador de Domínio através de um abuso de certificado.
Importar para BloodHound CE
| Passo | Como |
|---|
| 1 | Execute CertiHound para produzir JSON |
| 2 | Em BloodHound CE, carregue o JSON via UI/API de ingestão |
| 3 | Nós/bordas PKI aparecem no gráfico |
| 4 | Consulte caminhos para alvos de alto valor que atravessam AD CS |
Fluxos de Trabalho Comuns
# Enumerate AD CS and load certificate attack paths into BloodHound CE
certihound -u audit -p '***' -d corp.local -dc dc.corp.local -o adcs/
# → upload adcs/*.json into BloodHound CE, then query
# "shortest path to Domain Admins" including PKI edges
# Combine with Certipy for the actual abuse once a path is found
CertiHound no Kit de Ferramentas AD CS
| Ferramenta | Função |
|---|
| CertiHound | Enumere AD CS → gráfico BloodHound CE |
| Certipy | Enumere e abuse ESC1–ESC17 |
| BloodHound | Visualize/consulte os caminhos de ataque |
| NetExec | Coleta de AD mais ampla + retransmissão |
Recursos