一、漏洞描述
WebLogic是美国Oracle公司出品的一个application server,确切的说是一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器。将Java的动态功能和Java Enterprise标准的安全性引入大型网络应用的开发、集成、部署和管理之中。

2019年4月17日,国家信息安全漏洞共享平台(CNVD)收录了由中国民生银行股份有限公司报送的Oracle WebLogic wls9-async反序列化远程命令执行漏洞(CNVD-C-2019-48814)。由于在反序列化处理输入信息的过程中存在缺陷,未经授权的攻击者可以发送精心构造的恶意 HTTP 请求,利用该漏洞获取服务器权限,实现远程代码执行。根据国家信息安全漏洞共享平台(CNVD)漏洞公告,此漏洞存在于异步通讯服务,可通过访问路径/_async/AsyncResponseService,判断不安全组件是否开启。目前可以在网上搜索到POC,CVE编号为(CVE-2019-2725)。
wls9-async组件为WebLogic Server提供异步通讯服务,默认应用于WebLogic部分版本。由于该WAR包在反序列化处理输入信息时存在缺陷,攻击者通过发送精心构造的恶意 HTTP 请求,即可获得目标服务器的权限,在未授权的情况下远程执行命令。
影响版本
Oracle WebLogic Server 10.*
Oracle WebLogic Server 12.1.3影响组件
bea_wls9_async_response.war
wls-wsat.war二、漏洞复现
漏洞环境
Oracle WebLogic Server10.3.6.0.0判断组件是否存在
1、可通过访问路径/_async/AsyncResponseService判断wls9_async_response组件是否存在。

2、可通过访问路径/wls-wsat/CoordinatorPortType判断wls-wsat组件是否存在。

验证poc
访问路径:目标IP:端口/_async/AsyncResponseService利用抓包工具抓包(这里使用的是burp)后发送到重放功能里,然后更改数据为poc(注意更改poc的目标地址和请求方式),这里测试命令为whoami,修改完毕点击发送数据后可以看到成功返回当前用户为weblogic。也可以利用相对应的poc测试wls-wsat组件漏洞步骤相同。

三、修复建议
1、删除不安全文件
删除wls9_async_response.war和wls-wsat.war文件及相关文件夹并重启Weblogic服务。wls9_async_response.war及wls-wsat.war属于一级应用包,对其进行移除或更名操作可能造成未知的后果,Oracle官方不建议对其进行此类操作。
10.3.*版本路径
\Middleware\wlserver_10.3\server\lib\
%DOMAIN_HOME%\servers\AdminServer\tmp\_WL_internal\
%DOMAIN_HOME%\servers\AdminServer\tmp\_WL_internal\
%DOMAIN_HOME%\servers\AdminServer\tmp\.internal\
12.1.3版本路径
\Middleware\Oracle_Home\oracle_common\modules\
\Middleware\Oracle_Home\oracle_common\modules\
%DOMAIN_HOME%\servers\AdminServer\tmp\.internal\
%DOMAIN_HOME%\servers\AdminServer\tmp\_WL_internal\
%DOMAIN_HOME%\servers\AdminServer\tmp\_WL_internal\
2、配置URL访问控制策略
通过访问策略控制禁止 /_async/* 和/wls-wsat/*路径的URL访问。
3、升级本地JDK版本
及时升级支持Weblogic的Java版本。因为Weblogic所采用的是其安装文件中默认1.6版本的JDK文件,属于存在反序列化漏洞的JDK版本,因此升级到JDK7u21以上版本可以避免由于Java原生类反序列化漏洞造成的远程代码执行。
4、官方CVE-2019-2725补丁包
官方已公布紧急补丁包
下载地址如下:
https://www.oracle.com/technetwo ... .html?from=timeline

推荐文章++++

*Windows全版本本地提权(CVE-2020-0787)
*SMB v1远程代码执行漏洞 (CVE-2020-1301)
*Spring Data Commons 远程命令执行漏洞(CVE-2018-1273)

