XSS.TV挑戰賽(一)
02-02
0x0 前言
最近學了XSS,想找點練手的東西,突然發現http://xss.tv這個平台上有個xss挑戰賽。
0x1 Level1
基本信息
可以看到通過GET傳了一個test。
第一關嘛,猜測是沒過濾的。
明顯是沒有對輸入進行任何過濾。
直接水過了,應該有更短的payload,懶得想了。
payload: <script>alert()</script>
0x2 Level2
一眼看過去只有一個輸入點,兩個輸出點。
打個簡單的payload看過濾了什麼。
其中h2部分加了轉義,注入難度有點高,但是注意下面的input什麼都沒做(大小寫不一致是因為不是同時截的圖),那就簡單了。
不用客氣,直接一個>閉合了input標籤,然後加了一個能觸發alert的屬性就行了。
payload: "onchange=alert(1)>
0x3 Level3
和Level2雷同,也是兩個輸入點和一個輸出點。
發現對value也進行了轉義,這樣就不能直接用>來閉合了,先試試直接加屬性
結果莫名多了個單引號gg,那隻能強行讓這個『去當一個屬性來弄走了。
順利搞定。
payload: onchange=alert(1) ="
0x4 Level4
依舊是一個輸入點,兩個輸出點。
哇,這次value直接把>過濾沒了,不過依舊可以按照Level3的思路。
直接把多的"變成後面的屬性,搞定。
payload: "onchange=alert(1)
初學XSS,感覺這還是一門很有趣的技術,剩下的下次再寫出來吧。
如果大家有更好的思路,可以在評論區給出~
推薦閱讀:
※XSS 攻擊有哪些黑魔法?
※XSS常見攻擊與防禦
※仿:Pentester中的XSS詳解
※XSS.TV挑戰賽(二)
TAG:XSS | CTFCaptureTheFlag |