学习笔记

精准传达 • 价值共享

洞悉互联网前沿资讯,探寻网站营销规律

查看其它板块

xss绕过方法(前端绕过,拼凑绕过,注释干扰绕过,编码绕过)

作者:老-男孩 | 2021-11-28 21:44 |点击:

前端绕过:
前端有很多种方法绕过,比如抓包重放或者修改前端代码。
 
大小写绕过:
一般后台对输入进行过滤有两种方法:
1,使用正则匹配,一旦匹配成功就会被删除掉。2,用查找的函数查找。被函数查找到的内容也会被删除。
这两种方法可以用大小写混合的方式进行绕过,而后端是不管大小写的,可以正常执行我们的语句。
 
正则表达式:
重要性:在新技术层出不穷的今天,让人难以遗忘的,能称得上是伟大的东西寥寥无几,但是这个正则表达式算一个!但是,最让人容易忽略和忘记的也是正则表达式!(一定要学!!!)
 
正则表达式是一种描述字符串结构的语法规则,是一种规定好了的字符串格式,作用是可以匹配,替换,截取匹配的字符串。
 
拼凑绕过:
后端会对我们输入的标签进行替换,但只替换一次,所以可以这样:
 
<scri<script>pt>alert("hello world!")</scri</script>pt>
1
这样经过后端的替换之后就会变成:
 
<script>alert("hello world!")</script>
1
使用注释进行干扰:
例如:
 
<scri<!--test-->pt>alert("hello world!")</scri<!--test-->pt>
1
后端不认识:
 
<scri<!--test-->pt>
1
所以不会去处理这个,然后执行的时候会变成这样:
 
<script>
1
如图:
<scri pt>
 
看到了没<! --test–>不会出来,被注释掉了。(这里的叹号后面是没有空格的,因为不加空格,,它会被注释掉,你们会看不到,建议手动试试,,,,,,)但是可以避开检查!
 
编码绕过:
<script>
1
这种标签是可以编码的,编码之后,后台也会不认识它,然后达到绕过的效果,但是!不是可以任意编码的!他有一个重要的条件:一定要确保在输出点的时候可以正常被识别,翻译,执行!
 
案例演示:
大小写绕过:
 
<Script>5555555
1
拼凑绕过:
 
<sc<script>ript>4444444
1
注释绕过
 
<sc<!--test-->ript>666666
1
提交后查看页面源码:
大小写绕过:
 
结果:标签还在!成功绕过!
拼凑绕过:
 
标签被“干掉”,绕过失败!
注释绕过:
 
标签被“干掉”,绕过失败!
 
通过上面三种可以看出大小写绕过方案可行!
payload:
 
<Script>alert("hello !")</Script>
1
效果:
 
 
关于htmlspecialchars()函数的绕过:
这个函数的防御不全面,也就是说,如果后端只用该函数对输入进行处理,而没有其他处理的话,这样的输入口还是会产生漏洞的。比如:
 
 
 
$message=htmlspecialchars($_GET['message']);
1
上述图片就是只用htmlspecialchars()函数对输入做处理,而没用其他的,我们来试试如何绕过把!
输入:
 
提交后查看后端代码:
 
可以看到,2333和单引号和斜杠没有被处理,所以我们可以结合后端返回回来的代码试着做闭合处理:
payload:
 
' onclick='alert("hello!!!")'
1
 
 
总结:
xss的绕过方法很多很多,能否利用起来取决于你对PHP,Javascript,HTML等语言的理解程度,所以,努力吧!海阔凭鱼跃,天高任鸟飞!
————————————————
版权声明:本文为CSDN博主「老-男孩」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_43814486/article/details/89843012
如没特殊注明,文章均为狐灵科技原创,转载请注明  https://www.hulingweb.cn/qxpp/xuexibiji/8893.html
多一份免费策划方案,总有益处。

请直接添加技术总监微信联系咨询

网站设计 品牌营销

多一份参考,总有益处

联系狐灵科技,免费获得专属《策划方案》及报价

咨询相关问题或预约面谈,可以通过以下方式与我们联系

业务热线:023-68168040 / 大客户专线:15523356218