建站学习网,专业提供各类建站教程,网页素材,SEO资讯等建站资源!

网站模板_网站源码_网站素材_建站教程_建站学习网

当前位置:建站学习网 > 网页设计 > 脚本HTML教程 >

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

更新时间:2017-04-12整理编辑:建站学习网阅读:0

   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一下。

本文网址:https://www.dedexuexi.com/wysj/html/2851.html

本站部分文章搜集与网络,如有侵权请联系本站,转载请说明出处。

收藏此文 赞一下!() 打赏本站

如本文对您有帮助,就请建站学习网抽根烟吧!

支付宝打赏
微信打赏
ACDSee的HTML相册生成
« 上一篇2017年04月12日
HTML 4.0 语法连结标签
2017年04月12日下一篇 »
  • 实现导航栏固定在顶部(吸顶效果),滚动页面万能方式
    0阅读
    1)滚动条不动时,是静态相对定位状态relative2)当页面滚动超出设置距离时,js改变样式属性切换定位状态变成fixed,同时再给top设置一个值css部分// 滚动条不动时.box{position: relative;height: 80px;width: 100%;z-index: 999...
  • HTML锚点用class样式教程
    0阅读
    JS部分:$(function() { $(window).scroll(function() { //为页面添加页面滚动监听事件 var wst = $(window).scrollTop() //滚动条距离顶端值 for (i = 1; i < 6...
  • python标准算法实现数组全排列的方法
    0阅读
    这篇文章主要介绍了python标准算法实现数组全排列的方法,实例分析了全排列的原理与Python实现技巧,需要的朋友可以参考下 本文实例讲述了python标准算法实现数组全排列的方法,代码来自国外网
  • python将ip地址转换成整数的方法
    0阅读
    这篇文章主要介绍了python将ip地址转换成整数的方法,涉及Python针对IP地址的转换技巧,需要的朋友可以参考下 本文实例讲述了python将ip地址转换成整数的方法。分享给大家供大家参考。具体分析如
  • 一个生成html的新方法
    0阅读
    使用范例: set fso=CreateObject(Scripting.FileSystemObject) set f=fso.CreateTextFile( server.mappath( ), true ) f.WriteLine( asp2html(youpage.asp) ) f.clos...
 
QQ在线咨询