在web項目安全漏洞中,XSS是最為流程的漏洞類型之一,今天就來介紹一下XSS。
01 XSS介紹
跨站腳本攻擊是指惡意攻擊者往Web頁面里插入惡意Script代碼,當用戶瀏覽該頁之時,嵌入其中Web里面的Script代碼會被執行,從而達到惡意攻擊用戶的目的。
02 XSS分類
XSS簡單的說就是沒有做好校驗,因為前端的用戶輸入的數據別人可以攔截,然后嵌入一些腳本代碼或者其它的而達到不良的結果,有點類似與sql注入的攻擊。
XSS攻擊一般有這么三種分類:反射型XSS,存儲型XSS,DOM型XSS。接下來,分別介紹一下三種分類,及其差別。
03 反射型XSS
攻擊者事先制作好攻擊鏈接, 需要欺騙用戶自己去點擊鏈接才能觸發XSS代碼(服務器中沒有這樣的頁面和內容),一般容易出現在搜索頁面。發出請求時,XSS代碼出現在URL中,作為輸入提交到服務器端,服務器端解析后響應,XSS代碼隨響應內容一起傳回給瀏覽器,最后瀏覽器解析執行XSS代碼。
04 存儲型XSS
代碼是存儲在服務器中的,如在個人信息或發表文章等地方,加入代碼,如果沒有過濾或過濾不嚴,那么這些代碼將儲存到服務器中,每當有用戶訪問該頁面的時候都會觸發代碼執行,這種XSS非常危險,容易造成蠕蟲,大量盜竊cookie。
存儲型XSS和反射型XSS的差別僅在于,提交的代碼會存儲在服務器端(數據庫、內存、文件系統等),下次請求目標頁面時不用再提交XSS代碼,最典型的例子就是留言板XSS,用戶提交一條包含XSS代碼的留言存儲到數據庫,目標用戶查看留言板時,那些留言就會從數據庫中加載出來并顯示,于是發生了XSS攻擊。
05 DOM型XSS
基于文檔對象模型(Document Objeet Model,DOM)的一種漏洞。DOM是一個與平臺、編程語言無關的接口,它允許程序或腳本動態地訪問和更新文檔內容、結構和樣式,處理后的結果能夠成為顯示頁面的一部分。DOM中有很多對象,其中一些是用戶可以操縱的,如URI ,location,referrer等。客戶端的腳本程序可以通過DOM動態地檢查和修改頁面內容,它不依賴于提交數據到服務器端,而從客戶端獲得DOM中的數據在本地執行,如果DOM中的數據沒有經過嚴格確認,就會產生DOM XSS漏洞。
DOM XSS和反射型XSS、存儲型XSS的區別在于DOM XSS代碼并不需要服務器參與,發出XSS攻擊靠的是瀏覽器的DOM解析,完全是客戶端的事情。
-
安全測試
+關注
關注
0文章
24瀏覽量
8696 -
XSS
+關注
關注
0文章
24瀏覽量
2367
發布評論請先 登錄
相關推薦
評論