五、XSS進階
5.1 XSS常用陳述句及編碼繞過
??XSS常用的測驗陳述句有:
-
<script>alert(1)
-
<img src=x οnerrοr=alert(1)>
-
<svg οnlοad=alert(1)>
-
<a href=javascript:alert(1)>
??常見的XSS的繞過編碼有JS編碼、HTML物體編碼和URL編碼,
- JS編碼
??JS提供了四種字符編碼的策略,如下所示,
-
三個八進制數字,如果個數不夠,在前面補0,例如“e”的編碼為“\145”,
-
兩個十六進制數字,如果個數不夠,在前面補0,例如“e”的編碼為“\x65”,
-
四個十六進制數字,如果個數不夠,在前面補0,例如“e”的編碼為“\u0065”,
-
對于一些控制字符,使用特殊的C型別的轉移風格(例如\n和\r),
- HTML物體編碼
- 命名物體:以&開頭,以分號結尾的,例如“<”的編碼是“<”,
- 字符編碼:十進制、十六進制ASCII碼或Unicode字符編碼,樣式為“&#數值;”,例如“<”可以編碼為“<”和“<”,
- URL編碼
??這里的URL編碼,也是兩次URL全編碼的結果,如果alert被過濾,結果為%25%36%31%25%36%63%25%36%35%25%37%32%25%37%34,
??在使用XXS編碼測驗時,需要考慮HTML渲染的順序,特別是針對多種編碼組合時,要選擇合適的編碼方式進行測驗,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/344124.html
標籤:其他
