Xss-labs-level16-20
level16
此关卡可以正常显示字符,输入正常的bmfx字符看看
输入测试代码:<script>alert('bmfx')</script> 发现把script直接编码成字符实体了
看看源码怎么过滤的
可以知道过滤的script,空格,/ 等各种测试代码的关键字符,空格绕过的话,使用回车可以绕过,所以经过测试使用回车符可以绕过,但是回车符直接输入的话有问题,我们通过URL编码的形式进行绕过,回车符对应URL编码为
最终绕过代码如下:
level17
此关卡使用了flash,可以通过js事件形式触发测试代码,具体如下:
level18
此关卡跟level17关卡一样,只是没有flash,测试代码一样
http://10.0.1.83/xsslab/level18.php?arg01=a&arg02=b onmouseover=alert('bmfx')
level19
此关卡是跟flash xss有关,具体可参考:https://www.cnblogs.com/-qing-/p/10853379.html
针对flash的反编译工具:https://github.com/jindrapetrik/jpexs-decompiler 具体的编译过程请查看:https://www.zhaosimeng.cn/writeup/119.html 和 http://0verflow.cn/?p=1811
最终得出的测试代码:http://10.0.1.83/xsslab/level19.php?arg01=version&arg02=<a href="javascript:alert(/bmfx/)">bmfx</a>
level20
此关卡跟level19差不多,只不过本关卡不显示页面,最终的测试代码如下:http://10.0.1.83/xsslab/level20.php?arg01=id&arg02=bmfx\"))}catch(e){alert(/bmfx/)}//%26width=998%26height=998
具体反编译查看源码分析看这个吧 https://www.zhaosimeng.cn/writeup/119.html 不懂flash