SQL Server 2000数据库服务器的安全战略[MSSQL防范]
本文“SQL Server 2000数据库服务器的安全战略[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
sql server 2000的安全配置在举行SQL Server 2000数据库的安全配置之前,首先必须对操作系统举行安全配置,保证操作系统处于安全状况.然后对要利用的操作数据库软件(程序)举行必要的安全考核,比方对ASP、PHP等脚本,这是很多基于数据库的Web利用常呈现的安全隐患,关于脚本主如果一个过滤问题,需求过滤一些近似“,; @ /”等字符,避免破坏者构造恶意的SQL语句.接着,安装SQL Server2000后请打上最新SQL补钉SP3.
SQL Server的安全配置
1.利用安全的密码战略
我们把密码战略摆在全部安全配置的第一步,请注意,很大都据库账号的密码过于简单,这跟系统密码过于简单是一个原理.关于sa更应当注意,同时不要让sa账号的密码写于利用程序大概脚本中.结实的密码是安全的第一步,倡议密码含有多种数字字母组归并9位以上.SQL Server2000安装的时刻,假如是利用混合情势,那么就需求输入sa的密码,除非您确认必须利用空密码,这比从前的版本有所改良.同时养成按期改正密码的好习惯,数据库管理员应当按期查看能否有不符合密码要求的账号.
2.利用安全的账号战略
由于SQL Server不能更改sa用户名称,也不能删除这个超级用户,所以,我们必须对这个账号举行最强的保护,当然,包含利用一个非常强壮的密码,最好不要在数据库利用中利用sa账号,只有当没有其他办法登录到 SQL Server 实例(比方,当其他系统管理员不可用或忘掉了密码)时才利用 sa.倡议数据库管理员新成立个拥有与sa一样权限的超级用户来管理数据库.安全的账号战略还包含不要让管理员权限的账号泛滥.
SQL Server的认证情势有Windows身份认证和混称身份认证两种.假如数据库管理员不但愿操作系统管理员来通过操作系统登录来接触数据库的话,可以在账号管理中把系统账号“BUILTIN\Administrators”删除.不过这样做的后果是一旦sa账号忘掉密码的话,就没有办法来恢复了.很多主机利用数据库利用只是用来做查询、改正等简单功效的,请按照实际需求分配账号,并赋予仅仅可以满意利用要求和需求的权限.比方,只要查询功效的,那么就利用一个简单的public账号可以select便可以了.
3.加强数据库日记的记录
考核数据库登录事件的“失利和成功”,在实例属性中挑选“安全性”,将此中的考核级别选定为全部,这样在数据库系统和操作系统日记里面,就具体记录了全部账号的登录事件.请按期查看SQL Server日记查抄能否有可疑的登录事件发生,大概利用Dos号令.
4.管理扩大存储历程
对存储历程举行大手术,并且对账号调用扩大存储历程的权限要慎重.其实在大都利用中根本用不到多少系统的存储历程,而SQL Server的这么多系统存储历程只是用来适应广大用户需求的,所以请删除不必要的存储历程,因为有些系统的存储历程能很简单地被人操纵起来晋升权限或举行破坏.假如您不需求扩大存储历程Xp_cmdshell请把它去掉.利用这个SQL语句:
use master sp_dropextendedproc 'Xp_cmdshell'
Xp_cmdshell是进入操作系统的最佳捷径,是数据库留给操作系统的一个大后门.假如您需求这个存储历程,请用这个语句也可以恢复过来.
sp_addextendedproc 'xp_cmdshell', 'xpSQL70.dll'
假如您不需求请丢弃OLE自动存储历程(会造成管理器中的某些特点不能利用).
这些历程以下:
Sp_OACreate Sp_OADestroy Sp_OAGetErrorInfo Sp_OAGetProperty Sp_OAMethod Sp_OASetProperty Sp_OAStop
去掉不需求的注册表拜候的存储历程,注册表存储历程乃至可以读出操作系统管理员的密码来,号令以下:
Xp_regaddmultistring Xp_regdeletekey Xp_regdeletevalue Xp_regenumvalues Xp_regread Xp_regremovemultistring Xp_regwrite
还有一些其他的扩大存储历程,也最好查抄查抄.在处理存储历程的时刻,请确认一下,避免造成对数据库或利用程序的毁伤.
5.利用协议加密
SQL Server 2000利用的Tabular Data Stream协议来举行网络数据交换,假如不加密的话,全部的网络传输都是明文的,包含密码、数据库内容等,这是一个很大的安全威胁.能被人在网络中截获到他们需求的东西,包含数据库账号和密码.所以,在条件答应情形下,最好利用SSL来加密协议,当然,您需求一个证书来支持.
6.不要让人随便探测到您的TCP/IP端口
默许情形下,SQL Server利用1433端口监听,很多人都说SQL Server配置的时刻要把这个端口改变,这样别人就不会简单地知道利用的什么端口了.惋惜,通过微软未公开的1434端口的UDP探测可以很简单知道SQL Server利用的什么TCP/IP端口.不过微软还是考虑到了这个问题,毕竟公开并且开放的端口会惹起不必要的麻烦.在实例属性中挑选TCP/IP协议的属性.挑选躲藏 SQL Server实例.假如躲藏了SQL Server实例,则将禁止对试图列举网络上现有的 SQL Server实例的客户端所发出的广播作出呼应.这样,别人就不能用1434来探测您的TCP/IP端口了(除非用Port Scan).
7.改正TCP/IP利用的端口
请在上一步配置的底子上,更改原默许的1433端口.在实例属性中挑选网络配置中的TCP/IP协议的属性,将TCP/IP利用的默许端口变成其他端口.
8.回绝来自1434端口的探测
由于1434端口探测没有限制,可以被别人探测到一些数据库信息,并且还大概遭到DoS攻击让数据库服务器的CPU负荷增大,所以对Windows 2000操作系统来说,在IPSec过滤回绝掉1434端口的UDP通信,可以尽大概地躲藏您的SQL Server.
9.对网络衔接举行IP限制
SQL Server 2000数据库系统本身没有供应网络衔接的安全办理办法,但是Windows 2000供应了这样的安全机制.利用操作系统自己的IPSec可以实现IP数据包的安全性.请对IP衔接举行限制,只保证自己的IP可以拜候,也回绝其他IP举行的端口衔接,对来自网络上的安全威胁举行有效的掌握.
上面主要介绍的一些SQL Server的安全配置,经过以上的配置,可以让SQL Server本身具有充足的安全防备本领.当然,更主要的还是要加强内部的安全掌握和管理员的安全培训,并且安全性问题是一个长期的办理历程,还需求今后举行更多的安全保护.
以上是“SQL Server 2000数据库服务器的安全战略[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |