危险漫步博客
新鲜的“黑客思维”就是从全新的角度看待黑客技术,从更高的层面去思考;专注于黑客精神及技术交流分享的独立博客。
文章2289 浏览18791686

Websniff使用手记

这天正在网上闲逛,无意间跳到了一个IT教育的网站,仔细一看原来是北大青鸟的一个分站,我大致的看了一下网站,就在网站的根目录下输入了一个不存在的文件名1.aspx,提交后发现网站是使用.NET2.0编写的,好久没有搞过这样的网站了,所以我决定来碰碰运气。

一般在遇到.NET的网站时我有以下两个思路:

1、尝试注入,因为.NET的网站一般都是使用的MSSQL数据库,有注入也就意味着最起码可以得到目录浏览权限,即使不能直接拿到WEBSHELL,也可以给后续的入侵提供一些帮助(比如破解后台登录名和密码等)。

2、尝试寻找上传漏洞,来直接得到一个WEBSHELL,.NET的网站很多时候都是可以GIF89A文件头欺骗的。

思路就是这样,但是在网站中找了几个链接,手动测试了“and l=1”和“and l=2”后都没有发现什么出错信息,所以基本上可以断定这个网站不存在注入漏洞(或者说是我找不出来),第一个思路就这样被否定了。而第二种方法的成功率更微乎其微,手头也没有好用的针对.NET的扫描工具,在平时的入侵检测过程中也没有积累一些可用的上传页面或者目录(在这里要狠批自己的懒惰)。网站也没有什么可以注册会员的地方,如果有的话,没准儿还可以以会员的身份上传图片什么的。整个人侵过程的开始似乎非常的不顺利,只好从其他地方来寻找突破口了。

二、端口扫描

我记忆中,高级黑客的入侵,首先都是进行端口扫描,在尝试WEB脚本漏洞无果的情况下,只好大胆尝试使用X-SCAN扫描整台服务器的端口,期待能有意外的发现,如果能直接拿到系统权限更好,即使不能直接拿到系统权限,扫描出个FTP弱口令什么的也会对入侵有所帮助,对于高级黑客来说,事先都会查找站点或服务器的相关信息,来制作专门用的字典文件,可是我没有那个本事更没有那个耐性,于是就直接使用默认的字典开始了扫描,经过耐心的等待后终于发现服务器上有一个FTP弱口令,我马上使用IE进行连接,本以为这是一个WEB站点,那样只要找到它所指向的域名就可以拿到WEBSHELL了,可是结果却总是出人意料,这个FTP根本就没有任何的站点文件,而只有一个50多M的压缩文件。

虽然服务器的FTP使用的是SERV-U.可是这个弱口令用户只能控制当前的目录,更没有设置执行权限。这样一个没有任何利用价值的SHELL确实勾不起我多大的入侵热情,但是既然已经走到了这一步,也不要浪费这个鸡肋般的SHELL了。服务器上存在这个东西,就说明别人或多或少的会用到它,我将这个压缩包下载到本地,打开一看,原来是一个瑞星的安装程序,我使用RobinPE程序直接向安装程序中插入了一个反弹木马。

重新把插入了木马的安装文件传回去替换了原有文件(RobinPE程序在捆绑方面的优势就在于它可以计算宿主软件中的剩余空间,从而让软件在捆绑木马后不改变原来的大小,当然插人的木马文件也不要太大,如果超出了宿主软件中的剩余空间就无法插入了),接下来就是等待有人来下载运行了。

三、旁注

盼星星盼月亮般的等待了将近两周,可还是没有任何陌生的肉鸡上线,或许是木马被查杀了,或许是根本就没人去下载运行软件吧,第一次尝到了被动入侵的无奈。我们不能在一棵树上吊死,既然找不到捷径可走,那就只好安心的查找与目标站点处于同一台服务器上的其它站点,尝试旁注入侵。

旁注的优势就在于:

1、旁注得到一个WEBSHELL后,可以直接访问目标网站的目录。

2、旁注后可以尝试利用系统中所安装的第三方软件漏洞来得到服务器的系统权限。

3、旁注后的站点如果支持.NET2.0的话,我们就可以使用WEBSNIFFl.O.aspx来执行简单的嗅探,从而得到服务器的上行数据,很多时候上行数据中都包括了帐号和密码(例如FTP、HTTP、SMTP等)。所以,我们现在最需要的就是通过旁注先搞到一个WEBSHELL,即使这个WEBSHELL不能跳转目录,即使服务器上没有第三方软件的漏洞,只要支持.NET2.0,我们得到目标网站的权限就只是个时间问题而已。在查询出的同一服务器的站点列表中找来找去,终于发现了一个沸腾尘缘雅境核心的WEB系统。

大家都知道,尘缘雅境在各个版本中都爆出了很多致命漏洞,而且很多漏洞都是通杀多个版本的,我们首先查看用户注册页面的源文件,然后修改用户注册页面中的purvlew、oskey两个参数的VALUE分别为99999和SUPER,然后再修改ACTION后面的提交地址,因为我们是要在本地提交,所以要写绝对地址,而源文件中是相对地址。把这个文件另存到本地电脑中,并命名为1.htm,然后使用浏览器打开,填写好注册信息后就可以注册成一个管理员了。

