这关进去以后是个这个页面:
页面显示的 Hello hacker 和url上最后name=后的一样,然后再看一下源码:
在源码的下方找到这个输出的位置,第一关一般都比较简单,不会有太多的过滤,所以先用常用的标签来尝试一下:
<script>alert(1)</script>
进来以后和第一关一样:
查看源码:
发现差不多也和第一关一样,就是少了标签,先用第一关的方法试一下:
发现只输出了alert(),标签被过滤掉了,现在我们先试一下大小写能不能绕过:
<Script>alert(1)</Script>
<a href=javascript:alert(1)>123</a>
每一关进去以后的页面应该都是一样的,这关做的时候还是先用标签试一下,发现这个标签不论大小写都被过滤了,再查看下源码:
<a href =javascript:alert(1)>123</a>
这一个先用上面的拿几种方法试一下,页面回显是:
试着单独输出的时候,只有输入script的时候页面才会显示error,其他都能输出,说明吧script给过滤了改成大写虽然能够输出但是在中页面还是显示的error,这时我们尝试url编码的方法来看看能不能绕过:
<a href="javas%09cript:alert(1)">123</a>
这是又一种方法,当常用的方法行不通时可以就可以使用这种方法试一下。
这一个先试着用上一关的方法都试一下,结果发现,alert被过滤了,同时大小写也行不通,同样试一下url编码绕过:
<a href="javascript:al%09ert(1)">123</a>
打开页面后,发现不管我们输入什么都回显,然后看一下源码:
发现我们输入的东西都下$a中,并且处于标签中,既然这样的话那就先闭合这个标签然后再构建一个标签试试:
</script><a href=javascript:alert(1)>123</a><script>
经过尝试,这关吧<>给过滤了:
所以在这一关就不能使用创建标签的方法了,既然是在里,那就利用这个标签的方法来做:
';alert(1);'
这一个进来以后是这样的:
先随便输个东西看看:
然后再看一下源码:
发现页面是post传参,并且输出的东西也不在什么标签里面,经过又一系列的尝试,发现它也把<>给过滤了,但是又尝试了许多其他方法后,还是一无所获。换种思路来做,继续在url里进行尝试:
发现在后面加上随便加一个路径后照样能够正常显示,再看一下源码:
发现这个后面可以输入东西,这也是一个可以入手的地方,这就简单了:
/"><script>alert(1)</script>