Weblogic T3协议反序列化命令执行漏洞(CVE-2018- 2628)复现
好久没发新文章了,躲懒了,是时候该更新一篇了,这一篇是关于WebLogic T3协议反序列化命令执行漏洞(CVE-2018- 2628)的复现,该漏洞是weblogic的经典漏洞,而网上有关的复现稍显麻烦且方式有些老旧,特此更新一篇。
Weblogic T3协议反序列化命令执行漏洞介绍:
Weblogic Server中的RMI 通信使用T3协议在Weblogic Server和其它Java程序(客户端或者其它Weblogic Server实例)之间传输数据, 服务器实例会跟踪连接到应用程序的每个Java虚拟机(JVM)中,并创建T3协议通信连接, 将流量传输到Java虚拟机. T3协议在开放WebLogic控制台端口的应用上默认开启. 攻击者可以通过T3协议发送恶意的的反序列化数据, 进行反序列化, 实现对存在漏洞的weblogic组件的远程代码执行攻击。
影响范围:
Weblogic 10.3.6.0
Weblogic 12.1.3.0
Weblogic 12.2.1.2
Weblogic 12.2.1.3
靶机介绍:
此次复现使用vulhub中的/vulhub-master/weblogic/CVE-2018-2628中靶场,具体靶场搭建这里就不多赘述了,参考vulhub官网即可。
开启靶场:docker-compose up -d
访问ip:7001/console出现如下页面表示靶场搭建成功。这里的ip为192.168.28.136(靶机ip)
漏洞检测:
使用相应的poc脚本进行检测即可
poc地址:https://github.com/Aedoo/CVE-2018-2628-MultiThreading
可见检出漏洞:
漏洞利用:
注意,该命令执行漏洞没有回显,因此只能对目标机执行代码而无法返回执行结果,所以,这里我们直接进行反弹shell:
反弹shell payload准备:
由于Runtime.getRuntime().exec() 中不能使用管道符等bash需要的方法,所以我们使用base64的反弹shell形式,具体如下:
远端vps监听端口:
下载反序列化漏洞利用工具jar文件:ysoserial.jar
地址:https://github.com/frohoff/ysoserial。按照说明生成jar文件即可。
远端vps开启JRMP Server端口监听,端口随意,这里设置为38080
出现Opening JRMP listener on 38080即表明jrmp server监听成功。
到这里,反弹shell的环境就准备完毕,下面下载exp:
exp地址:https://www.exploit-db.com/exploits/44553
copy代码,保存为exploit.py
攻击机payload准备:
这里的victim ip/port 为靶机的ip和端口,path to ysoserial为ysoserial.jar文件的路径,因为这个exp会调用这个jar,JRMPListener ip/port为jrmp server服务器的ip和监听的端口,这里端口为38080。JRMPClient有两个选项,为:JRMPClient或JRMPClient2,这里使用JRMPClient。
最终payload:
执行exp:
回显exploit completed表明执行完毕,回看vps监听端口可见:
反弹shell成功。
复现完毕。
__EOF__

本文链接:https://www.cnblogs.com/scivous/p/16035232.html
关于博主:评论和私信会在第一时间回复。或者直接私信我。
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是博主的最大动力!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义