接下来就是添加文章,在页面的最后我们会发现有个“首页图片”的地方,在这里填写好我们修改过的ASP木马的WEB地址,并且选择下面的保存图片选项中的“是”。

ASP木马的具体内容我就不贴出来了,这个各位如有需要可以直接来联系我。

懂得ASP语言的朋友一定都知道这段代码就是在页面中输出“<% execute request("value")%>”,而沸腾的远程图片保存漏洞是不验证远程图片的格式的,所以我们将以上内容的ASP文件保存到自己的空间上,就可以利用这里的远程图片保存漏洞来得到WEBSHELL了。接下来点击“添加”,提示成功后,返回编辑该文章就能看到我们本马的地址了。

限于文章篇幅有限,可能我上面的介绍有些过于简略了,具体内容大家可以到百度上搜索一下,其实这个漏洞即使是普通用户也可以利用的,只是系统设置了不允许普通用户登录,所以只有注册为管理员了。

四、最终目标

登录WEBSHELL后,我查看了一下服务器的基本信息,命令行执行组件wscript.shell已经被删除了,自己上传的CMD.Exe也无法运行,虽然安装了SERV-U,

可是ASP版的提权工具根本就没有执行命令(现在Serv-U 6.x以上版本中,不修改默认管理员的情况已经很少了,这不能不说是中国网络安全的一个进步),在服务器上也没有发现其它可以利用的第三方软件。我的思路还是返回到了先前所设想好的,就是上传WEBSNIFFl.O.ASPX脚本上去,可是在WEB中访问的时候却发现根本就无法解析,可见这台虚拟主机还是设置了脚本的访问权限的,我们拿到手的这个WEBSHELL只支持ASP而不支持.NET,暂时冷静了一下,整理一下我们的思路,看看我们都得到了什么:

1、一个目标网站同一服务器上的WEBSHELL,只支持ASP。

2、目标网站的域名。

再回过头来看看这个WEBSHELL所在的目录,是“D:\WHOST\web\XXX.net”这样子的,貌似服务器的管理员为了方便管理各个站点,直接将域名作为了空间的文件夹名,那么我们是不是可以从这个站点跳转到别的站点呢?直接在目录地址中跳转到目标网站的空间“D:\VHOST\xxxx.COM”(目标网站的域名),但很遗憾,提示没有权限。

看来我的WEBSHELL对目标网站连个目录浏览权限都没有,真是郁闷啊。当一支烟快燃烧完的时候,我突然想到,既然目标站点不让跳转,那其它的站也不允许我们查看吗?虚拟主机设置的一般都很变态,但是没有好的办法,只能碰碰运气了,直接将服务器上的域名挨个复制到地址栏,终于有了惊人的发现,跳转了几个ASP站点都成功了,可是无一例外的都不支持ASPX,但是工夫不负有心人,最终还是找到了一个支持.NET的站点目录,并且这个目录是由我所在的用户组完全控制的。

在这个站点里逛了一圈,发现数据库居然采用的是ACCESS,如果是MSSQL的话,我们没准儿就可以利用LOG备份来得到一个SHELL了(因为MSSQL的用户很有可能是DB_OWNER权限的,而在MSSQL下DB_OWNER用户是可以LOG备份的,当然2005以上版本不包括在内)。虽然不是MSSQL数据库,但我们还有.NET2.0这张王牌啊,直接上传了linx修改的websniffl.O.aspx,使用IE打开,选中“FTP password”那项,点击“Start”按钮,其它的什么都不用做,终于可以开始嗅探了。

下面我简单的介绍一下WEBSNIFFl.0,这个工具是CNQING-年前出品的,是一个在.NET 2.0环境下单线程的WEB嗅探工具,利用这个工具我们可以嗅探到本地的

http、smtp、ftp数据,最初的WEBsniff并不完美,嗅探到的数据会很大,有很多的垃圾信息,而且容易出现假死状态,后来LINX大哥对程序进行了修改,修正了以上一些BUG,并增加了自动嗅探功能,要知道原版本必须在FIREFOX浏览器下使用,因为在IE下会错过一个参数的设置,而在LINX修改版中,只要不使用自定义参数,在IE中也是可以直行嗅探的,而且LINX修改版已经可以同时嗅探FTP、SMTP、HTTP三项数据了,另外LINX修改版也可以暂时关闭浏览器,这在原版中也是不可能的。可见,在无法得到系统权限的情况下,使用WEBSNIFF可以帮助我们拿到目标站点的一些敏感数据,比如FTP帐号及密码、WEB和邮箱的登录账号及密码等,可以加固webshell的安全系数。

具体的功能和使用情况就请大家在以后的入侵中来继续摸索吧,我们还是继续此次的入侵。电脑24小时开机(WEBSNIFF是不能够长期关闭浏览器嗅探的)不断嗅探目标网站所在服务器的FTP数据,虽然得到了不少FTP帐号和密码,可还是没有发现目标网站的帐号信息,难道这个网站就不使用FTP吗?正打算另寻方法的时候,目标网站的FTP密码终于来了,呵呵,真是喜出望外了。

虽然拿到了目标网站的权限,可多少还是有一些运气成分在里面的,假如目标网站没有开FTP或者用户从来不登录FTP的话,那我们的入侵又该如何继续呢?这个问题就留给大家来思考吧!