教学之友,学习之友。

站长教学网

当前位置: 站长教学网 > 数据库 > MSSQL教程 >

浅谈几点sqlserver由1433端口入侵的安全问题(2)

时间:2012-08-02 10:44来源:dinglang_2009 作者:ken 点击:


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

还有一些其他的扩展存储过程,你也最好检查检查。

在处理存储过程的时候,请确认一下,避免造成对数据库或应用程序的伤害。   站长教学网 eduyo.com

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本身具备足够的安全防范能力。当然,更主要的还是要加强内部的安全控制和管理员的安全培训,而且安全性问题是一个长期的解决过程,还需要以后进行更多的安全维护。

(责任编辑:ken)
TAG标签: 安全 MSSQL sqlserver 入侵
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
注册登录:不允许匿名留言,登录后留言无需输入验证码。
最新评论 进入详细评论页>>
栏目列表
最新内容
热点内容