资源描述
等级保护测评-检查表-数据库oracle(三级)
类别
测评内容
测评方式示例
符合情况
身份鉴别
a) 应对登录操作系统和数据库管理系统的用户进行身份标识和鉴别
应检查Oracle数据库系统,查看是否存在空口令或默认口令的用户(Oracle默认满足,但应防止口令出现空口令或默认口令情况)。
默认口令,如:SYS / CHANGE_ON_INSTALL;SYSTEM/MANAGER 。
常用口令:oracle:oracle/admin/ora92(ora+版本); sys:oracle/admin; system:oralce/admin 。
输入:用管理员帐户进入SQL*Plus,执行select username from dba_users;
b) 操作系统和数据库管理系统用户身份鉴别信息应具有不易被冒用的特点,口令应有复杂度要求并定期更换
1、在SQL*Plus:
select * from dba_profiles where resource_name =
'PASSWORD_VERIFY_FUNCTION';
select * from dba_profiles where resource_name =
'PASSWORD_REUSE_MAX';
查看相关参数是否符合以下要求:
a) PASSWORD_VERIFY_FUNCTION 8
b) PASSWORD_REUSE_MAX 5
2、查看是否启用口令复杂度函数,执行命令:select limit from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_VERIFY_FUNCTION'
检查utlpwdmms.sql中“-- Check for the minimum length of the password”部分中“length(password)<“后的值。
或者:查看口令管理制度以及执行记录,并选择验证。
c) 应启用登录失败处理功能,可采取结束会话、限制非法登录次数和自动退出等措施
1、在SQL*Plus:
select * from dba_profiles where
resource_nameresource_name =
'FAILED_LOGIN_ATTEMPTS';
查看相关参数是否符合以下要求:
FAILED_LOGIN_ATTEMPTS 10
2、执行命令:select limit from dba_profiles where profile='DEFAULT' and resource_name='FAILED_LOGIN_ATTEMPTS'。
执行命令:select limit from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LOCK_TIME' 。
d) 当对服务器进行远程管理时,应采取必要措施,防止鉴别信息在网络传输过程中被窃听
1、询问数据库管理员是否采取措施保证远程管理数据加密传输 。
在服务器网络实用工具中查看是否启用“强制协议密码”
2、查看是否采用远程管理,如果采取远程管理,
是否采用加密的方式。Oracle远程管理加密可以通
过Oracle Net Manager(网络管理器)工具实现。
e) 应为操作系统和数据库的不同用户分配不同的用户名,确保用户名具有唯一性
1、询问数据库管理员,是否为不同的登录用户分配不同的用户名,保证对用户行为可审计。
防止不同用户使用相同的用户名登录数据库系统。
2、查看是否存在多人共用一个管理员帐号的现象
(A、B角需要账户)
f) 应采用两种或两种以上组合的鉴别技术对管理用户进行身份鉴别
包括三种方法:数据库鉴别、操作系统鉴别和密码文件鉴别。数据库鉴别方法是常见方式,其所需鉴别信息存放在在system表空间的某个表中;特殊的数据库操作,如启动、关闭数据库需要通过操作系统或者密码文件鉴别方法。
还可以借助应用程序服务器提供网络验证,可以引入Kerberos、RADIUS、PKI,如【clt-oracle svr/radius clt-radius svr-authent svr】。
oracle数据库通过sqlnet.ora文件中的参数SQLNET.AUTHENTICATION_SERVICES【NONE|NTS】、PFILE(或SPFILE)文件中的参数REMOTE_LOGIN_PASSWORDFILE【NONE|EXCLUSIVE|SHARED】和口令文件PWDsid.ora三者协同作用实现身份认证。
访问控制
a) 应启用访问控制功能,依据安全策略控制用户对资源的访问
查看是否依据安全策略为角色限定了权限。
查看是否为每个登录用户分配并限制了服务器角色。
b) 应根据管理用户的角色分配权限,实现管理用户的权限分离,仅授予管理用户所需的最小权限
1、查看每个登录用户的角色和权限,是否是该用户所需的最小权限
查看是否存在应用账户属于DBA组权限,
2、在SQL*Plus:
select grantee from dba_role_privs where
granted_role='DBA' and grantee not in
('SYS','SYSTEM','CTXSYS','WmSYS','SYSMAN');
c) 应实现操作系统和数据库系统特权用户的权限分离
是否由不同员工分担操作系统管理员与数据库管理员
d) 应严格限制默认帐户的访问权限,重命名系统默认帐户,修改这些帐户的默认口令
默认口令,如:SYS / CHANGE_ON_INSTALL;SYSTEM/MANAGER 。
常用口令:oracle:oracle/admin/ora92(ora+版本); sys:oracle/admin; system:oralce/admin 。
检查有没有这些默认口令
e) 应及时删除多余的、过期的帐户,避免共享帐户的存在
在sqlqlus中执行命令select username,account_status from dba_users
查看是否有存在scott、outln、ordsys等范例数据库帐户
查看这些帐户是否有存在过期帐户
是否存在多人共享帐户
f) 应对重要信息资源设置敏感标记
检查是否安装Oracle Label Security模块:select username from dba_users。
查看是否创建策略:SELECT policy_name, status from DBA_SA_POLICIES。
查看是否创建级别:SELECT * FROM dba_sa_levels ORDER BY level_num。
查看标签创建情况:select * from dba_sa_labels。
g) 应依据安全策略严格控制用户对有敏感标记重要信息资源的操作
对于ORACLE,可以执行命令:select * from dba_sa_user_labels,查看用户的标签,并选择特定的用户和表进行验证策略。
询问重要数据存储表格名称。
查看策略与模式、表的对应关系:select * from dba_sa_tables_policies;判断是否针对重要信息资源设置敏感标签。
安全审计
a) 审计范围应覆盖到服务器和重要客户端上的每个操作系统用户和数据库用户
执行命令:select value from v$parameter where name=‘audit_trail’,查看是否开启审计功能。
用不同的用户登录数据库系统并进行不同的操作,在Oracle数据库中查看日志记录是否满足要求。
b) 审计内容应包括重要用户行为、系统资源的异常使用和重要系统命令的使用等系统内重要的安全相关事件
show parmeter audit_trail。
show parameter audit_sys_operations。
select sel,upd,del,ins,gra from dba_obj_audit_opts。
select sel,upd,del,ins,gra from dba_stmt_audit_opts。
select sel,upd,del,ins,gra from dba_priv_audit_opts
c) 审计记录应包括事件的日期、时间、类型、主体标识、客体标识和结果等
1、审计日之应包括:登录日志记录、数据库操作
日志(可选),并检查$ORACLE_BASE/admin/adump
目录下是否有数据。
2、记录一条日志内容,确认审计记录包括事件的日期、时间、类型、主体标识(用户名)、客体标识(数据库表、字段或记录)和结果等
d) 应能够根据记录数据进行分析,并生成审计报表
询问管理员是否安装并使用Oracle Audit Vault等日志分析工具并查看相关报表。
e) 应保护审计进程,避免受到未预期的中断
用户可以通过alter system set audit_trail=none,并重启实例关闭审计功能,查看是否成功。
f) 应保护审计记录,避免受到未预期的删除、修改或覆盖等
查看是否严格限制用户访问审计记录的权限,如采用audit vault等
剩余信息保护
a) 应保证操作系统和数据库管理系统用户的鉴别信息所在的存储空间,被释放或再分配给其他用户前得到完全清除,无论这些信息是存放在硬盘上还是在内存中
N/A
b) 应确保系统内的文件、目录和数据库记录等资源所在的存储空间,被释放或重新分配给其他用户前得到完全清除
N/A
入侵防范
a) 应能够检测到对重要服务器进行入侵的行为,能够记录入侵的源IP、攻击的类型、攻击的目的、攻击的时间,并在发生严重入侵事件时提供报警
N/A
b) 应能够对重要程序完整性进行检测,并在检测到完整性受到破坏后具有恢复的措施
N/A
c) 操作系统应遵循最小安装的原则,仅安装需要的组件和应用程序,并通过设置升级服务器等方式保持系统补丁及时得到更新
N/A
恶意代码防范
a) 应安装防恶意代码软件,并及时更新防恶意代码软件版本和恶意代码库
N/A
b) 主机系统防恶意代码产品应具有与网络防恶意代码产品不同的恶意代码库
N/A
c) 应支持防恶意代码的统一管理
N/A
资源控制
a) 应通过设定终端接入方式、网络地址范围等条件限制终端登录
N/A
b) 应根据安全策略设置登录终端的操作超时锁定
N/A
c) 应对重要服务器进行监视,包括监视服务器的CPU、硬盘、内存、网络等资源的使用情况
N/A
d) 应限制单个用户对系统资源的最大或最小使用限度
N/A
e) 应能够对系统的服务水平降低到预先规定的最小值进行检测和报警
N/A
展开阅读全文