|
知识路径: > 数据库系统安全 > 数据库安全概况 > 数据库安全隐患 >
|
相关知识点:11个
|
|
|
|
|
虽然多数数据库提供基本安全功能,但是没有机制来限制用户必须选择健壮的密码。多数数据库系统有公开的默认账号和默认密码。例如,Oracle系统有超过10个特殊的默认用户账号和密码,并且有特定的密码来管理一些数据库操作,如数据库的启动、控制网络监听进程和远程数据库登录特权。许多账号都能给入侵者完全访问数据库的机会,更严重的是,系统密码有些就储存在操作系统中的普通文本文件中。以Oracle数据库为例,其安全隐患如下:
|
|
|
. Oracle内部密码,储存在strXXX.cmd文件中,其中XXX是Oracle系统ID和SID,默认是“ORCL”。这个密码用于数据库启动进程,提供完全访问数据库资源。这个文件在Windows NT中需要设置权限。
|
|
|
. Oracle监听进程密码,保存在文件“listener.ora”(保存着所有的Oracle执行密码)中,用于启动和停止Oracle的监听进程。这就需要设置一个健壮的密码来代替默认的,并且必须对访问设置权限。入侵者可以通过这个弱点进行DoS攻击。
|
|
|
. Oracle的“orapw”文件权限控制,Oracle内部密码和账号密码允许SYSDBA角色保存在“orapw”文本文件中,该文件的访问权限应该被限制。即使加密,也能被入侵者暴力破解。
|
|
|
|
多数数据库系统提供了“扩展存储过程”的服务以满足数据库管理,但是这也成为数据库系统的后门。对于Sybase和SQL Server的账号“sa”,入侵者可以执行“扩展存储过程”来获得系统权限。只要登录为“sa”,就可以使用扩展存储过程xp_cmdshell,这允许Sybase和SQL Server用户执行操作系统命令。
|
|
|
|
软件程序漏洞造成数据安全机制或OS安全机制失效,攻击者可以获取远程访问权限。例如,“黛蛇”(Dasher.B)蠕虫。该蠕虫可以针对微软MS04-045、MS04-039漏洞或利用SQL溢出工具进行攻击。
|
|
|
|
数据库管理员分配给用户的权限过大,导致用户误删除数据库系统数据,或者泄露数据库敏感数据。
|
|
|
|
数据库系统用户选择弱口令或者口令保管不当都会给攻击者提供进入系统的机会。例如,在操作系统中,留下历史记录,泄露操作人员的数据库密码。
|
|
|
|
利用数据库和应用程序之间网络通信内容未经加密的漏洞,网络窃听者窃取诸如应用程序特定数据或数据库登录凭据等敏感数据。
|
|
|
|
数据库提供的安全机制不健全,导致安全策略无法实施。一些数据库不提供管理员账号重命名、登录时间限制、账号锁定。例如,MS SQL Server不能删除账号sa,且sa默认空口令。黑客无须口令就能直接登录并控制MS SQL Server。典型的安全事件就是Slammer Worm,该蠕虫利用MS SQL Server的sa默认空口令漏洞进行攻击。
|
|
|