Adalanche - Active Directory ACL 공격 경로 시각화 도구 치트시트
Adalanche는 Active Directory 객체, 권한(ACL) 및 그룹 멤버십을 수집한 후 즉시 공격 경로를 그래프화하는 오픈소스 Go 기반 도구입니다. “AD에서 사용자가 어떤 권한을 가지고 있으며, 누가 누구를 공격할 수 있는가?”라는 질문에 답합니다. 외부 데이터베이스나 인제스터 스택이 필요하지 않습니다. AD를 덤프하고 ACL 기반 권한 상승을 분석한 후 브라우저에서 인터랙티브 그래프를 제공합니다. 인가된 AD 보안 평가를 위한 BloodHound의 빠르고 자체 포함된 대체/보완 도구입니다.
인가된 Active Directory 평가 목적에만 사용하세요. 디렉토리 데이터 수집 및 분석에는 도메인 소유자의 허가가 필요합니다.
설치
| 방법 | 방식 |
|---|
| 바이너리 | GitHub Releases에서 Windows/Linux/macOS 다운로드 |
| 소스에서 | go install github.com/lkarlslund/adalanche@latest |
| 단일 바이너리 | 의존성 없음; 수집기 + 분석기 + 웹 UI가 하나로 통합 |
| 확인 | adalanche version |
두 가지 단계
| 단계 | 명령어 |
|---|
| 수집 | AD 데이터를 로컬 파일로 덤프 |
| 분석 | 데이터를 로드하고 그래프 UI 제공 |
데이터 수집
# 도메인에서 수집 (LDAP), 인증됨
adalanche collect activedirectory \
--domain example.local \
--username analyst --password '***' \
--server dc01.example.local
| 플래그 | 목적 |
|---|
--domain | 대상 AD 도메인 (FQDN) |
--server | 조회할 도메인 컨트롤러 |
--username / --password | 자격증명 (또는 Kerberos) |
--authmode | 인증 방법 (ntlm, kerberos, …) |
--tlsmode | TLS/LDAPS 옵션 |
| collectors | activedirectory, 더하기 로컬 머신 수집기 |
데이터는 로컬 data/ 디렉토리에 압축된 객체로 저장됩니다.
분석 / 그래프 제공
# 수집된 데이터를 로드하고 웹 UI 열기
adalanche analyze
# → http://localhost:8080으로 이동
| 플래그 | 목적 |
|---|
--datapath | 수집된 데이터의 위치 |
--bind | 웹 UI의 주소/포트 |
| 검색 상자 | LDAP 스타일 / 빌트인 쿼리 입력 |
| 사전 정의 분석 | ”Domain Admins에 도달할 수 있는 것”, 등 |
매핑되는 것 (공격 엣지)
| 엣지/기술 | 의미 |
|---|
WriteDACL / WriteOwner | 객체의 권한을 다시 쓸 수 있음 |
GenericAll / GenericWrite | 객체에 대한 완전/부분 제어 |
ForceChangePassword | 대상의 비밀번호 재설정 |
AddMember | 자신을 권한 있는 그룹에 추가 |
AllExtendedRights | DCSync 및 기타 민감한 권리 |
| Kerberos 위임 | 제약 있는/없는 위임 오용 |
| GPO 링크 | 연결된 그룹 정책을 통한 제어 |
쿼리
| 쿼리 | 찾기 |
|---|
| Domain Admins 대상 | DA 그룹에 도달할 수 있는 모든 것 |
| 사용자 선택 → “Reach” | 해당 주체가 궁극적으로 제어할 수 있는 것 |
| 엣지 유형으로 필터링 | WriteDACL만, 위임만, 등 |
| 최단 경로 | A에서 높은 가치 대상까지의 최소 체인 |
UI는 모든 주체에서 민감한 대상까지의 최단 권한 상승 경로를 강조 표시하며, 이는 핵심 평가 결과입니다.
일반적인 워크플로우
# 전체 평가: 수집 후 분석
adalanche collect activedirectory --domain corp.local \
--username audit --password '***' --server dc.corp.local
adalanche analyze # 브라우저 열기, "Domain Admins" 대상 설정
# 오프라인 분석: data/ 폴더 공유, 어디서나 분석
adalanche analyze --datapath ./data
Adalanche vs BloodHound
| 측면 | Adalanche | BloodHound (CE) |
|---|
| 백엔드 | 없음 (단일 바이너리) | Neo4j / API + 수집기 |
| 초점 | ACL/권한 공격 경로 | 광범위한 AD/Azure 공격 경로 |
| 설정 | 최소한 | 더 무거운 스택 |
| 수집기 | 빌트인 AD + 로컬 | SharpHound / AzureHound / NetExec |
| 최적 용도 | 빠른 ACL 중심 분석 | 포괄적인 경로 매핑 |
BloodHound 및 NetExec과 같은 수집기를 보완합니다. 빠르고 데이터베이스 없는 ACL 분석을 위해 Adalanche를 사용하세요.
자료