oracle 安全基线检查
来源:互联网 发布:c语言源代码及注解 编辑:程序博客网 时间:2024/06/06 23:56
oracle 安全基线检查
1.限制超级管理员远程登录
检查方法:使用sqlplus检查参数设置。SQL> show parameter REMOTE_LOGIN_PASSWORDFILE,参数REMOTE_LOGIN_PASSWORDFILE设置为NONE;修订算法:SQL> alter system set remote_login_passwordfile=none scope=spfile;SQL> shutdown immediateSQL> startup
2.用户属性控制
检查方法:查询视图dba_profiles和dba_users来检查profile是否创建。SQL> Select profile from dba_profiles;SQL> Select profile from dba_users;存在default以外的profile即可修订算法:SQL> create profile maintenance limit PASSWORD_VERIFY_FUNCTION F_PASSWORD_VERIFYPASSWORD_REUSE_MAX 5PASSWORD_GRACE_TIME 60FAILED_LOGIN_ATTEMPTS 6PASSWORD_LIFE_TIME 90;
3.数据字典访问权限
检查方法:使用sqlplus检查参数,SQL> show parameter O7_DICTIONARY_ACCESSIBILITY参数O7_DICTIONARY_ACCESSIBILITY设置为FALSE修订算法:SQL> alter system set O7_DICTIONARY_ACCESSIBILITY=FALSE scope=spfile;SQL> shutdown immediateSQL> startup
4.账户口令的生存期
检查方法:执行select dba_profiles.profile,resource_name, limit from dba_profiles, dba_users where dba_profiles.profile = dba_users.profile and dba_users.account_status='OPEN' and resource_name='PASSWORD_GRACE_TIME';查询结果中PASSWORD_GRACE_TIME小于等于90。修订算法:SQL> alter profile default limit PASSWORD_GRACE_TIME 60;
5.重复口令使用
检查方法:执行select dba_profiles.profile,resource_name, limit from dba_profiles, dba_users where dba_profiles.profile = dba_users.profile and dba_users.account_status='OPEN' and resource_name='PASSWORD_REUSE_MAX';查询结果中PASSWORD_REUSE_MAX大于等于5。修订算法:SQL> alter profile default limit PASSWORD_REUSE_MAX 5;
6.认证控制
检查方法:执行select dba_profiles.profile,resource_name, limit from dba_profiles, dba_users where dba_profiles.profile = dba_users.profile and dba_users.account_status='OPEN' and resource_name='FAILED_LOGIN_ATTEMPTS';查询结果中FAILED_LOGIN_ATTEMPTS等于6。修订算法:SQL>alter profile default limit FAILED_LOGIN_ATTEMPTS 6;
7.更改默认帐户密码
检查方法:sqlplus '/as sysdba'conn system/systemconn system/manager conn sys/sysconn sys/cHAnge_on_install conn scott/scottconn scott/tigerconn dbsnmp/dbsnmp conn rman/rmanconn xdb/xdb以上均不能成功登录修订算法:不要有空口令和弱口令
8.密码更改策略
检查方法:执行select profile,limit from dba_profiles where resource_name='PASSWORD_LIFE_TIME' and profile in (select profile from dba_users where account_status='OPEN');查询结果中PASSWORD_LIFE_TIME小于等于90。修订算法:SQL> alter profile default limit PASSWORD_LIFE_TIME 90;
9.密码复杂度策略
检查方法:执行select limit from dba_profiles where resource_name = 'PASSWORD_VERIFY_FUNCTION' and profile in (select profile from dba_users where account_status = 'OPEN');select text from dba_source where name='PASSWORD_VERIFY_FUNCTION';查询结果中不为“NULL”且策略为口令长度至少8位,并包括数字、小写字母、大写字母和特殊符号4类中至少3类修订算法:创建复杂度策略使用 sys 用户登录,执行如下脚本:D:\app\administrator\product\11.2.0\dbhome_1\RDBMS\ADMIN\utlpwdmg.sqloracle 10g, 必须使用sys用户登录,oracle 11g,可以使用 system创建;然后执行如下脚本:ALTER PROFILE DEFAULT LIMITPASSWORD_LIFE_TIME 90PASSWORD_GRACE_TIME 60PASSWORD_REUSE_TIME UNLIMITEDPASSWORD_REUSE_MAX 5FAILED_LOGIN_ATTEMPTS 6PASSWORD_LOCK_TIME 1PASSWORD_VERIFY_FUNCTION verify_function;
10.数据库审计策略
检查方法:1.使用参数设置,SQL> show parameter audit_trail参数audit_trail不为NONE。检查dba_audit_trail视图中或$ORACLE_BASE/admin/adump目录下是否有数据。2.查看审计表,检查是否有用户登录、操作记录select * from LOGON_AUDIT.LOGON_AUDIT;修订算法:SQL> alter system set audit_trail=os scope=spfile;SQL> shutdown immediateSQL> startup
11.设置监听器密码
检查方法:检查$ORACLE_HOME/network/admin/listener.ora文件中是否设置参数PASSWORDS_LISTENER。修订算法:$ ps -ef|grep tns$ lsnrctlLSNRCTL> set current_listener listener LSNRCTL> change_passwordLSNRCTL> save_configLSNRCTL> set password LSNRCTL> exit
12.限制用户数量
检查方法:检查文件/etc/group,确认除oracle安装用户无其它用户在DBA组中。修订算法:
13.使用数据库角色(ROLE)来管理对象的权限
检查方法:检查应用用户未授予dba角色:select * from dba_role_privs where granted_role='DBA';修订算法:create rolegrant 角色 to username; revoke DBA from username;
14.连接超时设置
检查方法:检查sqlnet.ora文件:$ cat $ORACLE_HOME/network/admin/sqlnet.ora查看文件中设置参数SQLNET.EXPIRE_TIME=15。 修订算法:$ vi sqlnet.oraSQLNET.EXPIRE_TIME=10
15.安全补丁
检查方法:查看oracle补丁是否为最新,$ opatch lsinventory修订算法:升级为最新补丁,需要Oracle Metalink 帐号下载安全补丁。
16.可信IP地址访问控制
检查方法:1.检查sqlnet.ora中是否设置tcp.validnode_checking = yes,tcp.invited_nodes :$ cat $ORACLE_HOME/network/admin/sqlnet.ora修订算法:$ vi sqlnet.oratcp.validnode_checking = yes tcp.invited_nodes = (ip1,ip2…)
17.资源控制
检查方法:查看空闲超时设置:select profile,limit from dba_profiles where profile='DEFAULT' and resource_name='IDLE_TIME';修订算法:IDLE_TIME返回结果应大于0
18.重要信息资源设置敏感标记
检查方法:1、询问数据库管理员是否对重要数据设置了敏感标记2、检查是否安装Oracle Label Security 模块:select username from dba_users;3、查看是否创建策略:select policy_name,status from dba_sa_policies;4、查看是否创建级别:select * from dba_sa_levels order by level_num;5、查看标签创建情况:select * from dba_sa_labels;6、询问重要数据存储表格名称7、查看策略与模式、表对应关系:select * from dba_sa_table_policies;判断是否针对重要信息资源设置敏感标签。修订算法:1、安装了Oracle Label Security模块2、可以查询到Oracle Label Security对象的用户LBACSYS3、创建了相应的策略4、创建了相应的级别5、创建了标签6、针对重要数据设置了敏感标记
0 0
- oracle 安全基线检查
- 软件公司安全测试基线
- 基线安全与linux基线加固方法
- oracle 移动窗口基线
- oracle sql计划基线
- Apache安全配置基线指导
- linux自动化安全基线脚本
- Web应用安全配置基线指导
- GNU/Linux安全基线与加固-0.1
- 1安全基线远程评估系统
- 基线
- 基线
- oracle健康检查对企业数据安全的重要性
- oracle 基线与优化(一)
- oracle 基线与优化(二)
- oracle 基线与优化(三)
- oracle 基线与优化(四)
- 对linux主机进行安全加固(基线配…
- 常见的TC测试点(持续更新中)
- pycharm中安装第三方软件库
- 论一枚小小程序员的重生
- 如何在datagrid中将表中的数值进行小数点位数保留
- sourcetree(git)不识别新添加的文件
- oracle 安全基线检查
- 【深度学习】caffe之pooling层
- 遇到PDF Transformer+转换的图像字体小了该怎么调整
- Python 正三角 倒三角 菱形 源代码
- Tomcat实现多域名配置
- HtmlToPdf保存网页成pdf教程
- count(*)/count(列) 谁更快
- mybatis foreach里用bind只获取集合的最后一个元素问题
- 从菜鸟到高手,R语言书单都在这!