关于Oracle WebLogic Server远程代码执行漏洞的通报

2024-09-04 03:32

本文主要是介绍关于Oracle WebLogic Server远程代码执行漏洞的通报,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

要了解Oracle Weblogic Server远程代码执行漏洞,需要了解一下Weblogic T3协议:

T3也称为丰富套接字,是BEA内部协议,功能丰富,可扩展性好。T3是多工双向和异步协议,经过高度优化,只使用一个套接字和一条线程。借助这种方法,基于Java的客户端可以根据服务器方需求使用多种RMI对象,但仍使用一个套接字和一条线程。

WebLogic Server 中的 RMI(远程方法调用) 通信使用 T3 协议在 WebLogic Server 和其他 Java 程序(包括客户端及其他 WebLogic Server 实例)间传输数据。服务器实例将跟踪所连接的每个 Java 虚拟机(Java Virtual Machine,简称 JVM),并创建单个 T3 连接以承担 JVM 的所有流量。请参阅“管理控制台联机帮助”中的配置 T3 协议。

例如,如果 Java 客户端访问 WebLogic Server 上的企业 Bean 和 JDBC 连接缓冲池,那么 WebLogic Server JVM 和客户端 JVM 之间就会建立起单个网络连接。因为 T3 协议能在单个连接上隐性地多路复用数据包,所以可以编写 EJB 和 JDBC 服务,就好像这些服务单独使用了专用网络连接。

具有有效 T3 连接的任意两个 Java 程序(例如两个服务器实例,或者一个服务器实例和一个 Java 客户端)都使用定期的点对点“心跳”来通知和确定连续可用性。每个端点定期向对等方发布“心跳”,同样也通过连续接收对等方的心跳,确定对等方是否仍然可用。

 服务器实例的心跳发布频率由心跳间隔确定,默认情况下,心跳间隔是 60 秒。 建议您不要更改超时默认值。

在等候缺少的心跳次数达到一定数量后,服务器实例将认定对等方不可用。次数由心跳时间段确定,默认次数为 4 次。因此,每个服务器实例最多等待 240 秒,或 4 分钟,若在此期间没有收到对等方的消息(心跳或其他通信),服务器实例将认定对等方不可用。

漏洞描述:

近日,国家信息安全漏洞库(CNNVD)收到Oracle WebLogic Server远程代码执行漏洞(CNNVD-201810-781、CVE-2018-3245)情况的报送。攻击者可利用该漏洞在未授权的情况下发送攻击数据,通过T3协议在WebLogic Server中执行反序列化操作,最终实现远程代码执行。WebLogic Server 10.3.6.0、12.1.3.0、12.2.1.2、12.2.1.3等版本均受漏洞影响。目前, Oracle官方已经发布补丁修复了漏洞,建议用户及时确认是否受到漏洞影响,尽快采取修补措施。

一、漏洞介绍

Oracle WebLogic Server是美国甲骨文(Oracle)公司开发的一款适用于云环境和传统环境的应用服务中间件,它提供了一个现代轻型开发平台,支持应用从开发到生产的整个生命周期管理,并简化了应用的部署和管理。

Oracle WebLogic Server存在远程代码执行漏洞(CNNVD-201810-781、CVE-2018-3245)。该漏洞通过JRMP协议利用RMI机制的缺陷达到远程代码执行的目的。攻击者可以在未授权的情况下将payload封装在T3协议中,通过对T3协议中的payload进行反序列化,从而实现对存在漏洞的WebLogic组件进行远程攻击,执行任意代码,并获取目标系统的所有权限。

二、危害影响

攻击者可利用漏洞在未授权的情况下发送攻击数据,通过T3协议在WebLogic Server中执行反序列化操作,最终实现远程代码执行。该漏洞涉及了多个版本,具体受影响版本如下:

Oracle WebLogic Server 10.3.6.0

Oracle WebLogic Server 12.1.3.0

Oracle WebLogic Server 12.2.1.2

Oracle WebLogic Server 12.2.1.3

 三、修复建议

目前, Oracle官方已经发布补丁修复了漏洞,建议用户及时确认是否受到漏洞影响,尽快采取修补措施。

1、Oracle官方更新链接如下:

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

