百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 优雅编程 > 正文

软考-信息安全工程师学习笔记92—Oracle 数据库安全分析与防护

sinye56 2024-10-08 16:37 3 浏览 0 评论

Oracle 概况

Oracle 公司于 1979 年首先推出基于 SQL 标准关系型数据库产品,可在多种硬件平台上运行,支持多种操作系统

Oracle遵守数据存取语言,操作系统,用户接口和网络通信协议的工业标准


Oracle 数据库安全分析

Oracle 数据库提供多种安全机制和技术。

  • 认证
  • 访问控制
  • 特权管理
  • 透明加密等

(1)用户认证

Oracle 数据库的认证机制

  • Oracle 数据库认证
  • 支持操作系统认证
  • 支持网络认证
  • 支持多级认证
  • 支持SSL 认证

Oracle 数据库的认证方式采用“用户名+口令”,具有口令加密、账户锁定、口令生命期和过期、口令复杂度验证等安全功能。

对于数据库管理员认证,Oracle 数据库要求进行特别认证,支持强认证操作系统认证口令文件认证

网络认证支持第三方认证PKI 认证远程认证

(2)访问控制

Oracle 数据库内部集成网络访问控制和数据对象授权控制。

(3)保险库

Oracle 数据库建立数据库保险库(Datebase Vault, DV)机制,该机制用于保护敏感数据,具有防止数据系统未授权变更、多因素可信授权、职责隔离、最小化特权的功能。

DV 机制通过设置安全域(Realm)和命令规则(Command Rules)对特权进行控制


(4)安全审计和数据库防火墙

Oracle 数据库具有对其内部所有发生的活动进行审计的能力

Oracle 数据库可审计的活动有 3 种类型:

  • 登录尝试
  • 数据库活动
  • 对象存取

Oracle 数据库防火墙的主要功能

①提供SQL 语法分析引擎,检查进入数据库的 SQL 语句,精确地确定是否允许、记录、警告、 替换或阻止 SQL。

②支持白名单黑名单基于例外名单的策略

  • 白名单就是数据库防火墙认可的 SQL 语句。
  • 黑名单是指数据库不允许含有特定用户、IP 地址或特定类型的 SQL 语句
  • 基于例外名单的策略则提供安全策略设置的灵活性,可以覆盖白名单或黑名单策略,例外安全策略可以基于 SQL 类别、时间、应用、用户和 IP 地址等属性来实施。



(5)高级安全功能

Oracle 数据库提供透明数据加密(Transparent Data Encryption)和数据屏蔽(Data Masking)机制,以保护数据安全


Oracle 数据库系统的透明数据加密可以阻止者绕过数据库,是为了避免攻击者强制从存储设备上读取敏感信息而提出的安全技术方案


Oracle 安全最佳实践

(1)增强 Oracle 数据库服务器的操作系统安全。

最小化系统服务,安装最新补丁,关闭不需要的网络通信端口。

(2)最小化安装 Oracle 删除不必要的组件。

采用满足需求的最小安装随着版本的不断升级,Oracle 的功能也越来越多,整个系统越来越复杂,因此安全威胁也越来越大。根据需求只安装所需内容,可以降低数据库安全风险

(3)安装最新的安全补丁。

Oracle 的安全漏洞还是非常多的,一个比较安全的办法是时刻关注 Oracle 的安全公告,并及时安装安全补丁。

(4)删除或修改默认的用户名和密码。

Oracle 的默认安装会建立很多默认的用户名和密码,大部分的数据库管理员都不清楚到底有多少数据库用户,从而留下了很大的安全隐患。

(5)启用认证机制。

Oracle 支持多种认证方式,为了安全,必须启用认证机制,防止非法用户访问数据库

(6)设置好的口令密码策略。

在 Oracle 中,可以自定义密码的复杂度。其中, 概要文件设置了多项密码安全策略,如最大错误登录次数、口令失效锁定时间、口令有效时间、口令复杂检查

(7)设置最小化权限。

采用最小授权原则,给用户尽量少的权限。

(8)限制连接 Oracle 的 IP 地址。

由于 Oracle 的 TNS 监听器有许多安全漏洞,其中的一些漏洞甚至能让入侵者得到操作系统的超级用户权限,或者能修改数据库中的数据。因此,在打补丁的同时限制连接的 IP,避免攻击者的 IP 访问到数据库。

(9)传输加密。

Oracle 采用的是 TNS 协议传输数据,在传输过程中不能保证其中的数据不被窃听乃至修改,因此最好对传输进行加密。例如,采用 SSL 加密机制。

