【防护方案】WebLogic远程代码执行漏洞CVE-2018-3191

百家 作者:绿盟科技 2018-10-19 15:42:25

1

综述

北京时间10月17日,Oracle官方发布的10月关键补丁更新CPU(Critical Patch Update)中修复了一个高危的WebLogic远程代码执行漏洞(CVE-2018-3191)。该漏洞允许未经身份验证的攻击者通过T3协议网络访问并破坏易受攻击的WebLogic Server,成功的漏洞利用可导致WebLogic Server被攻击者接管,从而造成远程代码执行。


CVSS 3.0评分:9.8

CVSS Vector: (CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H)


Oracle官方CPU链接:

https://www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html


2

漏洞影响范围


  • Weblogic 10.3.6.0

  • Weblogic 12.1.3.0

  • Weblogic 12.2.1.3


3

技术防护方案


3.1

官方修复方案


Oracle官方已经在10月关键补丁更新CPU(Critical Patch Update)中修复了该漏洞,强烈建议受影响的用户尽快升级更新进行防护。

参考链接:

https://www.oracle.com/technetwork/security-advisory/cpuoct2018-4428296.html#AppendixFMW


注:Oracle官方补丁需要用户持有正版软件的许可账号,使用该账号登陆https://support.oracle.com后,可以下载最新补丁。


3.2

绿盟科技检测防护建议


绿盟科技检测类产品与服务


1、公网资产可使用绿盟云 紧急漏洞在线检测,检测地址如下:


手机端访问地址:

https://cloud.nsfocus.com/megi/holes/hole_struts2_2018_8_23.html

PC端访问地址:

https://cloud.nsfocus.com/#/krosa/views/initcdr/productandservice?service_id=1026


2、内网资产可以使用绿盟科技的远程安全评估系统(RSAS V6)和Web应用漏洞扫描系统(WVSS)进行检测。


远程安全评估系统(RSAS V6)系统插件

http://update.nsfocus.com/update/listRsasDetail/v/vulsys

远程安全评估系统(RSAS V6)Web插件

http://update.nsfocus.com/update/listRsasDetail/v/vulweb

Web应用漏洞扫描系统(WVSS)http://update.nsfocus.com/update/listWvssDetail/v/6/t/plg

统一威胁探针(UTS)

http://update.nsfocus.com/update/listBsaUtsDetail/v/rule2.0.0


通过上述链接,升级至最新版本即可进行检测!


使用绿盟科技防护类产品进行防护


入侵防护系统(IPS)

http://update.nsfocus.com/update/listIps

下一代防火墙系统(NF)

http://update.nsfocus.com/update/listNf


通过上述链接,升级至最新版本即可进行防护!


检测防护产品升级包/规则版本号

绿盟科技的防护产品已于4月份发布了规则升级包,对漏洞CVE-2018-3191、CVE-2018-3245形成了防护能力。


4

技术分析


4.1

补丁分析


如下图所示:

本次的补丁主要增加了两个大类黑名单,分别是java.rmi.server.RemoteObject和com.bea.core.repackaged.springframework.transaction.support.AbstractPlatformTransactionManager,RemoteObject是用于修补编号为CVE-2018-3245的漏洞,绿盟科技安全研究员廖新喜在上报该漏洞的过程中就已将所有涉及到RemoteObject相关的poc都提交至Oracle官方。AbstractPlatformTransactionManager这个黑名单是用于防止Spring JNDI注入,从官方以前的黑名单上就能看到org.springframework.transaction.support.AbstractPlatformTransactionManager,但是官方没有想到在com.bea.core.repackaged的相关包还有spring的相关类。这两个包中的类实现几乎一样的,只是来源于不同的包。


4.2

动态分析


通过静态分析已经知道CVE-2018-3191所对应的补丁就是AbstractPlatformTransactionManager,用于防止Spring JNDI注入。分析中主要关注JtaTransactionManager这个类,以下是该类中关键的几个地方。

JtaTransactionManager类继承自AbstractPlatformTransactionManager,实现了Serializable接口,其中私有属性userTransactionName是用于JNDI寻址。

在Java反序列化中,入口有很多,readObject是最常见的,定位到JtaTransactionManager.readObject方法,实现如下:

继续跟踪initUserTransactionAndTransactionManager方法的实现:

在 initUser Transaction And Transaction Manager的方法中就有基于JNDI寻址方法lookupUserTransaction,关键寻址部分代码如下:

更详细关于JNDI的使用可参考廖新喜之前的博文http://xxlegend.com/。漏洞效果如下图:



点“阅读原文”进入绿盟科技博客查看详细内容


  关于绿盟科技  


北京神州绿盟信息安全科技股份有限公司(简称绿盟科技)成立于2000年4月,总部位于北京。在国内外设有30多个分支机构,为政府、运营商、金融、能源、互联网以及教育、医疗等行业用户,提供具有核心竞争力的安全产品及解决方案,帮助客户实现业务的安全顺畅运行。


基于多年的安全攻防研究,绿盟科技在网络及终端安全、互联网基础安全、合规及安全管理等领域,为客户提供入侵检测/防护、抗拒绝服务攻击、远程安全评估以及Web安全防护等产品以及专业安全服务。


北京神州绿盟信息安全科技股份有限公司于2014年1月29日起在深圳证券交易所创业板上市交易,股票简称:绿盟科技,股票代码:300369。


    ·    声明    ·    


本安全公告仅用来描述可能存在的安全问题,绿盟科技不为此安全公告提供任何保证或承诺。


由于传播、利用此安全公告所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,绿盟科技以及安全公告作者不为此承担任何责任。


绿盟科技拥有对此安全公告的修改和解释权。


如欲转载或传播此安全公告,必须保证此安全公告的完整性,包括版权声明等全部内容。未经绿盟科技允许,不得任意修改或者增减此安全公告内容,不得以任何方式将其用于商业目的。






请点击屏幕右上方“…”

关注绿盟科技公众号
NSFOCUS-weixin

↑↑↑长按二维码,下载绿盟云APP



关注公众号:拾黑(shiheibook)了解更多

[广告]赞助链接:

四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/

公众号 关注网络尖刀微信公众号
随时掌握互联网精彩
赞助链接