2、临时解决方案

通过设置weblogic.security.net.ConnectionFilterImpl默认连接筛选器,对T3/T3s协议的访问权限进行配置,阻断漏洞利用途径。具体如下:

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

(b)在连接筛选器中输入:WebLogic.security.net.ConnectionFilterImpl,在连接筛选器规则中输入:* * 7001 deny t3 t3s

(c)保存后重新启动即可生效。

这篇关于关于Oracle WebLogic Server远程代码执行漏洞的通报的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1134872

相关文章

Oracle数据库定时备份脚本方式(Linux)

《Oracle数据库定时备份脚本方式(Linux)》文章介绍Oracle数据库自动备份方案,包含主机备份传输与备机解压导入流程,强调需提前全量删除原库数据避免报错,并需配置无密传输、定时任务及验证脚本... 目录说明主机脚本备机上自动导库脚本整个自动备份oracle数据库的过程(建议全程用root用户)总结

SQL Server跟踪自动统计信息更新实战指南

《SQLServer跟踪自动统计信息更新实战指南》本文详解SQLServer自动统计信息更新的跟踪方法,推荐使用扩展事件实时捕获更新操作及详细信息,同时结合系统视图快速检查统计信息状态,重点强调修... 目录SQL Server 如何跟踪自动统计信息更新:深入解析与实战指南 核心跟踪方法1️⃣ 利用系统目录

SQL Server 中的 WITH (NOLOCK) 示例详解

《SQLServer中的WITH(NOLOCK)示例详解》SQLServer中的WITH(NOLOCK)是一种表提示,等同于READUNCOMMITTED隔离级别,允许查询在不获取共享锁的情... 目录SQL Server 中的 WITH (NOLOCK) 详解一、WITH (NOLOCK) 的本质二、工作

SQL Server安装时候没有中文选项的解决方法

《SQLServer安装时候没有中文选项的解决方法》用户安装SQLServer时界面全英文,无中文选项,通过修改安装设置中的国家或地区为中文中国,重启安装程序后界面恢复中文,解决了问题,对SQLSe... 你是不是在安装SQL Server时候发现安装界面和别人不同,并且无论如何都没有中文选项?这个问题也

SQL server数据库如何下载和安装

《SQLserver数据库如何下载和安装》本文指导如何下载安装SQLServer2022评估版及SSMS工具,涵盖安装配置、连接字符串设置、C#连接数据库方法和安全注意事项,如混合验证、参数化查... 目录第一步:打开官网下载对应文件第二步:程序安装配置第三部:安装工具SQL Server Manageme

C#连接SQL server数据库命令的基本步骤

《C#连接SQLserver数据库命令的基本步骤》文章讲解了连接SQLServer数据库的步骤,包括引入命名空间、构建连接字符串、使用SqlConnection和SqlCommand执行SQL操作,... 目录建议配合使用:如何下载和安装SQL server数据库-CSDN博客1. 引入必要的命名空间2.

SQL Server配置管理器无法打开的四种解决方法

《SQLServer配置管理器无法打开的四种解决方法》本文总结了SQLServer配置管理器无法打开的四种解决方法,文中通过图文示例介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的... 目录方法一:桌面图标进入方法二:运行窗口进入检查版本号对照表php方法三:查找文件路径方法四:检查 S

一文详解Git中分支本地和远程删除的方法

《一文详解Git中分支本地和远程删除的方法》在使用Git进行版本控制的过程中,我们会创建多个分支来进行不同功能的开发,这就容易涉及到如何正确地删除本地分支和远程分支,下面我们就来看看相关的实现方法吧... 目录技术背景实现步骤删除本地分支删除远程www.chinasem.cn分支同步删除信息到其他机器示例步骤

Oracle 数据库数据操作如何精通 INSERT, UPDATE, DELETE

《Oracle数据库数据操作如何精通INSERT,UPDATE,DELETE》在Oracle数据库中,对表内数据进行增加、修改和删除操作是通过数据操作语言来完成的,下面给大家介绍Oracle数... 目录思维导图一、插入数据 (INSERT)1.1 插入单行数据,指定所有列的值语法:1.2 插入单行数据,指

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名