Discuz官方开发4大坑:
1.发的补丁和diff官方最新版本安装包的结果不一定相同(导致后台升级,手动更新后已经在新版本修了的漏洞还在)
2.发补丁不发修复点的公告(导致二次开发的站考虑到兼容性不愿第一时间更新)
3.在线上改代码修漏洞却不发补丁
4.发补丁,发新版本安装包的时间,论坛发补丁帖的时间不一致,参见:http://download.comsenz.com/DiscuzX/3.2/
http://www.discuz.net/forum-10-1.html
Discuz编辑器JS处理不当导致的存储型XSS。
产生原因:
JS原生取ELEMENT中HTML内容的方法,会将服务端转义过的单双引号实体编码进行反转。
代码分析:
这里用最新版本本地测payload为:[align="onmouseover="alert(1)]
官方论坛站点悄悄于2015-1-21改了代码,导致以上payload被过滤,不过用
[email=2"onmouseover="alert(2)]2[/email]
可绕过。
/forum.php?mod=post&action=edit&fid=xx&tid=xx&pid=xx&page=x
/static/js/common.js:
/static/js/bbcode.js:
/static/js/editor.js
调试流程:
触发过程:
发表帖子,编辑器内输入
[email=2"onmouseover="alert(2)]2[/email]
,支持的bbcode类型可在bbcode.js中查看。
免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论