콘텐츠로 이동

CertiHound - BloodHound용 AD CS 열거 도구 치트시트

CertiHound - BloodHound용 AD CS 열거 도구 치트시트

CertiHound는 Active Directory Certificate Services (AD CS) 열거 도구로, 인증서 템플릿 및 CA 구성을 LDAP을 통해 수집하고 BloodHound CE 호환 형식으로 내보냅니다. PKI 노드와 인증서 악용 엣지 (ESC1–ESC 스타일 공격 경로)를 BloodHound 그래프에 추가하므로 인증서 기반 권한 상승이 클래식 AD 공격 경로와 함께 표시됩니다. Certipy의 ADCS 악용과 BloodHound의 공격 경로 시각화 사이의 격차를 메웁니다.

인가된 평가 목적에만 사용하세요. AD CS 열거에는 도메인 자격증명과 허가가 필요합니다.

설치

방법명령어
pippip install certihound
소스에서저장소를 git clone한 후 pip install -e .
요구사항도메인에 대한 LDAP 접근; BloodHound CE v6을 보기 위해 필요
확인certihound --help

AD CS 데이터 수집

certihound -u analyst -p '***' -d example.local \
  -dc dc01.example.local -o output/
플래그목적
-u, --username도메인 사용자
-p, --password비밀번호 (또는 해시/Kerberos)
-d, --domain대상 도메인
-dc, --domain-controllerLDAP을 통해 조회할 DC
-o, --outputJSON 출력 디렉토리
--ldapsLDAPS (636) 사용

출력은 BloodHound CE로 가져올 JSON 파일 집합입니다.

열거되는 항목

AD CS 객체중요성
인증서 기관등록/CA 구성, 웹 등록
인증서 템플릿ESC 오설정의 핵심
등록 권리누가 어느 템플릿을 요청할 수 있는지
템플릿 플래그ENROLLEE_SUPPLIES_SUBJECT, EKU 등
CA 권한ManageCA / ManageCertificates 권리

노출되는 ESC 공격 경로

ESC오설정
ESC1템플릿이 등록자가 주체를 공급하고 인증 EKU를 허용
ESC2모든 목적 EKU 템플릿
ESC3등록 에이전트 템플릿
ESC4취약한 템플릿 ACL (쓰기 가능한 템플릿)
ESC6CA의 EDITF_ATTRIBUTESUBJECTALTNAME2
ESC7취약한 CA 권한
ESC8AD CS 웹 등록에 NTLM 릴레이

CertiHound는 이들을 엣지로 인코딩하므로 BloodHound가 인증서 악용을 통해 낮은 권한 사용자에서 도메인 관리자까지의 경로를 그릴 수 있습니다.

BloodHound CE로 가져오기

단계방식
1CertiHound를 실행하여 JSON 생성
2BloodHound CE에서 수집 UI/API를 통해 JSON 업로드
3PKI 노드/엣지가 그래프에 나타남
4AD CS를 통과하는 높은 가치 대상에 대한 경로 쿼리

일반적인 워크플로우

# AD CS 열거 및 인증서 공격 경로를 BloodHound CE에 로드
certihound -u audit -p '***' -d corp.local -dc dc.corp.local -o adcs/
# → adcs/*.json을 BloodHound CE에 업로드한 후 쿼리
#   PKI 엣지를 포함한 "Domain Admins까지의 최단 경로"

# Certipy와 결합하여 경로를 찾은 후 실제 악용

AD CS 도구 키트의 CertiHound

도구역할
CertiHoundAD CS 열거 → BloodHound CE 그래프
CertipyESC1–ESC17 열거 및 악용
BloodHound공격 경로 시각화/쿼리
NetExec더 광범위한 AD 수집 + 릴레이

자료