ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:23.89KB ,
资源ID:7544722      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7544722.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(Oracle数据库系统加固规范.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

Oracle数据库系统加固规范.docx

1、Oracle 数据库系统加固规范数据库系统加固规范 Oracle 数据库系统加固规范 目 录 1 账号管理、认证授权账号管理、认证授权 1.1 账号账号 1.1.1 SHG-Oracle-01-01-01 编号 SHG-Oracle-01-01-01 名称 为不同的管理员分配不同的账号 实施目的 应按照用户分配账号,避免不同用户间共享账号,提高安全性。问题影响 账号混淆,权限不明确,存在用户越权使用的可能。系统当前状态 select *from all_users;select *from dba_users;记录用户列表 实施步骤 1、参考配置操作 create user abc1 iden

2、tified by password1;create user abc2 identified by password2;建立 role,并给 role 授权,把 role赋给不同的用户 2、补充操作说明 1、abc1 和 abc2 是两个不同的账号名称,可根据不同用户,取不同的名称;回退方案 删除用户:例如创建了一个用户 A,要删除它可以这样做 connect sys/密码 as sysdba;drop user A cascade;/就这样用户就被删除了 判断依据 标记用户用途,定期建立用户列表,比较是否有非法用户 实施风险 高 重要等级 备注 1.1.2 SHG-Oracle-01-01

3、-02 编号 SHG-Oracle-01-01-02 名称 删除或锁定无效账号 实施目的 删除或锁定无效的账号,减少系统安全隐患。问题影响 允许非法利用系统默认账号 系统当前状态 select *from all_users;select *from dba_users;记录用户列表 实施步骤 1、参考配置操作 alter user username lock;/锁定用户 drop user username cascade;/删除用户 回退方案 删除新增加的帐户 判断依据 首先锁定不需要的用户 在经过一段时间后,确认该用户对业务确无影响的情况下,可以删除 实施风险 高 重要等级 备注 1.1

4、.3 SHG-Oracle-01-01-03 编号 SHG-Oracle-01-01-03 名称 限制超级管理员远程登录 实施目的 限制具备数据库超级管理员(SYSDBA)权限的用户远程登录。问题影响 允许数据库超级管理员远程非法登陆 系统当前状态 查看 spfile,sqlnet.ora 内容 实施步骤 1、参考配置操作 在 spfile 中设置 REMOTE_LOGIN_PASSWORDFILE=NONE 来禁止SYSDBA 用户从远程登陆。在 sqlnet.ora 中设置SQLNET.AUTHENTICATION_SERVICES=NONE 来禁用 SYSDBA 角色的自动登录。回退方案

5、 还原 spfile,sqlnet.ora 文件配置 判断依据 判定条件 1.不能通过 Sql*Net 远程以 SYSDBA用户连接到数据库。2.在数据库主机上以 sqlplus/as sysdba连接到数据库需要输入口令。检测操作 1.以 Oracle用户登陆到系统中。2.以 sqlplus/as sysdba登陆到 sqlplus 环境中。3.使用 show parameter 命令来检查参数REMOTE_LOGIN_PASSWORDFILE 是否设置为 NONE。Show parameter REMOTE_LOGIN_PASSWORDFILE 4.检查在$ORACLE_HOME/netw

6、ork/admin/sqlnet.ora 文件中参数SQLNET.AUTHENTICATION_SERVICES 是否被设置成 NONE。实施风险 高 重要等级 备注 1.1.4 SHG-Oracle-01-01-04 编号 SHG-Oracle-01-01-04 名称 权限最小化 实施目的 在数据库权限配置能力内,根据用户的业务需要,配置其所需的最小权限。问题影响 账号权限越大,对系统的威胁性越高 系统当前状态 select*from user_sys_privs;select*from user_role_privs;select*from user_tab_privs;记录用户拥有权限

7、实施步骤 1、参考配置操作 grant 权限 to username;revoke 权限 from username;2、补充操作说明 用第一条命令给用户赋相应的最小权限 用第二条命令收回用户多余的权限 回退方案 还原添加或删除的权限 判断依据 业务测试正常 实施风险 高 重要等级 备注 1.1.5 SHG-Oracle-01-01-05 编号 SHG-Oracle-01-01-05 名称 数据库角色 实施目的 使用数据库角色(ROLE)来管理对象的权限。问题影响 账号管理混乱 系统当前状态 select*from dba_role_privs;select*from user_role_pr

8、ivs;记录用户拥有的 role 实施步骤 一创建角色,修改角色 1.创建角色,不指定密码:create role testrole;2创建角色,指定密码:create role testrole identified by passwd;3修改角色:alter role testrole identified by passwd;4.给角色授予权限。Grant select on Table_name to testrole;把角色赋予用户:(特别说明,授予角色不是实时的。如下:)grant testrole to User_Name;二、起用角色:给用户赋予角色,角色并不会立即起作用。1角

9、色不能立即起作用。必须下次断开此次连接,下次连接才能起作用。2.或者执行命令:有密码的角色 set role testrole identified by passwd 立即生效;3无密码的角色:set role testrole;回退方案 删除相应的 Role revoke role_name from user_name 判断依据 对应用用户不要赋予 DBA Role 或不必要的权限 实施风险 高 重要等级 备注 1.1.6 SHG-Oracle-01-01-06 编号 SHG-Oracle-01-01-06 名称 用户 profile 实施目的 对用户的属性进行控制,包括密码策略、资源限

10、制等。问题影响 账号安全性低.系统当前状态 SELECT profile FROM dba_users WHERE username=user_name;记录用户赋予的 profile 实施步骤 可通过下面类似命令来创建 profile,并把它赋予一个用户 SQL show parameter resource_limit SQL alter system set resource_limit=true;CREATE PROFILE profile_name LIMIT FAILED_LOGIN_ATTEMPTS 6 PASSWORD_LIFE_TIME 60 PASSWORD_REUSE_T

11、IME 60 PASSWORD_REUSE_MAX 5 PASSWORD_VERIFY_FUNCTION verify_function PASSWORD_LOCK_TIME 1/24 PASSWORD_GRACE_TIME 90;ALTER USER user_name PROFILE profile_name;回退方案 alter user dinya profile default;恢复默认 判断依据 1.可通过设置 profile 来限制数据库账户口令的复杂程度,口令生存周期和账户的锁定方式等。2.可通过设置 profile 来限制数据库账户的 CPU 资源占用。4、检测操作 1.以

12、DBA 用户登陆到 sqlplus中。2.查询视图 dba_profiles 和 dba_usres 来检查 profile 是否创建。实施风险 高 重要等级 备注 1.1.7 SHG-Oracle-01-01-07 编号 SHG-Oracle-01-01-07 名称 数据字典保护 实施目的 启用数据字典保护,只有 SYSDBA用户才能访问数据字典基础表。问题影响 数据库安全性低.系统当前状态 Show parameter O7_DICTIONARY_ACCESSIBILITY 记录当前状态 实施步骤 通过设置下面初始化参数来限制只有 SYSDBA 权限的用户才能访问数据字典。alter sy

13、stem set O7_DICTIONARY_ACCESSIBILITY=FALSE scope=spfile;回退方案 修改 O7_DICTIONARY_ACCESSIBILITY 为原来属性 判断依据 以普通用户登陆到数据库,不能查看 X$开头的表,比如:select*from sys.x$ksppi;检测操作 1.以 Oracle用户登陆到系统中。2.以 sqlplus/as sysdba登陆到 sqlplus 环境中。3.使用 show parameter 命令来检查参数O7_DICTIONARY_ACCESSIBILITY 是否设置为 FALSE。Show parameter O7_

14、DICTIONARY_ACCESSIBILITY 实施风险 高 重要等级 备注 1.1.8 SHG-Oracle-01-01-08 编号 SHG-Oracle-01-01-08 名称 检查 DBA 组用户 实施目的 限制在 DBA组中的操作系统用户数量,通常 DBA组中只有 Oracle安装用户。问题影响 影响组用户管理 系统当前状态 Cat/etc/passwd 实施步骤 参考配置操作 通过/etc/passwd 文件来检查是否有其它用户在 DBA组中。删除用户:#userdel username;锁定用户:1)修改/etc/shadow文件,用户名后加*LK*2)将/etc/passwd

15、文件中的 shell域设置成/bin/false 3)#passwd-l username 只有具备超级用户权限的使用者方可使用,#passwd-l username 锁定用户,用#passwd d username 解锁后原有密码失效,登录需输入新密码,修改/etc/shadow 能保留原有密码。回退方案 还原/etc/passwd 文件 判断依据 判定条件 无其它用户属于 DBA 组。检测操作 通过/etc/passwd 文件来检查是否有其它用户在 DBA组中。实施风险 高 重要等级 备注 1.2 口令口令 1.2.1 SHG-Oracle-01-02-01 编号 SHG-Oracle-0

