赞
踩
释放双眼,带上耳机,听听看~!
一、身份鉴别
1.1应提供用户身份标识唯一和鉴别信息复杂度检查功能,保证应用系统中不存在重复用户身份标识,身份鉴别信息不易被冒用
a)应对数据库系统的用户进行身份标识和鉴别;
测评方法及步骤:
1)以默认口令或者常见口令尝试登录数据库,查看是否成功,查看是否需要口令以及是否存在空口令
$ sqlplus/nolog
SQL>connuser/password as sysdba
2)或者使用Oracle客户端管理控制台(Enterprise Manager Console)进行登录
3)默认口令包括sys/change_on_install;system/manager,scott/tiger,常用口令包括oracle:admin/oracle;sys:admin:oracle等。(更改用户口令alter user user_name identified by password),或者用select * from dba_users;查看账号口令;
b)数据库系统管理用户身份标识应具有不易被冒用的特点,口令应有复杂度要求并定期更换;
测评方法及步骤:
1)select username,profile fromdba_user;了解用户使用的profile
2)select * from dba_profiles whereprofile=’default’;查看系统本身的profile的配置参数都有哪些?
PASSWORD_VERIFY_FUNCTIONverify_function为密码复杂度验证函数已经开启。这个oracle默认verify_function()函数,要求口令密码最小长度4、不能和用户名相同、至少有一个字母、数字和特殊字母,旧密码和新密码至少有三位不同。
3)检查utlpwdmg.sql中”– Check for the minimum length of the password”部分中”length (password)
1.2应启用登录失败处理功能,可采取结束会话、限制非法登录次数和自动退出等措施
测评方法及步骤:
1)select limitfrom dba_profiles where resource_name=’FAILED_LOGIN_ATTEMPTS
FAILED_LOGIN_ATTEMPTS:最大错误登录次数
PASSWORD_GRACE_TIME:口令失效后锁定 时间
PASSWORD_LIFE_TIME:口令有效时间
PASSWORD_LOCK_TIME:登录超过有效次数锁定时间
查看有无对各项进行时间/次数上的设置和限制;
1.3当对服务器进行远程管理时,应采取必要措施,防治鉴别信息在网络传输过程中被窃听
测评方法及步骤:
1)询问管理员是否采取加密手段保证数据库的访问信息不被窃听
2)查看数据库安装目录下的\admin\DB_NAME\pfile\initSID.ora中REMOTE_OS_AUTHENT的赋值,确认是否允许管理员对数据库进行远程连接和管理,其他版本用命令“SHOW PARAMETERS AUTH;”记录是否允许远程访问
3)或者图形界面管理中查看打开Oracle客户端管理控制台(Enterprise Manager Console);添加被评估数据库的连接信息,使用sys或system用户登录数据库;在左侧菜单栏中打开“例程”,选中“配置”栏,再选择“一般信息”页面,点击“所有初始化参数”;在弹出的界面中,查看“remote_os_authent”参数行的设置,为是否允许远程连接,如实记录该原始数据或拷屏
4)查看lsnrctl status查看是否存在TCPS协议;
1.4应为数据库系统的不同用户分配不同的用户名,确保用户名具有唯一性
测评方法及步骤:
1)询问管理员,是否为不同的用户分配了不同的账户。可检索账户“selectusername,account_status from dba_users”,并询问是否建立制度,确保不同人员使用不同用户登录数据库系统;
二、访问控制
2.1应提供访问控制功能,依据安全策略控制用户对文件、数据库表等客体的访问
a)应启用访问控制功能,依据安全策略控制用户对资源的访问;
测评方法及步骤:
1)linux下在数据库的操作系统中打开$ORACLE_HOME\bin目录,并找到可执行程序Oracle;
在操作系统中运行命令:ls –al oracle;查看其运行、读写权限;
2)访谈管理员是否有其他方式(如防火墙、ACL、IPsec等方式)进行端口/IP级的访问限制,或者其他方式对数据库访问的控制,并进行验证;
2.2应根据管理用户的角色分配权限,实现管理用户的权限分离,仅授予管理用户所需的最小权限
测评方法及步骤:
1)查看应用账户是否属于DBA组权限
2)select grantee from dba_role_privs where grante_role=’DBA’ and grante not in(‘SYS’,’SYSTEM’,’CTXSYS’,’WmSYS’,’SYSMAN’);
2.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。