XSS挑戰賽 --前13關

1、xss的造成原理
 
xss 中文名是「跨站腳本攻擊」,英文名「Cross Site Scripting」。
xss也是一種注入攻擊,當web應用對用戶輸入過濾不嚴格,攻擊者寫入惡意的腳本代碼(HTML、JavaScript)到網頁中時,若是用戶訪問了含有惡意代碼的頁面,惡意腳本就會被瀏覽器解析執行致使用戶被攻擊。
常見的危害有:cookie竊取,session劫持,釣魚攻擊,蠕蟲,ddos等。

2、xss的分類
 
xss根據其特性和利用方式能夠分爲三大類:反射型xss,存儲型xss,DOM型xss
 
一、反射型xss
反射型xss通常出如今URL參數中及網站搜索欄中,因爲須要點擊包含惡意代碼的URL才能夠觸發,而且只能觸發一次,因此也被稱爲「非持久性xss」。
 
二、存儲型xss
存儲型xss一出如今網站留言板,評論處,我的資料處,等須要用戶能夠對網站寫入數據的地方。好比一個論壇評論處因爲對用戶輸入過濾不嚴格,致使攻擊者在寫入一段竊取cookie的惡意JavaScript代碼到評論處,這段惡意代碼會寫入數據庫,當其餘用戶瀏覽這個寫入代碼的頁面時,網站從數據庫中讀取惡意代碼顯示到網頁中被瀏覽器執行,致使用戶cookie被竊取,攻擊者無需受害者密碼便可登陸帳戶。因此也被稱做「持久性xss」。持久性xss比反射型xss危害要大的多。
 
三、dom型xss
DOM xss是基於dom文檔對象模型,前端腳本經過dom動態修改頁面,因爲不與服務端進行交互,並且代碼是可見的,從前端獲取dom中的數據在本地執行。
常見的能夠操縱dom的對象:URL,localtion,referrer等

引發觸發的幾條語句:
<script>alert('hello,gaga!');</script>
>"'><img src="javascript.:alert('XSS')">
' onmouseover=alert(2) '
" onclick=alert(1) "
"><a href=javascript:alert(1)>ddd
"><img src=# onerror=alert(1)>>
<svg onload=alert(1)>

繞過思路:
1.JS編碼
   八進制e   \145
    十六進制   e  \x65  或者  \x0065
    特殊C風格: \n   \r
2.HTML實體編碼
   命名實體:<        &lt;
   字符編碼:十進制、十六進制 ASCII碼或Unicode字符編碼
                       樣式爲:「&#數值;」
                   例如: <    能夠編碼爲  &#060; &#x3c
3.URL編碼
       兩次URL全編碼


三:javascript

xss挑戰  網址:
http://xss.tesla-space.com/前端

參考答案:java

 

 

相關文章
相關標籤/搜索