2021年4月Oracle数据库补丁分析报告

点击上方"蓝字"

关注我们,享更多干货!

引言

编写目的

编写此文档为了更好地指导Oracle补丁安装工作,细化工作任务,规范安装升级操作。

背景

Oracle对于其产品每个季度发行一次安全补丁包CPU (Critical Patch Update)与PSU (Patch Set Update),通常是为了修复产品中的安全隐患,并可能包含对一些严重bug以及功能组件的修复。对于已知的安全漏洞及安全小组检测到的安全漏洞,本次通过安装数据库安全补丁的方式予以修复。

术语解释

数据库补丁包括补丁集(patchset)、补丁集更新(PSU)、临时补丁(one-off patch),在12C版本以后Oracle改变了过去的PSU为RUR (Release Update Revision),变ProactiveBP为 RU (Release Update)。

Database Patch Set Update

这就是DBA们常论道的PSU。Oracle选取在每个季度用户下载数量最多,并且得到验证具有较低风险的补丁放入到每个季度的PSU中,修复比较严重的一些问题,包含每个季度的CPU,是累积型的。针对数据库以及数据库客户端的重要修复。包括安全(CPU)内容。没有优化器修复,虽然在描述PSU的时候会用到数据库版本第5位,但实际上打完PSU后并不会真正改变数据库的版本,需要从opatch lsinventory确认。

注意:

(1) Windows上没有CPU和PSU,对于Windows和Exadata,Oracle使用Bundle Patch代替PSU,Bundle Patch会包含PSU的内容;

(2) 在11G之前有些PSU可以直接安装,而有些PSU则必须要求安装了上一个版本的PSU之后才能继续安装。比如对于10.2.0.4版本的数据库来说,PSU 10.2.0.4.4可以直接安装在最原始的10.2.0.4.0版本中,而最新的PSU 10.2.0.4.8则必须要求先安装10.2.0.4.4。更多信息参考PSU 附带的readme.txt;

(3) 从11.2.0.2版本开始,一个新的补丁策略被引入,11.2.0.1之后发布的Patch Set本身就是一个完整的安装包,不再需要基础的Release版本安装。

MOS站点中Oracle Recommended Patches — Oracle Database [ID 756671.1] 文档中查到各个产品版本最新的PSU。

查看PSU

$opatch lsinventory -bugs_fixed | grep -i ‘DATABASE PSU’

11g r2 and above

$ opatch lsinventory | grep “Patch Set Update”

Database Grid Infrastructure Patch Set Update

这就是GI PSU,适用于11.2.0.1以上的RAC DB 安装在Unix平台上 (包括单实例RAC)。补丁包括Grid Infrastructure的重要修复,也包括匹配的DB PSU,但不包括任何OJVM PSU,季度发行,在11.2以前叫CRS PSU,从11.2后不再发行。

OJVM Patch Set Update

这就是OJVM PSU, 适用于数据库版本11.1.0.7,11.2.0.3,11.2.0.4,12.1.0.1及以上所有平台。须知Windows平台有特殊的OJVM PSU覆盖补丁安装于Windows BP上。

2014年10月提出OJVM PSU,但是OJVM和JDBC有单独的补丁。

2015年1月之后OJVM PSU包括JDBC针对数据库的修复,在12c中的DBBP中包含了OJVM PSU。

Critical Patch Update

Oracle在2005年开始引入的产品安全更新策略,CPU最早的雏形出现在2005年,该项目致力于为客户周期性地提供累积性的补丁以修复安全漏洞。没有一个强制要求安装CPU的理由,Oracle仅仅是强烈推荐实施这些补丁以降低潜在的安全风险并降低受到骇客入侵成功的概率, 由月/年指定,如11.2.0.4 Jan 2015 SPU。这个指的就是CPU补丁。每季度发布一次,用来修复安全方面的一些补丁,是累积型的。目前(2012年10月)已经更名为Security Patch Update (SPU)。

这类问题本来不属于软件错误,在正常使用中不会出现任何问题。但是别有用心的人可以通过运行非常精巧设计的代码,绕过数据库系统的安全管理机制,达到非授权存取的目的。

分为Normal CPU和Molecular CPU(最早是从10.2.0.3 CPUJUL2007)For LINUX/UNIT 平台, CPU Bundle Patch For Windows平台。

PSU包含了最新的CPU, 从12.1.0.1开始CPU不再单独发布而是包含在PSU中发布。

