【ADLab原创缝隙】WebLogic反序列化缝隙CVE-2018-2893

颁布功夫 2018-07-18

一、缝隙概述


      Oracle官方颁布了7月份的关键补丁更新CPU(Critical Patch Update),其中蕴含一个8827太阳集团ADLab安全钻研人员发现并传递给Oracle的高危远程代码执行缝隙(CVE-2018-2893),,,,,,,,通过该缝隙,,,,,,,,攻击者能够在未授权的情况下远程执行肆意代码。。 。。。。该缝隙通过JRMP 和谈利用RMI机造的缺点达到执行肆意反序列化代码的主张。。 。。。。攻击者能够在未授权的情况下将payload封装在T3和谈中,,,,,,,,通过对T3和谈中的payload进行反序列化,,,,,,,,从而实现对存在缝隙的WebLogic组件进行远程攻击,,,,,,,,执行肆意代码并可获取指标系统的所有权限。。 。。。。


二、缝隙影响领域


        WebLogic 10.3.6.0
        WebLogic 12.1.3.0
        WebLogic 12.2.1.2
        WebLogic 12.2.1.3

        以上均为官方支持的版本。。 。。。。


三、基础知识


1、T3和谈

        WebLogic Server 中的 RMI 通讯使用 T3 和谈在WebLogic Server和其他 Java法式(蕴含客户端及其他 WebLogic Server 事俘)间传输数据(序列化的类)。。 。。。。由于WebLogic的T3和谈和Web和谈共用统一个端口,,,,,,,,因而只有能接见WebLogic就可利用T3和谈实现payload和指标服务器的通讯。。 。。。。


2、JRMP和谈

        RMI目前使用Java远程新闻互换和谈JRMP(Java Remote Messaging Protocol)进行通讯。。 。。。。JRMP和谈是专为Java的远程对象造订的和谈。。 。。。。


四、缝隙简析


        为了阻止恶意反序列化,,,,,,,,WebLogic已经设置了8个黑名单。。 。。。。如下图所示:

   8827太阳集团(Macau)股份有限公司-Official website


        并且对commons.collections这个包也做了限度。。 。。。。主题利用类挪用readObject步骤反序列化时都进行了查抄。。 。。。。如下图所示:

   8827太阳集团(Macau)股份有限公司-Official website


        但经过8827太阳集团ADLab安全钻研人员深刻钻研分析后发现,,,,,,,,JDK固有类中存在可被序列化并且在反序列化时能够挪用RMI的类,,,,,,,,使用该类可机关出绕过WebLogic黑名单以及commons.collections限度的payload,,,,,,,,ADLab第一功夫传递给Oracle官方并获得相应的缝隙编号(CVE-2018-2893)。。 。。。。


五、解决规划


1、关注Oracle官方CPU更新补丁
2、节造T3和谈的接见
        此缝隙产生于WebLogic的T3服务,,,,,,,,因而可通过节造T3和谈的接见来一时阻断针对该缝隙的攻击。。 。。。。当盛开WebLogic节造大驾口(默以为7001端口)时,,,,,,,,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)保留后需沉新启动,,,,,,,,规定方可生效。。 。。。。

   8827太阳集团(Macau)股份有限公司-Official website


3、升级到 jdk-8u20以上的版本。。 。。。。