16、1-02-01 名称 缺省密码长度复杂度限制 实施目的 对于采用静态口令进行认证的数据库,口令长度至少 6位,并包括数字、小写字母、大写字母和特殊符号 4类中至少 2类。问题影响 增加密码被暴力破解的成功率 系统当前状态 SELECT profile FROM dba_users WHERE username=user_name;记录用户赋予的 profile 实施步骤 1、参考配置操作 为用户建 profile,调整 PASSWORD_VERIFY_FUNCTION,指定密码复杂度 示例:SQLCREATE OR REPLACE FUNCTION my_password_verify(use

17、rname VARCHAR2,password VARCHAR2,old_password VARCHAR2)RETURN BOOLEAN IS 2 BEGIN 3 IF LENGTH(password)create profile TEST_PROFILE limit 2 password_verify_function MY_PASSWORD_VERIFY;回退方案 alter user user_name profile default;判断依据 1、判定条件 修改密码为不符合要求的密码,将失败 2、检测操作 alter user user_name identified by pass

18、wd;将失败 实施风险 低 重要等级 备注 1.2.2 SHG-Oracle-01-02-02 编号 SHG-Oracle-01-02-02 名称 缺省密码生存周期限制 实施目的 对于采用静态口令认证技术的设备,帐户口令的生存期不长于90 天,减少口令安全隐患。问题影响 密码被非法利用,并且难以管理 系统当前状态 SELECT profile FROM dba_users WHERE username=user_name;记录用户赋予的 profile 实施步骤 1、参考配置操作 为用户建相关 profile,指定 PASSWORD_GRACE_TIME 为 90天 2、补充操作说明 在 90

