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

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

mhr18 2024-10-05 17:23 18 浏览 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天修炼

相关推荐

SQL入门知识篇(sql入门新手教程视频)

一、什么是数据库?什么是SQL?1、数据库:存放数据,可以很多人一起使用2、关系数据库:多张表+各表之间的关系3、一张表需要包含列、列名、行4、主键:一列(或一组列),其值能够唯一区分表中的每个行。5...

postgresql实现跨库查询-dblink的妙用

技术导语:用惯了oracle的dblink,转战postgresql,会一时摸不着头脑。本期就重点详细讲解postgresql如何安装dblink模块及如何使用dblink实现跨库查询。安装cont...

Oracle VM VirtualBox虚拟机软件(oracle vm virtualbox win10)

OracleVMVirtualBox是一款完全免费的虚拟机软件,下载银行有提供下载,软件支持安装windows、linux等多个操作系统,让用户可以在一台设备上实现多个操作系统的操作。同时软件有着...

开源 SPL 轻松应对 T+0(开源srs)

T+0问题T+0查询是指实时数据查询,数据查询统计时将涉及到最新产生的数据。在数据量不大时,T+0很容易完成,直接基于生产数据库查询就可以了。但是,当数据量积累到一定程度时,在生产库中进行大数据...

中小企业佳选正睿ZI1TS4-4536服务器评测

随着科技的不断发展,各行各业对于数据使用越加频繁,同时针对服务器的选择方面也就越来越多样化和细分化。那么对于我们用户来说,如何选择符合自身业务需求和最优性价比的产品呢?笔者将通过刚刚购买的这台服务器的...

MFC转QT:Qt基础知识(mfc和qt的区别)

1.Qt框架概述Qt的历史和版本Qt是一个跨平台的C++应用程序开发框架,由挪威公司Trolltech(现为QtCompany)于1991年创建。Qt的发展历程:1991年:Qt项目启动1995年...

数据库,QSqlTableModel(数据库有哪些)

QMYSQL——mysqlQSQLITE——sqliteQOICQ——orcale所需头文件.pro增加sql#include<QSqlDatabase>#include<Q...

python通过oledb连接dbf数据库(python连接jdbc)

起因:因为工作需要,需要读取dbf文件和系统数据中数据进行校对,因为知道dbf文件可以用sql查询,所以想能不能像mysql/oracle那样连接,再调用执行sql方法,通过一系列百度,尝试,最终通过...

Excel常用技能分享与探讨(5-宏与VBA简介 VBA与数据库)

在VBA(VisualBasicforApplications)中使用数据库(如Access、SQLServer、MySQL等)具有以下优点,适用于需要高效数据管理和复杂业务逻辑的场景:1....

Excel常用技能分享与探讨(5-宏与VBA简介 VBA与数据库-二)

以下是常见数据库软件的详细配置步骤,涵盖安装、驱动配置、服务启动及基本设置,确保VBA能够顺利连接:一、MicrosoftAccess适用场景:小型本地数据库,无需独立服务。配置步骤:安装Acces...

Windows Docker 安装(docker安装windows容器)

Docker并非是一个通用的容器工具,它依赖于已存在并运行的Linux内核环境。Docker实质上是在已经运行的Linux下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的L...

Windows下安装Ubuntu虚拟机方法(windows下安装ubuntu20)

在Windows下安装Ubuntu虚拟机。选择使OracleVMVirtualBox安装Ubuntu虚拟机。1.下载和安装OracleVMVirtualBox:访问OracleVMVir...

java入门教程1 - 安装和配置(win和linux)

windows安装和配置安装javahttps://www.oracle.com/java/technologies/javase/javase-jdk8-downloads.html目前大部分项目的...

Centos7 安装Tomcat8服务及配置jdk1.8教程

1、下载jdk1.8压缩包下载地址:https://www.oracle.com/java/technologies/javase/javase8-archive-downloads.htmltom...

全网最完整的免费java教程讲义(一)——java配置和安装

一,安装Java1)安装JDK要学习和使用java,首先需要安装JDK(JavaDevelopemntKit),相当于java安装包。Java的下载页在甲骨文官网上:https://www.or...

取消回复欢迎 发表评论: