| 首页 | 技术文章 | 软件下载 | 博客 | 论坛 | 精品教程 | 黑客动画 | 视频资源 | 在线服务 | 黑客游戏 | 

您现在的位置: 中国X黑客小组 >> 技术文章 >> 安全防御 >> 漏洞分析 >> 文章正文 用户登录 新用户注册
  动网7.x权限提升漏洞原理         ★★★ 【字体:
动网7.x权限提升漏洞原理
作者:focn jin…    文章来源:黑客防线    点击数:    更新时间:2006-1-12    
9pc722664t5w7IM7|||0|0|0 ||||||DVBBS 

要注意中间的空格替换成%20,重新计算Content-Length的值,然后用NC提交一次,我们这个用户的userface就替换过来了。我们现在再重新登录看看。 
哈哈,看到了吗?我们已经是管理员了。再利用黑防第六期《动网7.1漏洞惊现江湖》一文中的漏洞就可以添加后台管理员了。 

动网7.1利用方法: 
动网的7.1版利用这个漏洞的方法有点小变化,难度也比7.0 SP2要大。7.1版中加入了对face变量中的’|’符号的过滤 
mymodify.asp文件中的270行附近: 
face=Dv_FilterJS(Replace(face,"’","")) 
face=Replace(face,"..","") 
face=Replace(face,"\","/") 
face=Replace(face,"^","") 
face=Replace(face,"#","") 
face=Replace(face,"%","") 
face=Replace(face,"|","") 
可惜的是动网的程序员百密而一疏,忘了注册时也可以修改头像,在reg.asp中就没有对face变量做任何的过滤。Reg.asp文件的285行附近。 
If Request.form("face")<>"" Then 
face=Request.form("face") 
End If 
同样,还是先抓包后用NC提交。注册登录后就是前台管理员了。但还要一个问题,就是Truepassword问题。7.1中加强了对Cookie欺骗的防范,所以这个truepassword变化的太频繁了。在7.0SP2的newpass.asp中,只有一个更新当前用户turepassword的指令: 
7.0 SP2的newpass.asp文件 




而在7.1中,newpass.asp还会检查用户的Cookies是否更新。7.1newpass.asp文件的30行左右 

’检查写入是否成功如果成功则更新数据 
If DVBBS.checkStr(Trim(Request.Cookies(DVBBS.Forum_sn)("password")))=TruePassWord Then 
DVBBS.Execute("UpDate [Dv_user] Set TruePassWord=’"&TruePassWord&"’ where UserID="&DVBBS.UserID) 
DVBBS.MemberWord = TruePassWord 
Dim iUserInfo 
iUserInfo = Session(DVBBS.CacheName & "UserID") 
iUserInfo(35) = TruePassWord 
Session(DVBBS.CacheName & "UserID") = iUserInfo 
End If 

在7.1中,我们的客户端的Cookies中的truepassword被更新成新的truepassword,由于服务器端的truepassword也是从MyUserInfo中得来的,而MyUserInfo中的truepassword值是不会改变的,在检测时就会形成一个死循环。我们的解决的办法是用Cookies锁定,用桂林老兵的浏览器锁定我们的Cookies,之前得将Cookies中的truepassword值设成和MyUserInfo中的truepassword值一致。这样就不会重复请求newpass.asp进入死循环了。 
由于手头上没有7.1的SQL版的代码,所以上面是在7.1的Access版下测试的,可以成功的成为前台的管理员。 

后记: 
漏洞的防范方法:改数据库结构的工程大了点,建议在reg.asp和mymodify.asp中加入对相应变量的”|”符号进行过滤,比如: 

face=Dv_FilterJS(Replace(face,"’","")) 
face=Replace(face,"..","") 
face=Replace(face,"\","/") 
face=Replace(face,"^","") 
face=Replace(face,"#","") 
face=Replace(face,"%","") 
face=Replace(face,"|","") 

还想提一点,动网太信任后台的管理员了,所以在后台的很多地方都没有对SQL注入进行防范,这就形如给我们开了一个SQL注入之门。我们曾经检测的一个网站,设置的非常BT。上面用的就是DVBBS的论坛。当我们取得了DVBBS的后台管理员权限时才发现上传目录没有执行权限,asp木马传上去了又原样返回。而由执行asp权限的目录又没有写入的权限。网站上又没有其他的站点可以注入。后来发现DVBBS后台有注入后才总算得到一匹小马。真是千里之堤,溃于蚁穴啊。 
哆嗦一句,这个权限提升漏洞没有太高深的技巧,但后果是非常严重的。由于前台管理的多个页面存在SQL注入,所以这个漏洞对DVBBS 7.x SQL版的危害非常大。请不要用本文的方法做破坏行为,否则后果自负

上一页  [1] [2] 

文章录入:IceRiver    责任编辑:IceRiver 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    俄罗斯黑客指卡巴斯基6.0-7.
    十年磨一剑 卡巴斯基7.0简体
    动网8.0爆出漏洞 建议用户更
    病毒预报(2007.7.23-2007.7
    百度启动网站评级计划 与Go
    瑞星病毒及木马预警一周播报
    推荐:BBSXP 7.00 Beta 2 SQL
    详细解说“黑掉”Dvbbs 7.1 
    微软IE7.0中文版发布再掀中文
    几个暴动网数据库的代码
      网友评论:(只显示最新5条。评论内容只代表网友观点,与本站立场无关!)
    Powered by ICE RIVER - STUDIO
    » CnXHacker.CoM   © CopyRight 2002-2006, CnXHacker.CoM™, Inc. All Rights Reserved.