在美西时间2018一月16日,北京时间今天凌晨,Oracle公司发布了 2018 年第一个安全补丁,这被称为 - Oracle Critical Patch Update,缩写为 CPU。
Oracle强烈推荐用户根据实际情况,尽快应用这些安全补丁。
我们看一下关于数据库的部分,Oracle这一次修复了什么漏洞。关于数据库部分有 5 个安全漏洞被修复,其中两个和数据库核心组件相关:Core RDBMS,值得引起注意,其他 3 个和组件相关:
其中第一个和第五个的CVE编号分别是:CVE-2017-10282 ,意味着这是一个在2017年被披露的问题。这个问题在CVE网站未被披露。
第五个是 CVE-2018-2575 ,在CVE网站上可以找到简单的描述,但是核心信息是不会披露的,你不会了解到任何相关的内容,这是为了确保安全,但是这也为用户判断是否修复、是否可以通过其他方式绕过漏洞带来了困惑。
是否应用这些补丁?要想做出判断就必须深入了解诱发问题的可能情况。
我们看看第一个核心问题:CVE-2017-10282。这个问题会因为 Create Session, Execute Catalog Role 触发,也就是说这是因为权限引起的,影响的版本包括已经发布的12从版本:12.1.0.2, 12.2.0.1 。
我们来重现一下这个问题,首先在多租户数据库中,创建一个具有 execute_catalog_role 权限的用户 :
我们看看会发生什么样的风险。
具备了权限,当我执行了一条语句命令之后:
执行SQL注入查询之后,这个普通用户获得了DBA的权限。这就是这个漏洞的影响之处。这是一个 12.2 版本的数据库。获得DBA权限的用户,就可以在数据库中为所欲为,这个漏洞够严重吗?
如果了解了风险,就可以通过权限控制,防范这个风险,也就不一定非要通过补丁去修正。
清醒的认知风险,正是正确判断决策的开始。