19、 天内,需要修改密码 回退方案 alter user user_name profile default;判断依据 3、判定条件 到期不修改密码,密码将会失效。连接数据库将不会成功 4、检测操作 connect username/password 报错 实施风险 低 重要等级 备注 1.2.3 SHG-Oracle-01-02-03 编号 SHG-Oracle-01-02-03 名称 密码重复使用限制 实施目的 对于采用静态口令认证技术的设备,应配置设备,使用户不能重复使用最近 5次(含 5次)内已使用的口令。问题影响 密码破解的几率增加 系统当前状态 SELECT profile FROM

20、dba_users WHERE username=user_name;记录用户赋予的 profile 实施步骤 1、参考配置操作 为用户建 profile,指定 PASSWORD_REUSE_MAX 为 2、补充操作说明 当前使用的密码,必需在密码修改次后才能再次被使用 回退方案 alter user user_name profile default;判断依据 3、判定条件 重用修改次内的密码,将不能成功 4、检测操作 alter user username identified by password1;如果 password1 在次修改密码内被使用,该操作将不能成功 实施风险 低 重要等

21、级 备注 1.2.4 SHG-Oracle-01-02-04 编号 SHG-Oracle-01-02-04 名称 密码重试限制 实施目的 对于采用静态口令认证技术的设备,应配置当用户连续认证失败次数超过 6 次(不含 6次),锁定该用户使用的账号。问题影响 允许暴力破解密码 系统当前状态 SELECT profile FROM dba_users WHERE username=user_name;记录用户赋予的 profile 实施步骤 1、参考配置操作 为用户建 profile,指定 FAILED_LOGIN_ATTEMPTS 为 2、补充操作说明 如果连续次连接该用户不成功,用户将被锁定

22、回退方案 alter user user_name profile default;判断依据 3、判定条件 连续次用错误的密码连接用户,第次时用户将被锁定 4、检测操作 connect username/password,连续次失败,用户被锁定 实施风险 中 重要等级 备注 1.2.5 SHG-Oracle-01-02-05 编号 SHG-Oracle-01-02-05 名称 修改默认密码 实施目的 更改数据库默认帐号的密码。问题影响 可能被破解密码 系统当前状态 询问管理员账号密码,并记录 实施步骤 参考配置操作 1.可通过下面命令来更改默认用户的密码:ALTER USER user_nam

23、e IDENTIFIED BY passwd;2.下面是默认用户密码列表:CTXSYS CTXSYS DBSNMP DBSNMP LBACSYS LBACSYS MDDATA MDDATA MDSYS MDSYS DMSYS DMSYS OLAPSYS MANAGER ORDPLUGINS ORDPLUGINS ORDSYS ORDSYS OUTLN OUTLN SI_INFORMTN_SCHEMA SI_INFORMTN_SCHEMA SYS CHANGE_ON_INSTALL SYSMAN CHANGE_ON_INSTALL SYSTEM MANAGER 回退方案 ALTER USER u

