oracle数据库运维中的攻防实战-k8凯发天生赢家

oracle数据库运维中的攻防实战
作者:思成 发布时间:2017-12-31

oracle 数据库经历了几十年的演进,无数个版本更新和漏洞修复,但天下没有无懈可击的完美程序,风险仍然存在,并且往往是多个角度和多个层面共同作用的结果。我们曾使用数据库扫描工具为用户数据库进行安全检查,发现在oracle的数据库运维中存在很多问题,包括:弱口令、默认密码、数据库后门、数据库配置不当、敏感数据、高危审计、版本失去安全支持、数据库漏洞以及数据库勒索病毒等。这些安全风险的存在让数据泄露或被篡改等安全事件一触即发。

11月21日20:00,安华金和攻防实验室安全专家刘思成作客雷锋网,直播讲解《oracle数据库攻防案例分享》,通过数据库攻防实战演练,介绍数据库运维侧可能存在的安全风险和隐患。今天我们将公开课内容分享出来,希望能为数据库运维人员提供参考,进一步提高数据库安全运维能力。

目前,运维侧最常会遇到的安全问题主要为以下三类:

数据库配置不当

数据库安全漏洞

数据库勒索病毒

数据库配置不当

oracle数据库存在几千个参数配置项,难免出现配置错误。当发生错误配置时,带来的安全问题甚至比数据库漏洞造成的后果要严重的多。我们把和安全相关的数据库配置分为四类:1)参数设置不当;2)角色设置不当;3)系统权限设置不当;4)包权限设置不当。

1)参数设置不当

这是针对所有数据库用户而言,参数错误的设置可能会给漏洞提供温床,也可能本身就能当作漏洞执行。

2)角色权限设置不当

角色权限设置不当:当角色被赋予低权限用户,相当于交出了完整的java权限,可以让低权限用户通过oracle 账号权限获得操作系统的操作权限,从而可在操作系统上为所欲为。

3)系统权限设置不当

系统权限设置不当一旦出现,这种情况就更危险了。执行任意存储过程的权限一旦被赋予低权限用户,后者可以利用某些调用者权限存储过程实现提权到dba的目的。

4)包权限设置不当

包权限设置不当也是一件麻烦事儿。如果把包权限给了低权限用户,低权限用户就可以利用语句以sys权限调用执行计划函数,从而有机会执行任意sql语句。

防护建议

1)严格按照oracle官方网站的建议进行配置,切莫简单满足应用需求,而自毁长城。

2)对所有账号实施最小权限控制。尤其是对于第三方开发调试所给予的数据账号密码一定要保持满足需求下的最小权限,最小权限将有效的减小数据库被入侵的威胁。

3)禁止或删除数据库对os文件访问的函数或存储过程,避免殃及整个数据库所在的操作系统和内网环境。

参照以上三条安全防护建议,90%的安全问题都可迎刃而解。此外,还有一种更省事的办法,就是直接用成熟的数据库漏扫产品进行定期检查。链接为安华金和数据库漏扫的一个免费版,大家可以拿去试用。http://www.dbscloud.cn/dbscan.html

数据库安全漏洞

数据库漏洞威胁一直是数据库的严重威胁。从不同角度来看数据库存在多种不同分类方式,按照漏洞属性分,数据库漏洞大体分为两种类型:第一是数据库专有漏洞,第二类是通用性软件漏洞。

上图基本涵盖了最主流的数据库漏洞类型。当两个中危漏洞组合使用,往往会产生高危漏洞的效果。以中危漏洞cve-2012-1675和cve-2012-3137漏洞组合攻击为例。两个漏洞和数据库通讯协议密切相关,一旦被黑客利用,可以借此从网络端对oracle 数据库发动攻击。

黑客组合使用该漏洞组合可以分为三步:依次为探、改、破。

第一步:探。利用cve-2012-1675 窃听用户客户端和数据库之间的通讯内容,盗取数据;

第二步:改。利用代理转发机制,对特定语句进行改包,以此返回黑客想盗取的信息;

第三步:破。通过网络窃取拿到数据库登录包的身份验证部分,再利用cve-2012-3137漏洞进行离线暴力破解,拿到数据库的用户名和密码。

防护建议

1)如果允许第一时间内打补丁是非常必要的。官方补丁能解决95%的问题,攻击数据库经常都是用的很老的漏洞,0day比例就很小。

2)如果由于测试结果或环境的问题无法打补丁,那么只能采用具备虚拟补丁能力的数据库防火墙产品进行加固,虚拟补丁通过规则可以防护大部分已知数据库漏洞的攻击。

数据库勒索病毒

数据库勒索病毒是目前最为常见,也最为危险的数据库攻击方式。其中,和数据库有关系的主要有三种:

1)客户端软件比特币勒索;

2)oracle 升级包恶意脚本;

3)文件系统加密比特币勒索。

文件系统加密相对来说,和数据库关系没那么紧密。这种类型基本只在windows上遇到过,不过据悉已经在linux上出现。该病毒的勒索目标主要是文件系统上的一些特定后缀的文件。根据和数据库相关的程度可以分为三种:不加密数据文件、只加密文件头 和文件整体加密。防护此类攻击的最佳方式即做好备份工作。

而与客户端勒索病毒类似的oracle升级包恶意脚本,两者手法基本完全一致。客户端勒索病毒主要存在于客户端的一些自动执行脚本中,这些恶意脚本如果被放在升级包中就成了oracle 升级包恶意脚本。

防护建议

1)无论是客户端还是升级包都请从正规渠道下载,并计算md5值千万别用破解版,免费的结果是省了小钱丢了数据。

2)利用数据库防火墙等类似产品对勒索病毒进行传播阻断,需要选用有上下文判断能力的成熟防火墙产品。

3)定期使用数据库漏扫工具进行查杀,排除安全隐患。


网站地图