XSS下的绕过过滤方法
2018-04-09 11:54
351 查看
很久没有写过文章了,今天写一篇小品文,仍然是关于XSS下的利用。
很多网站为了避免XSS的攻击,对用户的输入都采取了过滤,最常见的就是对<>转换成<以及>,经过转换以后<>虽然可在正确显示在页面上,但是已经不能构成代码语句了。这个貌似很彻底,因为一旦<>被转换掉,什么就会转换成“<script src=1.js></script>”,不能执行,因此,很多人认为只要用户的输入没有构成<>,就不能闭合前后的标签,其语句当然也不会有害。
但是,万事总有可能,只要有一定的条件,我们就可以构造经过编码后的语句来进行XSS。
1. 转义字符
首先要认识一下“\”,这个不是斜杠么。对的,斜杠在JAVASCRIPT有着特殊的用途,它是转义的符号。例如,我们把我们XSS语句转换成16进制,这里是
结果如下
\x3C\x73\x63\x72\x69\x70\x74\x3E\x61\x6C\x65\x72\x74\x28\x27\x70\x6F\x72\x75\x69\x6E\x27\x29\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E
这些就是经过编码后的字符,因为前面的斜杠缘故,所以后面的这些字符在JAVASCRIPT中都会被还原。
我们再来看一下测试用的index.asp
很多网站为了避免XSS的攻击,对用户的输入都采取了过滤,最常见的就是对<>转换成<以及>,经过转换以后<>虽然可在正确显示在页面上,但是已经不能构成代码语句了。这个貌似很彻底,因为一旦<>被转换掉,什么就会转换成“<script src=1.js></script>”,不能执行,因此,很多人认为只要用户的输入没有构成<>,就不能闭合前后的标签,其语句当然也不会有害。
但是,万事总有可能,只要有一定的条件,我们就可以构造经过编码后的语句来进行XSS。
1. 转义字符
首先要认识一下“\”,这个不是斜杠么。对的,斜杠在JAVASCRIPT有着特殊的用途,它是转义的符号。例如,我们把我们XSS语句转换成16进制,这里是
结果如下
\x3C\x73\x63\x72\x69\x70\x74\x3E\x61\x6C\x65\x72\x74\x28\x27\x70\x6F\x72\x75\x69\x6E\x27\x29\x3C\x2F\x73\x63\x72\x69\x70\x74\x3E
这些就是经过编码后的字符,因为前面的斜杠缘故,所以后面的这些字符在JAVASCRIPT中都会被还原。
我们再来看一下测试用的index.asp
相关文章推荐
- xss绕过过滤方法分享 及有关web攻击的方法
- xss绕过过滤之方法
- XSS下的绕过过滤方法
- 绕过XSS防御的方法
- 常见绕过WAF的XSS方法
- xss插入代码和绕过过滤
- Java Filter过滤xss注入非法参数的方法
- 绕过XSS过滤规则 : Web渗透测试高级XSS教程
- XSS注入方式和逃避XSS过滤的常用方法(整理)
- 让XSS攻击来得更猛烈些吧——一种新型的绕过XSS防御的方法
- ASP.NET 下 XSS 跨站脚本攻击的过滤方法
- php实现XSS安全过滤的方法
- mysql注入绕过空格过滤的方法
- 绕过XSS过滤规则 : Web渗透测试高级XSS教程
- 分享上传图片shell的绕过过滤的几种方法
- SQL注入过滤限制绕过方法
- 让XSS攻击来得更猛烈些吧——一种新型的绕过XSS防御的方法
- java处理XSS过滤的方法
- DomXSS以及绕过浏览器检测机制方法总结
- Java Filter过滤xss注入非法参数的方法