24、ser_name IDENTIFIED BY passwd;判断依据 判定条件 不能以用户名作为密码或使用默认密码的账户登陆到数据库。检测操作 1.以 DBA 用户登陆到 sqlplus中。2.检查数据库默认账户是否使用了用户名作为密码或默认密码。实施风险 中 重要等级 备注 2 日志配置日志配置 2.1.1 SHG-Oracle-02-01-01 编号 SHG-Oracle-02-01-01 名称 启用日志记录功能 实施目的 数据库应配置日志功能,对用户登录进行记录,记录内容包括用户登录使用的账号、登录是否成功、登录时间以及远程登录时用户使用的IP地址。问题影响 无法对用户的登陆进行日志记录

25、 系统当前状态 实施步骤 create table login_log-登入登出信息表(session_id int not null,-sessionid login_on_time date,-登入时间 login_off_time date,-登出时间 user_in_db varchar2(30),-登入的 db user machine varchar2(20),-机器名 ip_address varchar2(20),-ip 地址 run_program varchar2(20)-以何程序登入);create or replace trigger login_on_info-记录登

26、入信息的触发器 after logon on database Begin insert into login_log(session_id,login_on_time,login_of f_time,user_in_db,machine,ip_address,run_program)select AUDSID,sysdate,null,sys.login_user,machine,SYS_CO NTEXT(USERENV,IP_ADDRESS),program from v$session where AUDSID=USERENV(SESSIONID);-當前SESSION END;crea

27、te or replace trigger login_off_info-记录登出信息的触发器 before logoff on database Begin update login_log set login_off_time=sysdate where session_id=USERENV(SESSIONID);-当前 SESSION exception when others then null;END;回退方案 ALTER TRIGGER 名称 DISABLE;drop trigger 名称;判断依据 判定条件 登录测试,检查相关信息是否被记录 补充说明 触发器与 AUDIT 会有相

28、应资源开消,请检查系统资源是否充足。特别是 RAC 环境,资源消耗较大。实施风险 低 重要等级 备注 2.1.2 SHG-Oracle-02-01-02 编号 SHG-Oracle-02-01-02 名称 记录用户对设备的操作 实施目的 数据库应配置日志功能,记录用户对数据库的操作 问题影响 无法对用户的操作进行日志记录 系统当前状态 实施步骤 create table employees_log(who varchar2(30),action varchar2(20);when date);create or replace trigger biud_employ_copy before i

29、nsert or update or delete on employees_copy declare l_action employees_log.action%type;begin if inserting then l_action:=insert;elsif updating then l_action:=delete;elsif deleting then l_action:=update;else raise_application_error(-2001,you shoule never ever get this error.);end if;insert into emplo

30、yees_log(who,action,when)values(user,l_action,sysdate);end biud_employ_copy;回退方案 ALTER TRIGGER 名称 DISABLE;drop trigger 名称;判断依据 实施风险 高 重要等级 备注 2.1.3 SHG-Oracle-02-01-03 编号 SHG-Oracle-02-01-03 名称 记录系统安全事件 实施目的 通过设置让系统记录安全事件,方便管理员分析 问题影响 无法记录系统的各种安全事件 系统当前状态 实施步骤 参考配置操作 create table jax_event_table(eve

31、ntname varchar2(30),time date);create trigger tr_startup after startup ondatabase begin insertinto jax_event_table values(ora_sysevent,sysdate);end;create trigger tr_shutdown beforeshutdownondatabase begin insertinto jax_event_table values(ora_sysevent,sysdate);end;回退方案 ALTER TRIGGER 名称 DISABLE;drop

32、 trigger 名称;判断依据 记录系统安全事件 实施风险 高 重要等级 备注 2.1.4 SHG-Oracle-02-01-04 编号 SHG-Oracle-02-01-04 名称 数据库审计策略 实施目的 根据业务要求制定数据库审计策略 问题影响 日志被删除后无法恢复。系统当前状态 show parameter audit_sys_operations;show parameter audit_trail;查看返回值,并记录.实施步骤 1、参考配置操作 SQL alter system set audit_sys_operations=TRUE scope=spfile;SQL alte

33、r system set audit_trail=db scope=spfile;SQL show parameter audit;SQL audit all on table_name;回退方案 noaudit all on table_name;恢复 audit_sys_operations,audit_trail 属性 判断依据 判定条件 对审计的对象进行一次数据库操作,检查操作是否被记录。检测操作 1.检查初始化参数 audit_trail 是否设置。2.检查 dba_audit_trail 视图中或$ORACLE_BASE/admin/adump 目录下是否有数据。补充说明 AUDIT会有相应资源开消,请检查系统资源是否充足。特别是RAC环境,资源消耗较大 实施风险 低 重要等级 备注 3 通信协议通信协议 3.1.1 SHG-Oracle-03-01-01 编号 SHG-Ora

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1