配置SQL Server 2000九大办法安全[MSSQL防范]
本文“配置SQL Server 2000九大办法安全[MSSQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
数据库是电子商务、金融以及ERP系统的底子,普通都保存侧重要的商业搭档和客户信息.大大都企业、组织以及政府部门的电子数据都保存在各种数据库中,他们用这些数据库保存一些个人资料,比方员工薪水、个人资料等等.数据库服务器还掌握着敏感的金融数据.包含交易记录、商业事件和帐号数据,战略上的大概专业的信息,比方专利和工程数据,乃至市场筹划等等应当保护起来避免竞争者和其他不法者获得的资料.数据完好性和合理存取会遭到很多方面的安全威胁,包含密码战略、系统后门、数据库操作以及本身的安全筹划.但是数据库普通没有象操作系统和网络这样在安全性上遭到器重.
微软的sql server是一种遍及利用的数据库,很多电子商务网站、企业内部信息化平台等都是基于SQL Server上的,但是数据库的安全性还没有被人们更系统的安全性平等起来,大都管理员认为只要把网络和操作系统的安全搞好了,那么全部的利用程序也就安全了.大大都系统管理员对数据库不熟习而数据库管理员有对安全问题关心太少,并且一些安全公司也忽视数据库安全,这就使数据库的安全问题越发严重了.数据库系统中存在的安全漏洞和不当的配置普通会造成严重的后果,并且都难以发现.数据库利用程序普通同操作系统的最高管理员密切相关.遍及SQL Server数据库又是属于“端口”型的数据库,这就表示任何人都可以用解析工具试图衔接到数据库上,从而绕过操作系统的安全机制,进而闯入系统、破坏和盗取数据资料,乃至破坏整个系统.
这里,我们主要评论有关SQL Server2000数据库的安全配置以及一些相关的安全和利用上的问题.
在举行SQL Server 2000数据库的安全配置之前,首先你必须对操作系统举行安全配置,保证你的操作系统处于安全状况.然后对你要利用的操作数据库软件(程序)举行必要的安全考核,比方对ASP、PHP等脚本,这是很多基于数据库的WEB利用常呈现的安全隐患,关于脚本主如果一个过滤问题,需求过滤一些近似 , ‘ ; @ / 等字符,避免破坏者构造恶意的SQL语句.接着,安装SQL Server2000后请打上补钉sp3. 下载地址是:http://www.microsoft.com/sql/downloads/2000/sp3.asp
在做完上面三步底子之后,我们再来谈论SQL Server的安全配置.
1、利用安全的密码战略
我们把密码战略摆在全部安全配置的第一步,请注意,很大都据库帐号的密码过于简单,这跟系统密码过于简单是一个原理.关于sa更应当注意,同时不要让sa帐号的密码写于利用程序大概脚本中.结实的密码是安全的第一步!
SQL Server2000安装的时刻,假如是利用混合情势,那么就需求输入sa的密码,除非你确认必须利用空密码.这比从前的版本有所改良. 同时养成按期改正密码的好习惯.数据库管理员应当按期查看能否有不符合密码要求的帐号.比方利用下面的SQL语句: Use master
Select name,Password from syslogins where password is null
2、利用安全的帐号战略
由于SQL Server不能更改sa用户名称,也不能删除这个超级用户,所以,我们必须对这个帐号举行最强的保护,当然,包含利用一个非常强壮的密码,最好不要在数据库利用中利用sa帐号,只有当没有别的办法登录到 SQL Server 实例(比方,当别的系统管理员不可用或忘掉了密码)时才利用 sa.倡议数据库管理员新成立一个拥有与sa一样权限的超级用户来管理数据库.安全的帐号战略还包含不要让管理员权限的帐号泛滥. SQL Server的认证情势有Windows身份认证和混称身份认证两种.假如数据库管理员不但愿操作系统管理员来通过操作系统登陆来接触数据库的话,可以在帐号管理中把系统帐号“BUILTIN\Administrators”删除.不过这样做的后果是一旦sa帐号忘掉密码的话,就没有办法来恢复了. 很多主机利用数据库利用只是用来做查询、改正等简单功效的,请按照实际需求分配帐号,并赋予仅仅可以满意利用要求和需求的权限.比方,只要查询功效的,那么就利用一个简单的public帐号可以select便可以了.
3、加强数据库日记的记录
考核数据库登录事件的“失利和成功”,在实例属性中挑选“安全性”,将此中的考核级别选定为全部,这样在数据库系统和操作系统日记里面,就具体记录了全部帐号的登录事件.
请按期查看SQL Server日记查抄能否有可疑的登录事件发生,大概利用Dos号令.
findstr /C:"登录" d:\Microsoft SQL Server\MSSQL\LOG\*.*
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举行的端口衔接,把来自网络上的安全威胁举行有效的掌握. 关于IPSec的利用请参看:http://www.microsoft.com/china/technet/security/ipsecloc.asp
上面主要介绍的一些SQL Server的安全配置,经过以上的配置,可以让SQL Server本身具有充足的安全防备本领.当然,更主要的还是要加强内部的安全掌握和管理员的安全培训,并且安全性问题是一个长期的办理历程,还需求今后举行更多的安全保护.
以上是“配置SQL Server 2000九大办法安全[MSSQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
本文地址: | 与您的QQ/BBS好友分享! |