绕过XSS过滤规则

发布时间:2020-10-10 07:18:22 作者:屋脊之上
来源:网络 阅读:850

相信大家在做***测试的时候都有过这样的经历,明明一个XSS的漏洞,但是却有XSS过滤规则或者WAF保护导致我们不能成功利用,比如我们输入<scirpt>alert("hi")</script>,会被转换为<script>alert(>xss detected<)</script>,这样的话我们的XSS就不生效了,下面就教大家几种简单的绕过XSS的方法:

1、绕过 magic_quotes_gpc

magic_quotes_gpc=ON是php中的安全设置,开启后会把一些特殊字符进行轮换,比如'(单引号)转换为\',"(双引号)转换为\" ,\转换为\\

比如:<script>alert("xss");</script>会转换为<script>alert(\"xss\");</script>,这样我们的xss就不生效了。

针对开启了magic_quotes_gpc的网站,我们可以通过javascript中的String.fromCharCode方法来绕过,我们可以把alert("XSS");转换为

String.fromCharCode(97, 108, 101, 114, 116, 40, 34, 88, 83, 83, 34, 41)那么我们的XSS语句就变成了

<script>String.fromCharCode(97, 108, 101, 114, 116, 40, 34, 88, 83, 83, 34, 41, 59)</script> 

String.fromCharCode()是javascript中的字符串方法,用来把ASCII转换为字符串。

如何转换ASCII码呢?

我们可以使用 hackbar 来搞定,Firefox的扩展工具https://addons.mozilla.org/en-US/firefox/addon/hackbar/

绕过XSS过滤规则
绕过XSS过滤规则
最后使用<script>转换后的放到这里</script>包含即可。
2、HEX编码
我们可以对我们的语句进行hex编码来绕过XSS规则。
比如:<script>alert("xss");</script> 可以转换为:
%3c%73%63%72%69%70%74%3e%61%6c%65%72%74%28%22%78%73%73%22%29%3b%3c%2f%73%63%72%69%70%74%3e
在线工具:
http://textmechanic.com/ASCII-Hex-Unicode-Base64-Converter.html
http://www.asciitohex.com/
3、改变大小写
在测试过程中,我们可以改变测试语句的大小写来绕过XSS规则
比如:<script>alert("xss");</script> 可以转换为:
<ScRipt>ALeRt("XSS");</sCRipT>
4、关闭标签
有时我们需要关闭标签来使我们的XSS生效,如:
"><script>alert("Hi");</script>

 

推荐阅读:
  1. wireshark常见过滤规则
  2. Wireshark过滤规则及过滤选项如何理解

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

绕过xss过滤规则

上一篇:静态方法中调用Spring注入过程解析

下一篇:Log4j详细使用教程_动力节点Java学院整理

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》