第六关
我们输入<script>alert(1)</script>出现一下显示:
发现对“script”进行了特殊处理,打开后台代码:
发现对上述内容都进行了处理,但是并没有进行大小写的区别,所以尝试采用大小写绕过看看能不能通过
payload:"><a HeRf=javascript:alert('pass')>pass?<a>//
通过。
第七关
打开控制器,发现和上关内容相似,输入和上关同样的payload测试:
失败。。。
同样的打开代码分析。
对以上字符都做了置空处理,但是只是特定的字符,我们尝试双写标记的字符,看看能不能绕过。
这里采用事件触发的方式:
payload:"oonnfocus="javascriptscript:alert('pass')">//
通过
第八关
直接点击“添加友情链接”,然后点击‘友情链接’跳转出来的是404报错,打开控制器,发现后台将我们添加的链接参数传给了‘友情链接’,我们传入一个错误的参数查看:<script>alert('1')</script>
报错了(403),查看代码:
发现对以上都做了处理,
经过尝试后,发现都我们之间采用的双写特殊字符,大小写绕过都不可用,所以我们对我们注入的‘链接’重新编码:
payload:javascript:alert('1') ----> 我们 党的
通过。
第九关
我们输入一个正常的链接:http://www.baidu.com,成功跳转,我们打开代码查看:
发现该处对我们输入的内容进行了if语句的判断,我们输入一个包含正确格式的恶意代码:
javascript:alert('pass')http://www.baidu.com
可以植入,但是script被重写了,所以我们对被注释的内容重新编码,
通过
注意:为保证我们写入的payload有效,我们需要将编码后的javascript:alert('pass')和输入的百度url地址用//分开。payload:javascript:alert('pass')//http://www.baidu.com
第十关
没有任何的输入框,我们打开代码查看:
发现有三个隐藏关键字,我们尝试去唤醒某一个参数让它执行命令
传入参数后发现t_sort可以接收参数,所以我们可以通过多种类型进行这一关的通过。
我的payload:&t_sort=click"type="button"οnclick="alert(1)"