您好,欢迎访问三七文档
当前位置:首页 > 行业资料 > 冶金工业 > 等级保护 应用和数据库安全测评 黄洪-数据库
信息安全等级测评师培训信息安全等级测评师培训数据库安全测评公安部信息安全等级保护评估中心公安部信息安全等级保护评估中心公安部信息安全等级保护评估中心公安部信息安全等级保护评估中心黄洪黄洪1前言前言——背景介绍背景介绍地位和作用数据库中存放的数据(包括业务数据),它是企业信息资产的核心,如果数据被破坏/篡改或非授权获取将给企业带来严重的损失,甚至会给国家安全带来威胁。数据库安全是整个安全链条上的一个重要环节,如果数据数据库安全是整个安全链条上的个重要环节,如果数据库安全中的任何环节出现问题都可能会损害整个链的牢固性给我们整个系统的安全带来严重的损失性,给我们整个系统的安全带来严重的损失。主要类型Oracle、DB2、SQLServer、MYSQL、Sybase。2前言前言——常见威胁(一)常见威胁(一)非授权访问身份验证是阻止入侵者的第一道防线,如果口令太弱就可能被攻击者暴力破解,攻击者也可通过其他手段获取密码(如开发者将密码明文存放在.NET配置文件中,攻击者就可能通过它获取密码),从而从远程对数据库进行操作。可能通过它获取密码),从而从远程对数据库进行操作。特权提升当用户具有某个可信帐户的特权时就可能发生特权提升当用户具有某个可信帐户的特权时,就可能发生特权提升攻击(甚至威胁主机系统的安全)。始终以最小特权的帐户行并仅分权并为数库新户运行,并仅分配最小权限,并为数据库打上最新补丁。3前言前言——常见威胁(二)常见威胁(二)SQL注入利用现有应用程序,将(恶意)的SQL命令注入到后台数据库引擎执行的能力。在数据库端可通过以下方式来阻止SQL注入攻击:使用存储过程和参数化的命令,避免动态SQL,并限制所有用户的权限。SQL,并限制所有用户的权限。其他针对SQLS数据库还存在很多的威胁如针对漏洞进针对SQLServer数据库还存在很多的威胁,如针对漏洞进行攻击、绕过访问控制进行非授权访问等。45前言前言——攻击实例攻击实例6前言前言——指标选取指标选取在《基本要求》中的位置数据库安全是主机安全的一个部分数据库的测评一个部分,数据库的测评指标是从“主机安全”和“数据安全及备份恢复”中根据数据库的特点映射中根据数据库的特点映射得到的。7内容目录内容目录1.身份鉴别1.身份鉴别2.访问控制2.访问控制3.安全审计3.安全审计4.资源控制资源控制5.备份和恢复8身份鉴别身份鉴别a)应对登录操作系统和数据库系统的用户进行身份标识和鉴别条款理解为防止操作系统用户对SQLServer数据库进行非授权管理(系统管理员和数据库管理元分离),应选择“SQLServer和Windows”方式,并且让用户每次登录数据Server和Windows方式,并且让用户每次登录数据库时都必须输入密码(必须保证登录用户为强密码)。检查方法检查方法查看身份认证方式是否为“SQLServer和Windows”。试数库查统输户密试图登录数据库,查看系统是否提示输入用户密码。9身份鉴别身份鉴别ORACLE检查方法应检查Oracle数据库系统,查看是否存在空口令或默认口令的用户(Oracle默认满足,但应防止口令出现空口令或默认口令情况)。默认口令,如:SYS/CHANGEONINSTALL;默认口令,如:SYS/CHANGE_ON_INSTALL;SYSTEM/MANAGER。常用口令:oracle:oracle/admin/ora92(ora+版本);常用口令:oracle:oracle/admin/ora92(ora+版本);sys:oracle/admin;system:oralce/admin。10身份鉴别身份鉴别11身份鉴别身份鉴别b)操作系统和数据库系统管理用户身份标识应具有不易被冒用的特点口令应有复杂度要求并定期更换点,口令应有复杂度要求并定期更换条款理解应采取技术或管理手段,保证SQLServer数据库的口令不易被冒用,如口令足够长,口令复杂(如规定字符应混有大、小写字母、数字和特殊字符),口令定期更新等。检查方法检查方法询问数据库管理员口令策略,查看有无空口令用户。让管理员以SA的身份登录数据库查看是否为弱口令让管理员以SA的身份登录数据库,查看是否为弱口令。12身份鉴别身份鉴别ORACLE检查方法查看是否启用口令复杂度函数,执行命令:selectlimitfromdba_profileswhereprofile='DEFAULT'andresource_name='PASSWORD_VERIFY_FUNCTION'检查utlpwdmms.sql中“--Checkfortheminimum检查utlpwdmms.sql中Checkfortheminimumlengthofthepassword”部分中“length(password)“后的值length(password)后的值。或者:查看口令管理制度以及执行记录,并选择验证。13身份鉴别身份鉴别c)应启用登录失败处理功能,可采取结束会话、限制非法登录次数和自动退出等措施和自动退出等措施条款理解为防止暴力破解数据库用户的口令,应保证数据库具有登录失败处理功能(设置非法登录次数的限制值,对超过限制值的登录终止其鉴别会话或临时封闭帐号)。检查方法检查方法执行命令sp_configure,查看有无登录失败处理的配置。询问数据库管理员是否采取其他措施保证上述功能的实现。14身份鉴别身份鉴别ORACLE检查方法执行命令:selectlimitfromdba_profileswhereprofile='DEFAULT'andresource_name='FAILED_LOGIN_ATTEMPTS'。执行命令:selectlimitfromdbaprofileswhere执行命令:selectlimitfromdba_profileswhereprofile='DEFAULT'andresourcename='PASSWORDLOCKTIME'resource_name=PASSWORD_LOCK_TIME。15身份鉴别身份鉴别d)当对服务器进行远程管理时,应采取必要措施,防止鉴别信息在网络传输过程中被窃听络传输过程中被窃听条款理解为防止鉴别信息在网络传输过程中被窃听,SQLServer数据库可采用包括SSL在内的方式对数据进行加密传输。检查方法询问数据库管理员是否采取措施保证远程管理数据加密传输询问数据库管理员是否采取措施保证远程管理数据加密传输。在服务器网络实用工具中查看是否启用“强制协议密码”。16身份鉴别身份鉴别ORACLE检查方法1)查看initSID.ora中REMOTE_OS_AUTHENT的赋值2)或者:查看listener.ora文件中的“LISTENER”-“DESCRIPTION”-“ADDRESS_LIST”-“ADDRESS”-“PROTOCOL”项目的赋值PROTOCOL项目的赋值3)SQLPLUS:showparameterremoteloginpasswordfileremote_login_passwordfile17身份鉴别身份鉴别e)应为操作系统和数据库系统的不同用户分配不同的用户名,确保用户名具有唯性用户名具有唯一性条款理解SQLServer数据库系统中不能创建相同用户名的用户,但应防止不同用户使用相同的用户名登录数据库系统。检查方法询问数据库管理员,是否为不同的登录用户分配不同的用户询问数据库管理员,是否为不同的登录用户分配不同的用户名,保证对用户行为可审计。18身份鉴别身份鉴别f)应采用两种或两种以上组合的鉴别技术对管理用户进行身份鉴别条款理解为保证数据库的安全,系统应采取除口令外的其他鉴别技术为保数据库的安,系统应采取除口令外的其他别技术(如生物识别技术、数字证书等)对用户身份进行鉴别,两次重复输入口令不属于两种组合鉴别技术。次重复输入口令不属于两种组合鉴别技术。检查方法询问数据库管理员是否采取除身份鉴别外的其他鉴别方式询问数据库管理员,是否采取除身份鉴别外的其他鉴别方式(对于SQLSERVER2005以上的版本,可以采取证书的方式对存储过程进行访问控制)。19身份鉴别身份鉴别ORACLE说明包括三种方法:数据库鉴别、操作系统鉴别和密码文件鉴别。数据库鉴别方法是常见方式,其所需鉴别信息存放在在system表空间的某个表中;特殊的数据库操作,如启动、关闭数据库需要通过操作系统或者密码文件鉴别方法。关闭数据库需要通过操作系统或者密码文件鉴别方法。还可以借助应用程序服务器提供网络验证,可以引入KerberosRADIUSPKI如【clt-oraclesvr/radiusKerberos、RADIUS、PKI,如【cltoraclesvr/radiusclt-radiussvr-authentsvr】。20身份鉴别身份鉴别ORACLE说明oracle数据库通过sqlnet.ora文件中的参数SQLNET.AUTHENTICATION_SERVICES【NONE|NTS】、PFILE(或SPFILE)文件中的参数REMOTELOGINPASSWORDFILE【REMOTE_LOGIN_PASSWORDFILE【NONE|EXCLUSIVE|SHARED】和口令文件PWDsid.ora三者协同作用实现身份认证三者协同作用实现身份认证。21内容目录内容目录1.身份鉴别1.身份鉴别2.访问控制2.访问控制3.安全审计3.安全审计4.资源控制资源控制5.备份和恢复22访问控制访问控制a)应启用访问控制功能,依据安全策略控制用户对资源的访问条款理解应依据安全策略限定每个角色的权限,并且为每个用户分配应依据安策略限定每个角色的权限,并为每个用户分配一个或多个角色。检查方法检查方法查看是否依据安全策略为角色限定了权限。查看是否为每个登录用户分配并限制了服务器角色查看是否为每个登录用户分配并限制了服务器角色。2324访问控制访问控制b)应根据管理用户的角色分配权限,实现管理用户的权限分离,仅授予管理用户所需的最小权限授予管理用户所需的最小权限条款理解应依据安全策略限定管理用户的权限仅授予管理用户所需应依据安全策略限定管理用户的权限,仅授予管理用户所需的最小权限,如对业务数据库进行管理的用户不能进行系统操作等操作等。检查方法查看每个登录用户的角色和权限。25访问控制访问控制C)应实现操作系统和数据库系统特权用户的权限分离条款理解在数据库中,尽量将系统管理、审计管理和业务数据库的管在数据库中,尽量将系统管理、审计管理和务数据库的管理的用户权限进行分离。检查方法检查方法询问并查看除系统管理员外,是否还有其他特权用户。26访问控制访问控制d)应严格限制默认帐户的访问权限,重命名系统默认帐户,修改这些帐户的默认口令些帐户的默认口令条款理解在数据库中,尽量重命名默认帐户,如果无法重命名,则应加强这些帐户的口令。检查方法询问数据库系统管理员,是否加强了系统管理员的口令强度询问数据库系统管理员,是否加强了系统管理员的口令强度,并让管理员登录数据库系统进行口令验证。27访问控制访问控制e)应及时删除多余的、过期的帐户,避免共享帐户的存在条款理解应删除数据库中多余的、过期的帐户,如测试帐号等。应删除数据库中多余的、过期的帐户,如测试帐号等。检查方法执行命令:selectnamefromsyslogins询问每个帐户执行命令:selectnamefromsyslogins,询问每个帐户的作用。28访问控制访问控制f)应对重要信息资源设置敏感标记条款理解在数据库中能对重要信息资源设置敏感标记(如非密、秘密在数据库中能对重要信息资源设置敏感标记(如非密、秘密、机密、绝密等),为实现强制访问控制(在自主访问控制中资源的所有者指定用户对资源的访问权而超级用户实中,资源的所有者指定用户对资源的访问权,而超级用户实际可
本文标题:等级保护 应用和数据库安全测评 黄洪-数据库
链接地址:https://www.777doc.com/doc-332705 .html