1. 程式人生 > 實用技巧 >xss challenges通關攻略(含取巧,技術流就當看不見)

xss challenges通關攻略(含取巧,技術流就當看不見)

第一關:沒有任何過濾,直接寫入語句

第二關:由f12發現原始碼中有value存在,考慮閉合

第三關:隨機輸入,抓包發現

修改p2

第四關:

說明存在不可見的輸入域

抓包

發現p3“hackme”

在p3輸入

放包

通過

第五關:

根據提示,輸入的文字框長度被限制

直接在原始碼中更改限制的文字長度之後輸入語句

第六關

根據提示event handler attributes

採用js事件

" οnclick="alert(document.domain)"新增到文字框標籤中

第七關

根據提示輸入與上關相同的答案,錯誤,發現空格會被雙引號分割

第八關

根據提示

第九關

UTF-7

受第六關啟發在search按鈕中新增事件

彈窗了但是未通過

又在hint中的id=hide後新增事件

通過

第十關

直接輸入測試語句發現domain被過濾了

採用雙寫繞過

"><script>alert(document.dodomainmain);</script>

第十一關

第十二關

"s/[\x00-\x20\<\>\"\']//g;"

特殊字元都被過濾了,只有用``繞過,但只有ie瀏覽器會把``識別成“

`` onmouseover=alert(document.domain);

第十三關

根據提示:

直接構造

不通過

故技重施

第十四關

還是過不了,再次故技重施

onclick=”alert(document.domain)”

第十五關

第一次輸入測試語句發現/等特殊符號被過濾

使用ascii編碼+雙寫/

\\u003cscript\\u003ealert(document.domain)\\u003c/script\\u003e

第十六關

無法進入

第十七關

這裡說只可以在此頁面只可以在老版本ie上執行,可以跳過,但繼續傳統藝能,通過給提示按鈕新增事件彈窗

第十八關

傳統藝能

第十九關

在link連結標籤中新增js事件彈窗

通關

引自

https://www.cnblogs.com/goodhacker/p/3312721.html:

第十七關和第十八關:

17:multi-byte character euc-jp的編碼範圍: byte 1為8E時, 為2 byte編碼, byte 2範圍為A1-DF ,byte 1範圍為A1-FE時, 為2 byte編碼, byte 2範圍為A1-FE ,byte 1為8F時為3 byte編碼, byte 2與byte 3範圍均為A1-FE ,兩個表單元素都提交%A7閉合最後的雙引號,檢視原始碼成功了,但由於ie瀏覽器的問題,可以在老版本里採用一下語句一試

p1=1%A7&p2=+onmouseover%3Dalert%28document.domain%29%3B+%A7

18:us-ascii high bit issue 41-5A, 61-7A (若含數字與符號則為21-7E) 同樣別用IE8,這些漏洞已經在IE8中修補了。

p1=%A2%BE%BCscript%BEalert(document.domain);%BC/script%BE