XSS绕过waf

1 .xss-labs-master靶机绕过:
level1
首先在地址栏里输入name=aaa,并且F12开启检查,发现将aaa输入到了标签里,且没有限制,
XSS绕过waf_第1张图片
所以,我们直接输入 alert(1)来绕过

level2
首先我们先用来测试,发现输出在了value引号里
XSS绕过waf_第2张图片
所以需要我们闭合标签和引号
XSS绕过waf_第3张图片
XSS绕过waf_第4张图片
level3
还是通过script先测试,找到输出位置
XSS绕过waf_第5张图片
采用标签闭合发现也不行,通过查看源码发现使用了htmlspeclalchars()函数,通过查询文档发现该函数会将<转义为实体编码,该函数的第二个参数默认情况下仅编码双引号,所以我们用单引号以及点击事件来绕过,
XSS绕过waf_第6张图片
XSS绕过waf_第7张图片
level4
还是用script打头阵来找到输出的位置,且发现还过滤了我们的尖括号<>,
XSS绕过waf_第8张图片
所以我们使用点击事件来绕过
XSS绕过waf_第9张图片
XSS绕过waf_第10张图片

level5
同样的,使用script打头阵,
XSS绕过waf_第11张图片
发现将 XSS绕过waf_第12张图片
XSS绕过waf_第13张图片
level6
script开头
XSS绕过waf_第14张图片
很明显,过滤了我们的script
通过查询源代码发现过滤了 由于我们的html对大小写不敏感,所以我们用大写的点击事件来绕过
在这里插入图片描述
level7
script开头
XSS绕过waf_第15张图片
发现将我们的script替换成了空格且通过查看源代码发现,它会先将我们的输入会转为小写,然后又将script,on等等换成了空格,那我们尝试用双写的方式来绕过
XSS绕过waf_第16张图片
XSS绕过waf_第17张图片
level8
用aaa先当炮灰,找输出位置,输出早了href里
XSS绕过waf_第18张图片

查看下源代码发现先将输入转换为小写,然后将script转换为scr_ipt,on转换为o_n等等,所以无法双写绕过,也无法大小写绕过
,所以我们使用编码绕过

XSS绕过waf_第19张图片
XSS绕过waf_第20张图片
leve9
用第8关通关方式试一下,发现不行
XSS绕过waf_第21张图片
查看源代码,发现链接中要有http://,所以我们在第八关的基础上加上http://
加在前面弹窗不了,加在后面在加//相当于加注释,因为是js的伪协议,所以遵循我们js的//注释,然后可以执行弹窗
XSS绕过waf_第22张图片
2.github上的靶机的绕过
第一关,没什么好说的,直接script绕过
XSS绕过waf_第23张图片
第二关,依旧没什么好说的啊,很明显他用了textarea这个标签,这是RCDATA元素,里面容纳文本和字符引用,所以在这个里面写不会进入标签开始状态,所以我们先将他闭合,然后再写我们的scriptXSS绕过waf_第24张图片
第三关
闭合标签,so easy
XSS绕过waf_第25张图片
第四关,过滤了括号,所以使用编码绕过
XSS绕过waf_第26张图片
第五关,过滤了反引号和括号,没什么好说的,用编码绕过
XSS绕过waf_第27张图片
第六关,很明显我们的输出被放在了注释里,所以我们要闭合注释,但刚好又过滤了–>的注释,由于js松散,所以我们用–!>来闭合注释,从而绕过
XSS绕过waf_第28张图片
第七关,可以看出,他过滤了我们的auto,我们的>,以及会将on后面跟任意字符=的形式替换成空格,在这种情况下,我们试下换行,相当于没有在onclick后面跟等=,而是跟了换行,而html可以换行的输入,所以绕过XSS绕过waf_第29张图片
当然,这种人为的好像不是很完美,我们尝试不用<>的方法来绕过,而image有种写法可以不用<>,
XSS绕过waf_第30张图片
第八关,很明显,看正则表达式后,意思是我们的<和/匹配0次到一次,然后中间的内容为不许匹配>为一次到多次,意思就是<后至少有一个不为>的字符,过来最后匹配我们的>,即<1>形如这种的,只要是标签里有字符,那就会被过滤,所以我们无法闭合标签,由于img可以不闭合标签也能执行,所以用这个技巧绕过
XSS绕过waf_第31张图片
第九关,很明显,这是style标签,只容纳文本,所以我们要逃逸出来,但是他刚好过滤了,导致不好闭合,所以我们尝试用换行来试,将>换行到下面,看能否执行,执行就可绕过
XSS绕过waf_第32张图片
第十关,很明显该正则表达式意思是必须要以https://www.segmentfault.com开头,然后,我们将标签引号闭合,然后在写script,然后绕过
XSS绕过waf_第33张图片
3.最后一个靶机
第一关,简单,闭合就行
XSS绕过waf_第34张图片
XSS绕过waf_第35张图片
next
和前面一关相似,用img的不用闭合,html的纠错功能绕过XSS绕过waf_第36张图片
XSS绕过waf_第37张图片
next,过滤了(,[,=,直接用`反引号绕过
XSS绕过waf_第38张图片
next,这一关过滤了->,上面有一关和这个一样,用–!>闭合,
XSS绕过waf_第39张图片

你可能感兴趣的:(xss,前端,javascript)