百度空间 | 百度首页 
               
 
查看文章
 
小议百度贴吧标题XSS漏洞 [修正]
2008-07-12 15:36

先参考http://www.80sec.com/charset-xss.html啊 :)

这个漏洞在不同浏览器上表现的出来效果各不同,在GBKXX编码下FF会识别这种非法字符把它当半个宽字节和一个单引号!

但是IE不会,IE会认为这就是一个双字节字符。

所以我们发个贴,标题是类似的 [0xc1]');alert(1)//,可能产生问题。现在在百度帖吧里输出的JS里已经构造不了BUG,百度已经判断宽字节非法字符情况,stripslashes处理了次,去掉了转义字符“\”。如下:

function ResetReplyTitle(no, title) {
        if(no == null||no == ""){
          if(title == null || title == '')
            title_src = 'xx?);alert(1)//'

这里的?是[0xc1]' !!

问题这样解决拉却又忽略了另外一个地方,就是回帖的事件输出处:

<a href="#sub" class=t onclick="ResetReplyTitle('1','xx羂');alert(1);// ');">回复此发言</a>

羂是[0xc1]\,到这里却变成[0xc1]\ + ' 了!!

只能那个说,百度的程序员对于这个漏洞的处理过于马虎了,补了东墙,没补西墙。

PS:观望这次百度修改该漏洞的后续,因为我知道你们还会补出问题来 :)

哦~点回复给你个茄子:)

http://tieba.baidu.com/f?kz=435106360


类别:默认分类 | 添加到搜藏 | 浏览() | 评论 (3)
 
最近读者:
 
网友评论:
2
2008-07-12 16:31 | 回复
啊 茄子就是牛
 
3
2008-07-12 17:02 | 回复
路过下
 
7
2008-07-13 09:38 | 回复
玩火啊 玩火~ 百度这样补完全是给FIREFOX浏览器创造漏洞机会。
 
发表评论:
姓 名:
网址或邮箱: (选填)
内 容:
验证码: 请点击后输入四位验证码,字母不区分大小写
      

     

©2009 Baidu