本文作者:IMWeb 刘志龙 原文出处:IMWeb社区 未经同意,禁止转载
前一阵子准备xss
的分享。准备一些简单的讲解例子。刚好看到xss.tv
上一些demo不错,可以玩玩,简单小记一下。
首先,我们来到闯关页面
这个xss闯关比较简单,其实就是寻找输入点和输出点的游戏。
开始第一关卡,输入点在参数,输出在html的dom结构上,没有任何过滤。插入可执行的html标签即可。当然我们这里都是先忽略浏览器本身的安全策略。
关卡一直接过,看看关卡二,依然是寻找输出点
输出点一被html编码了,似乎没有啥办法。输出点二很明显是有问题的,因为双引号没过滤。简单一个类似"onmouseover=alert(1)
就可以先闭合双引号,然后后面自己发挥实现攻击。
关卡三、四类似,就不看了。
看看关卡五,普通带on
的payload被过滤了。这也是富文本过滤器经常会使用的策略之一。
当然,payload
有无数,随便可以找个不带on
的
再来看看关卡七,插入script
标签试探,被过滤空了。猜测过滤规则是把所有script
过滤光了。
尝试双script
绕过,果然是可以的。
来到关卡八,输出在a
标签的href
属性里,第一反应想到的就是插入javascript
试试,毫无疑问被过滤了。
这种往往是关键词过滤,绕过的方法比较多。比如中间插个tab
符,一样是可以执行的。
再看关卡九,提示链接不合法。
这种往往就是找到正则规则有没有办法绕过,这是正则是结尾必须带http://
,找到规则绕过就很简单了,一个注释符绕过。
后面还有不少关卡,先写到这里。。