我需要寻找哪此类型的安全漏洞呢?
传统的数据库安全系统只侧重于以下几项:用户帐户、作用和对特定数据库目标的操作许可。例如,对表单和存储步骤的访问。必须对数据库系统做范围更广的彻底安全分析,找出所有可能领域内的潜在漏洞,包括以下提到的各项内容。
与销售商提供的软件相关的风险-软件的BUG、缺少操作系统补丁、脆弱的服务和选择不安全的默认配置。
与管理有关的风险 -可用的但并未正确使用的安全选项、危险的默认设置、给用户更多的不适当的权限,对系统配置的未经授权的改动。
与用户活动有关的风险-密码长度不够、对重要数据的非法访问以及窃取数据库内容等恶意行动。
以上各类危险都可能发生在网络设备、操作系统或数据库自身当中。对数据库服务器进行安全保护时,都应将这些因素考虑在内。
数据库安全-漏洞区域及示例
在重要数据库服务器中,还存在着多种数据库服务器的漏洞和错误配置。下面列出了几个实例。
安全特征不够成熟-绝大多数常用的关系数据库系统已经存在了十多年之久,并且具有强大的特性,产品非常成熟。但不幸的是,IT及安全专业人士认为理所当然应该具有的许多特征,在操作系统和现在普遍使用的数据库系统中,并没有提供。
非内建式数据库标准安全性能
MS SQL Server Sybase
Oracle 7 Oracle 8
帐户锁定设备 no no no yes
重命名管理帐户 no no no no
要求严密的口令 no no no yes
陈旧的帐户 no no no no
密码失效 no yes no yes
登录时间限制 no no no no
例如,上表列出了大多数IT专业人士期望或要求操作系统所应具备的特性,但在数据库服务器的标准安全设施中并未出现。由于这些数据库都可进行端口寻址的,操作系统的核心安全机制并未应用到与网络直接联接的数据库中。一些产品,例如Microsoft SQL Server, 都可利用功能更加强大的Windows NT安全机制去发现上面提到的安全漏洞。但是,考虑到兼容性问题(运行环境并不全是Windows NT),所以大多数依然执行MS SQL Server的安全标准。而实施则是另外一回事了。如果公司实用的是Oracle 8,管理员如何能知道是否真地实施了安全特性?是否一直在全公司中得到实施?