新闻中心
近年来,我们专注于提供全系列企业级性能管理方案和相关的IT服务,在帮助用户提高业务效率和整体生产力的同时,降低运营和运维成本。
返回列表
首页 / 新闻资讯 / 公司动态
WebLogic CVE-2018-2628 漏洞说明与修复方案
来源:   日期:2018-05-08

东方龙马-智能运维.jpg

东方龙马 · 导读


北京时间4月18日凌晨,Oracle官方发布了4月份的关键补丁集,其中包含高危漏洞(CVE-2018-2628),通过该漏洞,攻击者可以在未授权的情况下远程执行代码。


官方链接:

http://www.oracle.com/technetwork/security-advisory/cpuapr2018-3678067.html



一、实现原理

通过前几次反序列化漏洞,WebLogic已经将互联网暴漏的Poc都加入了黑名单,但是黑客却可以通过t3协议绕过黑名单限制,自己构建一个Poc.


攻击者通过weblogic管理服务器所在的IP、端口上的t3服务握手,之后一步步通过readObject操作读取恶意封装的代码,之后将恶意代码的payload发送回请求方。从而实现入侵。


入侵脚本效果展示:


东方龙马-1 (1).png


如上所示成功执行了恶意Java封装代码,并获取了回显信息到 payload.out



二、危险评估

此漏洞为高危漏洞,攻击者可利用此漏洞远程执行代码,包括而不仅限于:杀死生产进程,获取生产业务数据,植入木马,挖矿等...



三、影响版本

WebLogic Server 9

WebLogic Server 10g

WebLogic Server 11g

WebLogic Server 12C



四、官方方案

补丁介绍

对于Oracle支持周期以及扩展周期内的版本,Oracle会提供补丁,按Oracle官方说明文档,最新版补丁集已经修复此漏洞(实际测试部分Poc依然可以实现攻击操作)


东方龙马-1 (2).png


对于过了支持周期和扩展支持周期内的版本,官方建议升级到扩展周期内的版本,之后进行补丁安装。(如何进行升级,官方的文档有非常详细的说明,之前的组内分享已经发出过了,这里不做具体说明。)


但是升级会导致环境变化,对于生产环境来说具有极大的不确定性,部分系统会因为兼容性的问题导致不能正常工作,这里需要了解之后介绍到的备用方案。具体参见本文(备用方案部分)


补丁升级(并尝试攻击,结果攻击成功)


WLS10.3.6(11g)

1、使用安装中间件服务器的用户登陆中间件服务器所在机器。

2、停止该机器上所有的WLS中间件的Java进程,(如果在Windows机器上则需要注意停止WLS注册的服务,否则会因为权限问题导致补丁升级时报Java.IO的错误)。

3、进入中间件安装目录,示例:


东方龙马-1 (3).png


4、进入bsu目录,以二进制方式上传补丁p27238412_1036_Generic.zip到该目录,通过该补丁升级BSU工具,这样将极快的提升补丁安装速度,原来需要半个小时的操作,升级后只需要几分钟(注:该操作只会影响补丁冲突检查时间,不影响最终补丁的安装)


东方龙马-1 (4).png


5、进入cache_dir,(没有则手动创建),上传补丁到该目录,并解压(也可以解压后上传到该目录)


东方龙马-1 (5).png


6、返回bsu目录,修改bsu脚本,防止内存溢出,建议Xmx大于1.5G


东方龙马-1 (6).png


7、执行bsu脚本(用法如下)


东方龙马-1 (7).png


8、安装补丁(注意如果是Windows建议用管理员权限开启CMD)


东方龙马-1 (8).png


9、启动原来停止的进程和服务。


东方龙马-1 (9).png


10、尝试攻击,发现攻击成功



WLS12.2.1.3(12c)


WLS12.1.3、WLS12.2.1.2、WLS12.2.1.3版本的WLS都使用Opatch安装补丁,所以仅以WLS12.2.1.3为例介绍补丁安装,并展示攻击结果,不再截图。


1、使用安装中间件服务器的用户登陆中间件服务器所在机器。


2、停止该机器上所有的WLS中间件的Java进程,(如果在Windows机器上则需要注意停止WLS注册的服务,否则会因为权限问题导致补丁升级时报Java.IO的错误)。


3、检查如下环境变量,确保Opatch正确执行:

JDK环境变量,确保你使用的JDK就是你之前安装的JDK;

ORACLE_HOME,确保你补丁最终安装的位置,也就是你WebLogicServer所在位置。


4、解压补丁包:

p27342434_122130_Generic.zip


5、进入解压后的目录,通过命令 

Windows下:%ORACLE_HOME%/OPatch/opatch apply

类Unix下:$ORACLE_HOME/OPatch/opatch apply


6、尝试攻击,还是成功了(无奈)



五、临时方案

绿盟方案

思路:由官方提供的过滤器彻底过滤t3和t3s协议,在现有的攻击Poc上从源头阻止构建攻击代码


东方龙马-1 (11).png


连接筛选器填:weblogic.security.net.ConnectionFilterImpl

筛选规则填取:* * 7001 deny t3 t3s (根据需要修改)重启生效。


尝试攻击


东方龙马-1 (12).png


缺点:t3协议是非常重要的WebLogic内部的通讯协议。禁用后会影响到使用t3协议启动的受管节点,WLST监控脚本、停止脚本...等等


推荐临时方案

思路:需要禁用t3协议,但是不能禁死,对于受管节点或有需求的特定节点,需要放开限制。


参考官方SR链接:

Steps to Configure Weblogic Connection Filters ( Doc ID 1508748.1 ) 

Connection-filter Rules To Allow Few Ips To Access One Port And To Allow All Ips To Access Another Port ( Doc ID 1494692.1 )


参考官方Doc链接:

http://download.oracle.com/docs/cd/E12839_01/web.1111/e13711/con_filtr.htm#i1029357


东方龙马-1 (13).png



六、总结

CVE-2018-2628漏洞威胁极大,官方的补丁目前测试结果看来并不能防御已知的攻击Poc脚本。


临时方案:

建议添加多条筛选器规则,只允许需要的IP 端口使用t3协议。后续等待官方更新新的补丁解决方案。




东方龙马-微信公众号.webp.jpg


|  北京    |    上海    |   广州    |   成都    |   


4008-906-960


OLM-1.png


4008-906-960

全国免费咨询电话
  • 官方微博
  • 官方微信
Copyright 1998-2016 版权所有 北京东方龙马软件发展有限公司 京ICP备14000200号-1