上篇連結:我是上篇
下篇連結:我是下篇------待續
目錄
-
-
- Stage #6 html事件中的XSS
- Stage #7 清單中的XSS
- Stage #8 javascript中的XSS
- Stage #9 UTF-7中的XSS
- Stage #10 有過濾的XSS(1)
-
- 解法一
- 解法二
- Stage #11 有過濾的XSS(2)
- Stage #12 有過濾的XSS(3)
-
Stage #6 html事件中的XSS
用事件即可解決,舉個例:下面三種都可
onlick事件
onmouseover事件
unload事件
" οnclick="alert(document.domain)
" οnclick="alert(document.domain)"
" οnmοuseοver="alert(document.domain)
" οnmοuseοver="alert(document.domain)"
//其實後面不用閉合,但閉合了也沒關系,網站會自動加個=的閉合構成
Stage #7 清單中的XSS
輸入123,正常
輸入123 234
-->value="123" 234=""
再輸入123 234 345
-->value="123" 234="" 345=""
再輸入123 234=345
-->value="123" 234="345"
這樣就清楚了,構造payload
Stage #8 javascript中的XSS
F12後随意輸入幾個字元:111222,發現是超連結
構造普通的XSS發現行不通,于是構造一下内容:
Stage #9 UTF-7中的XSS
沒有所需的環境…
用的取巧的payload
在F12後選取hint,在id=“hide”後面加上如下代碼即可
Stage #10 有過濾的XSS(1)
老樣子,輸入一下語句測試
F12定位代碼後發現document沒了,考慮是過濾
解法一
想到雙寫domain試一試,結果成功了
解法二
使用base64解碼繞過過濾
把alert(document.domain)進行base64編碼後(不限于base64)
使用atob函數進行base64解碼即可
Stage #11 有過濾的XSS(2)
此題提示為
就是過濾了script,過濾了on開頭的事件,過濾了style
Stage #12 有過濾的XSS(3)
因為雙引号空格等都被過濾,是以
采用兩個反引号`` 進行替代雙引号
但是隻有IE浏覽器才會将反引号識别為",
是以用IE浏覽器打開輸入以下代碼即可
`` onmouseover=alert(document.domain);