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

一、漏洞描述

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

二、漏洞原理

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

三、环境搭建

使用vulhub环境搭建
在这里插入图片描述

四、漏洞复现

访问目标网站如下图所示
在这里插入图片描述
使用CVE-2018-2628-jiance.py脚本进行漏洞检测如下图所示
在这里插入图片描述
使用CVE-2018-2628-getshell.py脚本进行漏洞利用如下图所示,得到shell地址:http://192.168.10.128:7001/bea_wls_internal/wl

在这里插入图片描述
使用K8飞刀成功连接,shell密码tom
在这里插入图片描述

五、漏洞修复

1、此漏洞产生于Weblogic T3服务,当开放Weblogic控制台端口(默认为7001端口)时,T3服务会默认开启。关闭T3服务,或控制T3服务的访问权限,能防护该漏洞。对于不在Oracle官方支持范围内的版本,由于没有最新补丁,推荐采用此种方式进行修复。同时,Weblogic采用黑名单的方式进行反序列化漏洞的修复,存在被绕过的风险,因此控制T3服务为防护Weblogic RMI这类反序列化漏洞的有效方式。控制T3服务方式:

a)进入Weblogic控制台,在base_domain的配置页面中,进入“安全”选项卡页面,点击“筛选器”,进入连接筛选器配置。

b)在连接筛选器中输入:weblogic.security.net.ConnectionFilterImpl,在连接筛选器规则中输入:127.0.0.1 * * allow t3 t3s,0.0.0.0/0 * * deny t3 t3s(t3和t3s协议的所有端口只允许本地访问)。

c)保存后需重新启动,规则方可生效。

2、更新Oracle官方发布的最新补丁,同时升级jdk至1.7.0.21以上版本。

3、如以上两种策略都无法采用,则可以考虑用更改代码的方式。以10.3.6.0为例,在weblogic.utils.io.oif.WebLogicFilterConfig的黑名单DEFAULT_BLACKLIST_CLASS中添加”java.rmi.server.RemoteObjectInvocationHandler”,编译并更新swlclient.jar、wlthint3client.jar这两个用到该类的包[4]。

更多web安全工具与存在漏洞的网站搭建源码,收集整理在知识星球。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_40412037/article/details/106568561