第一关
如上图不难发现此关突破点在url中 观察url中的参数name=test,我们不妨将test更改下试试看。
你会发现在源码<h2></h2>标签外输出,因此可以利用参数name来进行操作;
构造javascript代码:
<script>alert()</script>
<img src="" onerror="alert()"> // onerror 当图片连接地址错误是 执行onerror事件
第二关
与第一关解题思路一样,不同的是这次有了输入框,并且在右侧input标签中的value属性中输出了
将上一关的payload打上去看看;
发现你的输入仍在value里面,试着将前面value闭合,重新构造payload:
"><script>alert()</script> // "> 是为了闭合前面的input标签
第三关
将上一关的payload写入,我们在F12模式下并未发现代码有何问题,打开源码查看,发现 " < > 都被转成了实体编码;
那么我们在输入时就不能在有 " < > ,否则插入的脚本无法执行;
那么我们更换思路,尝试在 input标签内用其中的事件去触发alert();
构造payload:
'onclick='alert() // onclick 点击事件
点击搜索框即可成功!