XSS的绕过姿势(四)
XSS的绕过姿势(四)
本章重点挑xss-labs-master靶场里一些经典的例子探讨
level2 闭合文本框
查看网页源码:
1 | <h2 align=center>没有找到和<script>alert(1)</script>相关的结果.</h2> |
看的出来 回显的消息被转义了,但是搜索框里的内容还在,看来搜索框是有value属性的
换思路 提前闭合value属性
成功
level5 闭合文本框
这一关把on开头的字符串全部替换成了 on_ 开头,script标签也替换成了scr_ipt标签
尝试大小写绕过
失败
on开头的事件没办法触发了 所以img标签此路不通
换标签:
换a标签,a标签里有href属性,在此嵌入脚本
出现了可以点击的标签,成功
level7 使用嵌套应对删除字符串的过滤
测试:
发现script 和 href被直接删除了
如图 当“href”和“script”标签被过滤删除时,可以使用嵌套的方法绕过。
如:
- hhrefref
- sscriptcript
成功
level 8 利用Unicode编码绕过
这一关是利用页面特性:在文本框输入url,点击添加友情连接,给下面的超链接href属性赋值
这一关将常规的xss有关字符都过滤掉了。
此时可以使用unicode编码进行绕过
成功。
level9 添加特定字符串应付检测
这一关会对输入的URL进行检测,若无 ”http://“ 字符串则报错
可以在编码后的URL后面添加上注释掉的对应字符串进行绕过
1 | javascript:alert(0)/* http:// */ |
level10 对带有隐藏属性的标签要有敏锐的嗅觉
注意到这关的源码有三个被隐藏的input标签:
此时猜测三个标签其中有一个可能使用get方法传值
此时对input标签一个个测试,尝试使用url改动其属性值,最终发现t_sort属性被修改
输入payload(因为标签被隐藏,所以需要加上type=“text” 来覆盖后面的隐藏属性):
1 | ?t_sort=" onfocus=javascript:alert() type="text |
以上是前十题中的几个典型绕过方式,后十题涉及到一些辅助工具的使用,将在后面补充。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Enderman_1's blog!