Release Updates

从2017年7月开始,Oracle对数据库和GI(Grid Infrastructure) 12.2及之后版本的主动修补程序进行了更改。传统的“Patchset Update”和“Database Proactive Bundle Patch” 对于12.2数据库将不再发布。将采用新的发布方式Release Updates (Updates)和Release Update Revisions (Revisions)。

为了支持与安全相关的修复以及高优先级的非安全修复,将在每年的1月、4月、7月和10月每个季度发布一个Release Updates (Updates)。Oracle的季度发布的Updates包含客户最有可能遇到的错误的修复。

查询优化器错误修复,在之前版本的PSU以及BP中并不包含的这些修复被加入到Updates中,但是默认是禁用的。

Updates包含安全相关的补丁。

Updates会经过广泛的测试,包括功能测试、压力测试、性能测试以及破坏性测试。

及时应用Updates可以降低碰到已知问题的可能性。

Updates在RAC环境下可以使用rolling的方式不停机安装。

除了季度性发布的Updates, Release Update Revisions (Revisions) 也会每个季度发行,包含对Updates的回退修复以及包含最新的安全方面的修复。

在每个Update发布后的六个月内,会有2个针对这个Update的 Revisions。比如,Release.Update.1和Release.Update.2,这里"1"和"2"代表的是Revision。

补丁集涉及数据库版本和数据库字典的升级,并可能导致数据库某些特性(如执行计划)发生变化,属重大变更;补丁集更新是针对特定patchset的多个补丁合集,属重大变更;临时补丁是针对某个特定bug的修正或多个相关联的补丁合并(merge patch)。

任务描述

漏洞分析

与数据库相关的安全补丁共有18个,分别如下:

  1. 10 new security patches for Oracle Database Products

  2. 1 new security patch for Oracle Global Lifecycle Management

  3. No new security patches for Oracle Graph Server and Client, but third party patches are provided

  4. 4 new security patches for Oracle NoSQL Database

  5. 1 new security patch for Oracle REST Data Services

  6. No new security patches for Oracle Secure Backup, but third party patches are provided

  7. 2 new security patches for Oracle Spatial Studio

  8. No new security patches for Oracle TimesTen In-Memory Database, but third party patches are provided

这18个安全补丁中,只有10个是与Oracle数据库有关,所以我们重点分析这10个安全补丁。详细列表如下:

  1. 本次风险评分都不太高,没有上8分以上的,所以不是很严重的漏洞。

  2. 四个无需身份认证即可远程利用(不需要用户密码即可利用),这四个漏洞分别是:
    ① CVE-2020-5360仅影响安装了oracle客户端的程序,对于oracle数据库无影响;
    ② Workload Manager组件的CVE-2020-17527 ;
    ③ 安装了Dell第三方插件的CVE-2019-3740;
    ④ Oracle Application Express组件的CVE-2020-11023。
    这四个漏洞中,攻击复杂性都是Low,也就是容易被利用,如果数据库应用了这些组件,需要特别注意。

  3. 一个Java VM漏洞:CVE-2021-2234,Java VM的漏洞过去修复了很多,多数和反序列化有关,如果之前处置过,对权限细化管控,则无需担忧,Create Session权限是这个CVE 的条件,数据库权限严格管控,则无大风险。

  4. 一个本地Application Express漏洞:CVE-2020-7760和Oracle Apex相关,通过http协议攻击,但是需要有效的用户帐号,做好账户管理,风险不大。如果未使用APEX,则无需关注。

  5. CVE-2021-2245是Unified Audit-统一审计管理特性相关的漏洞,需要Create Audit Policy,一般数据库开自带审计较少,都是使用专门审计软件,所以风险最低,安全分是2.7分。

  6. CVE-2021-2035是通过数据库的Recovery备份组件进行攻击,需要DBA权限,管控这个权限可以降低风险,这个漏洞实现复杂度低,容易被攻击,风险评分4.1分,建议梳理数据库的权限,或者应用补丁修复。

  7. CVE-2021-2207是在执行RMAN备份恢复的时候,才会进行攻击,这个漏洞实现复杂度低,容易被攻击,风险评分2.3分,如果没有调用RMAN备份恢复,使用其他备份软件备份,不用关注,或者应用补丁修复。

  8. Valut小众组件漏洞:CVE-2021-

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值