Discuz4.0.0RC3头像跨站漏洞

2005年5月26日18:44星期四  [安全]

_content>漏洞发现:玄猫 at Blackwoods
受影响版本:Discuz!4 dot 0.0RC3
厂商网址:_blank>http://www.discuz.com/
漏洞信息:

_content>_content>     事情要从那天和辐射鱼研究Discuz的漏洞开始,他给我发来了一个2.5F的头像跨站利用动画,思路就是修改数据包提交,并且针对的版本是>=2.5F的,我看了动画打算自己试下的时候,偶然发现仅存在于Discuz4.0.0RC3存在一个类似的漏洞,但是要幼稚得多,真不知道康盛世纪是怎么维护商业版的。

_content>     好了,来看这个漏洞的利用。

_content>     由于Discuz4.0.0RC3是商业版,玄猫没有找到泄漏的代码,所以无法在本地测试,我们在狗狗Google上搜索关键字: Powered by Discuz! 4.0.0RC3,(关于GoogleHack就不给大家详细说了),搜索结果可以发现很多使用RC3的站点,我们打开一个试下(那边拿葱的大婶,你别试官方站了,人家没有开放头像功能!)对了,前面已经提到,漏洞的一个要点就是论坛要开放头像功能。

_content>     我们随便打开一个站点:就它吧,一个很大的网络产品的生产商的支持论坛
_blank>http://forum.hua*******m.com/ 我们注册一个用户:玄猫,然后依次进入控制面板->编辑个人资料,点击页面下面那个”论坛头像列表”的按钮,这个是修改用户的论坛头像的功能,可以选择服务器上预设的图像作为自己的头像,

_content>

(图一)

_content>我们把页面保存到本地,研究下。_content>
保存到本地后直接提交,显示404错误,你猜怎样?呵呵,对了,犯了菜鸟的常见错误,没有修改表单的提交地址就直接提交了,而程序中又使用了相对目录,所以当然找不到页面了。我们用记事本打开保存到本地的文件,查找字符串”<FORM action=”,可以找到一个<FORM action=memcp.php?action=viewavatars method=post>的字符串,我们把它改为<FORM action=http://forum.hua*******m.com/memcp.php?action=viewavatars method=post>

_content>图二)

_content>,即把前面的网址补全。然后保存,我们打开页面提交下试试可不可以外部提交,提交后我们去” 控制面板首页”看头像,经测试是成功的,

_content>

(图三)

_content>这个导致了一个严重的漏洞

_content>     因为页面所使用的radio的控件选定值直接就是图片地址,所以我们设想在显示头像的页面直接调用了存储在数据库中的那个选定值,回到控制面板首页看下图片的地址是怎样写的。通过网页源代码,我们不难看到<IMG height=94             src="
_blank>_blank>http://forum.hua*******m.com/images/avatars/02.gif"             width=83     border=0>的字样,这样它的图像调用代码就会是什么呢,大概是<img src=”$avatars”>

_content>     好了,我们来构造一个radio控件的选定值:用DreamWeaver打开这个页面(可能有的朋友问为什么不直接用记事本打开修改控件的值,这是因为我们要在控件的值内写入一些特殊字符,如<>一类,如果直接修改会破坏页面,即代码会出错,而使用DW的话,他会自动转义),然后点选头像一的radio控件,把值改为images/avatars/02.gif"><script>alert("玄猫啊玄猫,玄猫找漏洞咯!")</script><img src=",

_content>

图四)

_content>然后打开这个页面,选择头像一,并提交,程序回显修改成功,同时刷新页面,这时一个对话框弹了出来

(图五)

这个就是我们的代码<script>alert("玄猫啊玄猫,玄猫找漏洞咯!")</script>所实现的内容。

_content>     找个热门的帖子回复下,可以发现只要打开含有我们回的帖子的页面,就会弹出我们定义的对话框,跨站成功。

_content>

(图六)

_content>Discuz!4.0.0RC3漏洞利用工具下载

_content>来源:http://blog.blackwoods.cn 玄猫的窝

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值