HTMLencode解决QQ空间缺陷导致日志存储型XSS

   1. 接着看这个系列的第一个漏洞(content_gridsblog.js)中那部分的代码。

  腾讯为了修复这个漏洞,采用了更为安全的JSON.parse函数作为修复方案。这种修复是没有问题的。


  其它有类似缺陷的网站可以参考腾讯的修复方案。

  2. 但实际上,在这段代码下方的不远处,还存在着另外一处缺陷,如下图所示:


  可以看到, oGridInfo为 JSON.parse解析出来的一个[Object]

  而 oGridInfo.templateName 取出来后,没有经过任何过滤,就传入到了 innerHTML 中。

  而从抓包的数据来看,json数据里的templateName 我们是可控的,那么这里就显然存在问题啦~

  3. 修改日志数据包中的templateName,并发送。

{"g0":{"visible":1,"id":0,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"?????????"},"g5":{"visible":1,"id":5,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"2012?????????"},"g1":{"visible":1,"id":1,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"???????"},"templateName":"
","g4":{"visible":1,"id":4,"content":{"mood":"","image":"","date":"2013-03-20&1","text":""},"type":0,"title":"???? 2013-3-20"},"g7":{"visible":1,"id":7,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"??????????"},"version":"1.2","g2":{"visible":1,"id":2,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"??????"},"bgItem":{"bgId":"130","bgURL":"/qzone/newblog/v5/flashassets/bg130.swf?bgver=1.0&max_age=31104000","gridcolor":"0xF06368","alpha":1,"align":"right","wordcolor":"0xFFFFFF"},"tempId":56,"g8":{"visible":1,"id":8,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"???????????"},"g6":{"visible":1,"id":6,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"????????????"},"g3":{"visible":1,"id":3,"content":{"mood":"","image":"","date":"","text":"1"},"type":1,"title":"2012?????????"}}

  4. 用另外一个号,查看已经发表的日志。 成功弹出啦。


  由于代码逻辑上,只有他人查看日志时,才会触发此段代码,故测试时,请以第三者身份查看包含缺陷代码的日志

  修复方案:

  oGridInfo.templateName取出后,HTMLencode一下。

时间: 2024-11-01 13:25:47

HTMLencode解决QQ空间缺陷导致日志存储型XSS的相关文章

解析检查——存储型XSS漏洞解决方案

编者按:Web2.0时代,XSS漏洞不容小觑.特别是在UGC业务,支持"安全的"HTML是业务必须的特性,这就对UGC安全过滤器要求特别高,稍有不慎就会出现存储XSS漏洞.整篇文章着眼点在"方案",后续有机会我们还可以说说API的运营故事(这个元老级项目故事很多).通过对API的精细化运营是可以发现0day漏洞的--API自身的,甚至包括浏览器.比如CVE-2009-1862.CVE-2011-2458 以及一些其他八卦.存储型XSS漏洞,这个作为漏洞界的元老级漏洞

QQ空间打不开怎么解决? QQ空间打不开怎么办?

QQ空间打不开的三种解决方法: 1:在qq空间打开时如果是系统提示网页错误.已完毕 说明你缺少IE组件,或IE组件被破坏.可参考以下方式修复: 1.打开"开始"菜单,点击"运行"; 2.在框中,输入regsvr32 jscript.dll后选择"确定"; 出现提示后,再点击确定. 3.第二次输入regsvr32 vbscript.dll选择"确定"; 再一次出现提示后,确定. 4.两次成功提示后,说明IE组件已成功修复. 5.

雅虎邮箱存储型 XSS 漏洞,黑客能看任何人邮件

最近来自芬兰Klikki Oy的研究员Jouko Pynnönen发表了一篇博客,其中演示了恶意攻击者如何利用XSS漏洞攻下雅虎邮箱,将受害者收件箱中的邮件发到外部站点:以及构建病毒,这个病毒可以通过向邮件签名中添加恶意脚本,附加在所有传出的电子邮件中. 由于恶意代码就位于邮件消息的正文中,代码会在受害者打开邮件时立即执行,不需要其他交互过程.所有问题的症结实际上在于雅虎邮箱无法正确过滤HTML邮件中潜在的恶意代码. 以下是对这名研究人员博客文章的内容编译: 发现历程 离去年给雅虎挖洞也快一周年

phpcms问答某模块存储型xss

 黑名单惹的祸啊 在回帖处,有个编辑器功能. 编辑器存在一个可以编辑源码,当时第一反映就是.这里肯定存在xss. 果不其然,但是,在开始的时候测试 <script>alert(1)</script> 以及 <img src=1 onerror=alert(1) /> 的时候,发现都无法执行js代码.   于是乎,便上http://html5sec.org/找些偏门的代码测试.   当测试:<form id="test"></form

QQ空间设置日志不让他人转载方法

第一步:我们先在电脑登录QQ空间,然后点击"日志"菜单进入到日志中,然后我们点击一个写日志,然后在这个界面会看到有一个"显示全部设置"选项,点击进入 如下图所示:    第二步:然后我们在显示全部设置中会看到有一个"禁止转载" 这个我们只要发布时选中就可以了(当然修复时也有这个按钮了)   我们是在"编辑状态"中我们可以点击"更多设置"在这里会看到有一个"禁止转载"这样设置好之后其实人就

删除日志不扣QQ空间等级积分删除方法

1.进入自己的QQ空间,  接着在打开的QQ空间中找到"日志"点击它进入. 2.现在我们不是要删除日志了,是把要删除的日志转成私密日志了,如下图所示. 3.现在我们就可以删除日志了,我们在"私密日志"找到刚才转换成私秘日志的日志 4.然后我们把它删除就可以了,这样你会看发没有扣除积分哦.

挖掘QQ空间营销潜力 利用日志打造免费品牌推广

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 作为拥有用户人数最多的QQ平台,很多人都知道QQ拥有的巨大营销价值,目前利用QQ进行营销的方式有QQ群,QQ微博,QQ邮件,QQ的漂流瓶还有QQ空间!其中QQ空间的营销,往往是容易被忽略的一种,可是笔者认为,如果利用好QQ空间的营销,带给自己的不仅仅是产品或者网站的推广,更重要的是能够给网站或者产品带来品牌效应,可见QQ空间营销潜力是有很多能

php模拟用户自动在qq空间发表文章的方法

我们这里是一个简单的利用php来模拟登录后再到QQ空间发送文章的一个简单的程序,有需要的朋友可以参考 <?php      //模拟get post请求函数 http://www.lai18.com     /*      函数说明:      功能:请求方式可以get,post,可以发送的cookie,保存的cookiefile文件      参数:$url-----请求url    $referer---来源url    $postdata----------用于post请求的数据,''为g

分析如何让你的QQ空间有好的排名

上次拜读到徐国祥老师一篇<分析QQ空间能否做百度关键词排名?>的文章,感悟颇深.一直以来对于QQ空间的印象就是知道其屏蔽了搜索引擎的蜘蛛.没想到QQ空间也能在搜索结果排第一.这引发了我的兴趣.根据那篇文章的案例:在百度中搜索"斩拌机"这一关键,果不其然,这个关键词排在首页的第一的就是那个QQ空间,同时我们也可以看到起排名甚至超过了百度百科.如下图所示:   那QQ空间要如何获得好的排名呢?经过笔者的努力终于联系上了这个QQ空间的主人小五,求教了其做QQ空间排名的经验,在这边