(10)启用 Oracle 审计。

记录所有的用户失败访问和分析安全事件日志。 加强数据库日志的记录,特别是审核数据库登录“失败”事件,定期查看 Oracle 日志,检查是否有可疑的登录事件发生。

(11)定期查看 Oracle 漏洞发布信息,及时修补漏洞。

Oracle 漏洞公布网址有 Oracle 厂商自身、应急响应部门、安全专业服务公司等。

(12)实施 Oracle 灾备计划。

监测 Oracle 的安全运行,定期对数据库数据进行备份。针对 Oracle 的可能安全事件,制定安全应急预案。



学习参考资料:

信息安全工程师教程(第二版)

建群网培信息安全工程师系列视频教程

信息安全工程师5天修炼

相关推荐

Linux基础知识之修改root用户密码

现象:Linux修改密码出现:Authenticationtokenmanipulationerror。故障解决办法:进入单用户,执行pwconv,再执行passwdroot。...

Linux如何修改远程访问端口

对于Linux服务器而言,其默认的远程访问端口为22。但是,出于安全方面的考虑,一般都会修改该端口。下面我来简答介绍一下如何修改Linux服务器默认的远程访问端口。对于默认端口而言,其相关的配置位于/...

如何批量更改文件的权限

如果你发觉一个目录结构下的大量文件权限(读、写、可执行)很乱时,可以执行以下两个命令批量修正:批量修改文件夹的权限chmod755-Rdir_name批量修改文件的权限finddir_nam...

CentOS「linux」学习笔记10:修改文件和目录权限

?linux基础操作:主要介绍了修改文件和目录的权限及chown和chgrp高级用法6.chmod修改权限1:字母方式[修改文件或目录的权限]u代表所属者,g代表所属组,o代表其他组的用户,a代表所有...

Linux下更改串口的权限

问题描述我在Ubuntu中使用ArduinoIDE,并且遇到串口问题。它过去一直有效,但由于可能不必要的原因,我觉得有必要将一些文件的所有权从root所有权更改为我的用户所有权。...

Linux chown命令:修改文件和目录的所有者和所属组

chown命令,可以认为是"changeowner"的缩写,主要用于修改文件(或目录)的所有者,除此之外,这个命令也可以修改文件(或目录)的所属组。当只需要修改所有者时,可使用...

chmod修改文件夹及子目录权限的方法

chmod修改文件夹及子目录权限的方法打开终端进入你需要修改的目录然后执行下面这条命令chmod777*-R全部子目录及文件权限改为777查看linux文件的权限:ls-l文件名称查看li...

Android 修改隐藏设置项权限

在Android系统中,修改某些隐藏设置项或权限通常涉及到系统级别的操作,尤其是针对非标准的、未在常规用户界面显示的高级选项。这些隐藏设置往往与隐私保护、安全相关的特殊功能有关,或者涉及开发者选项、权...

完蛋了!我不小心把Linux所有的文件权限修改了!在线等修复!

最近一个客户在群里说他一不小心把某台业务服务器的根目录权限给改了,本来想修改当前目录,结果执行成了根目录。...

linux改变安全性设置-改变所属关系

CentOS7.3学习笔记总结(五十八)-改变安全性设置-改变所属关系在以前的文章里,我介绍过linux文件权限,感兴趣的朋友可以关注我,阅读一下这篇文章。这里我们不在做过的介绍,注重介绍改变文件或者...

Python基础到实战一飞冲天(一)--linux基础(七)修改权限chmod

#07_Python基础到实战一飞冲天(一)--linux基础(七)--修改权限chmod-root-groupadd-groupdel-chgrp-username-passwd...

linux更改用户权限为root权限方法大全

背景在使用linux系统时,经常会遇到需要修改用户权限为root权限。通过修改用户所属群组groupid为root,此操作只能使普通用户实现享有部分root权限,普通用户仍不能像root用户一样享有超...

怎么用ip命令在linux中添加路由表项?

在Linux中添加路由表项,可以使用ip命令的route子命令。添加路由表项的基本语法如下:sudoiprouteadd<network>via<gateway>这...

Linux配置网络

1、网卡名配置相关文件回到顶部网卡名命名规则文件:/etc/udev/rules.d/70-persistent-net.rules#PCIdevice0x8086:0x100f(e1000)...

Linux系列---网络配置文件

1.网卡配置文件在/etc/sysconfig/network-scripts/下:[root@oldboynetwork-scripts]#ls/etc/sysconfig/network-s...

取消回复欢迎 发表评论: