天天看點

xss實戰,xss靶場通關詳解

第一關:我們發現頁面上沒有任何可以輸入的地方

xss實戰,xss靶場通關詳解

但是發現url中有參數傳遞為test,而頁面上也顯示了test,是以說,傳入的參數可以顯示到頁面上。

使用f12控制台檢視原代碼

xss實戰,xss靶場通關詳解

我們傳入

<script></script>

xss實戰,xss靶場通關詳解

這裡可以發現,原本來的test不見了,按理來說應該會出現歡迎使用者

<script></script>

才對,但是沒有,到哪裡去了,沒錯,他被浏覽器解析了,在這個标簽中就可以插入你想執行的js代碼

xss實戰,xss靶場通關詳解

我們由于靶場需要彈窗才能進入下一關,是以傳入

<script>alert()</script>

進入下一關

第二關:

xss實戰,xss靶場通關詳解

有輸入框,直接插入嘗試

xss實戰,xss靶場通關詳解

沒有成功,右鍵檢視源代碼

xss實戰,xss靶場通關詳解

發現上面的文字内容被html實體化編碼了,但是下面輸入框裡還會顯示原内容但是在value值内浏覽器無法解析,我們嘗試閉合value屬性使用

>"<script></script>#

成功閉合,#是為了注釋後面原有的>"

xss實戰,xss靶場通關詳解

彈窗進入下一關

第三關:

xss實戰,xss靶場通關詳解

同樣使用上一關的payload來嘗試,沒有成功,右鍵檢視源碼

xss實戰,xss靶場通關詳解

發現連value值裡的内容都被實體化編碼了,是以,我們需要嘗試其他辦法來執行js代碼

我們可以發現我們傳入的值是在input标簽中的,而标簽都有屬性,我們可以給他添加一個屬性,利用這個屬性來執行js代碼,雙引号閉合失敗就嘗試單引号閉合value

xss實戰,xss靶場通關詳解

這裡onmouseover是嵌入到input中的一個屬性,他的作用是滑鼠滑過時執行javascript代碼,成功繞過。

第四關:

我們首先嘗試直接插入

xss實戰,xss靶場通關詳解

發現括号被過濾了,那我們就嘗試不使用括号的方法,也就是屬性值。"οnmοuseοver='alert()'于前一關不同的是使用了雙引号來閉合value

第五關:

同樣直接插入

xss實戰,xss靶場通關詳解

我們發現其中一個script被加了下劃線,嘗試onmouseover

xss實戰,xss靶場通關詳解

同樣被加了下劃線

但同樣的,這個标簽還是可控的,我們可不可以直接将頁面閉合,自己建立一個标簽呢 ,建立一個a标簽超連結">123

xss實戰,xss靶場通關詳解

點選超連結通關

主要是get到這幾個點,通過直接插入,通過事件,通過閉合标簽,後面幾關意思不大,我之後會總結繞過方式。

繼續閱讀