SQL Server系统表的作用以及安全检查列(二)

2014-11-24 08:41:08 ? 作者: ? 浏览: 1
aster..Sp_helpstartup看有无可疑的木马进程。 确定没有人已经在这里放置秘密的后门程序。 使用 Sp_unmakestartup 移除任何

可疑进程。

14. 检查master..Sp_password看有无trojan代码。比较你的产品scripts和一个新安装的系统的默认scripts而且方便的保存。

15. 记录所有的用户存取访问情况。 从企业管理器做这些设定或通过以sa登陆进入查询分析器的下列各项:
xp_instance_regwrite NHKEY_LOCAL_MACHINE, NSOFTWARE\ Microsoft\MSSQLServer\MSSQLServer,NAuditLevel,REG_DWORD,3

16. 重写应用程序使用更多用户定义的储存和察看进程所以一般的对表的访问可以被禁用。 在这里你也应该看到由于不必经常进行查询计划操

作而带来的性能提升。

17. 除去不需要的网络协议。

18. 注意SQL 服务器的物理安全。把它锁在固定的房间里,并且注意钥匙的安全。只要有机会到服务器面前,就总是会找到一个方法进入。

19. 建立一个计划的任务运行:
findstr/C:" Login Failed"mssql7\log\*.*">\mssql7\log\*.*

然后再重定向输出到一个文本文件或电子邮件,因此你监测失败的登录尝试。这也为系统管理员提供一个好的记录攻击的方法。 也有很多用来

分析NT日志事件的第三者工具。 注意: 你可能需要将路径换成你安装SQL的路径。

20. 设定非法访问和登陆失败日志警报。到 企业管理器中的"Manager SQL Server Messages "搜寻任何有关无权访问的消息 ( 从查

找"login failed"和"denied"开始). 确定你所有感兴趣的信息被记录到事件日志。然后在这些信息上设定警报 , 发送一个电子邮件或信

息到一个能够对问题及时响应的操作员。

21. 确定在服务器和数据库层次上的角色都只被授给了需要的用户。 当 SQL Server 安全模型 7 有许多增强的时候, 它也增加额外的许可层

,我们必须监控该层,确定没有人被授予了超过必需的权限。

22. 经常检查组或角色全体会员并且确定用组分配权限,这样你的审计工作能够简化。 确定当你在的时候 , 公众的组不能从系统表执行选择

操作。

23. 花些时间审计用空密码登陆的请求。 使用下面的代码进行空密码检查:
使用主体
选择名字,
password
from syslogins
where password is null
order by name

24. 如果可能,在你的组织中利用整合的安全策略。 通过使用整合的安全策略,你能够依赖系统的安全,最大简化管理工作从维护二个分开的

安全模型中分离开来。这也不让密码接近连接字串。

25. 检查所有非sa用户的存取进程和扩充存储进程的权限。 使用下面的查询定期的查询哪一个进程有公众存储权限。(在SQL Server中 使用

"type" 而不是 "xtype"):
Use master
select sysobjects.name
from sysobjects,sysprotects
where sysprotects.uid=0
AND xtype 在 (X,P)
AND sysobjects.id=sysprotects.id
Order by name

26. 当时用企业管理器的时候,使用整合的安全策略。 过去,企业管理器被发现在标准的安全模态中储存 "sa" 密码在注册表的 plaintext

中。 注意: 即使你改变模态,密码也会留在注册表中

-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: