phpcms问答某模块存储型xss_PHP教程
在回帖处,有个编辑器功能。
编辑器存在一个可以编辑源码,当时第一反映就是。这里肯定存在xss。
果不其然,但是,在开始的时候测试
以及
的时候,发现都无法执行js代码。
于是乎,便上http://html5sec.org/找些偏门的代码测试。
当测试:
的时候,我惊讶的发现居然没过滤。如图,点击之后触发
当然,这个还需要点击。毕竟回帖的人不是每个人都会点击。那怎么样才能把xss的成功率扩大呢?
别着急。
在http://html5sec.org/里,还是有不少可以使用的代码。譬如:
打开页面时候触发(ie10,谷歌,火狐4.5有效)
除了上面这个,还有很多都是通杀浏览器,不一一测试,仅仅拿这个证明危害。
这样我们就可以广撒网捞鱼了。
漏洞证明:值得一提的是。 虽然是以onfocus来执行js。但是别忘了我们还有eval。可以构造
来完成攻击。构造好的js如下:
当用户访问这篇帖子,就是受害者了。
不再一一去尝试了。希望phpcms团队也能重视该问题。
修复方案:
该编辑器是基于黑名单过滤的。如果实在要开启编辑源码功能,建议采用白名单过滤。不然最好还是关闭开放编辑源码功能的权限,因为你们根本不知道跨站师会用哪些你们根本不知道的代码。
这里还有一枚反射型的xss,顺便提一下吧:
http://118.244.225.145/index.php?m=ask&c=team&a=team_list&order=team_point&catid=&belong=team&name=">
上一篇: jQuery.append() 函数详解
下一篇: 哎嗨哟开发笔记4月27日