天天看點

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

Web安全之XSS攻防

1. XSS的定義

跨站腳本攻擊(Cross Site Scripting),縮寫為XSS。惡意攻擊者往Web頁面裡插入惡意Script代碼,當使用者浏覽該頁之時,嵌入其中Web裡面的Script代碼會被執行,進而達到惡意攻擊使用者的目的。

2. XSS的原理

攻擊者對含有漏洞的伺服器發起XSS攻擊(注入JS代碼)。

誘使受害者打開受到攻擊的伺服器URL。

受害者在Web浏覽器中打開URL,惡意腳本執行。

3. XSS的攻擊方式

(1)反射型: 送出請求時,XSS代碼出現在URL中,作為輸入送出到伺服器端,伺服器端解析後響應,XSS随響應内容一起傳回給浏覽器,最後浏覽器解析執行XSS代碼,這個過程就像一次發射,是以叫反射型XSS。

(2)存儲型: 存儲型XSS和反射型的XSS差别就在于,存儲型的XSS送出的代碼會存儲在伺服器端(資料庫,記憶體,檔案系統等),下次請求目标頁面時不用再送出XSS代碼。

4. XSS的防禦措施

(1)編碼:對使用者輸入的資料進行HTML Entity編碼

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(2)過濾:移除使用者上傳的DOM屬性,如onerror等,移除使用者上傳的style節點,script節點,iframe節點等。

(3)校正:避免直接對HTML Entity編碼,使用DOM Prase轉換,校正不配對的DOM标簽。

5. 應用示例

建構node應用,示範反射型XSS攻擊。(Linux作業系統中)

本例子的代碼位址:https://github.com/Xganying/Web-XSS (xss_test1)

(1) 建立一個檔案夾xss: mkdir xss_test1

(2) 切換目錄到該檔案夾下: cd xss

(3) 安裝express: express -e ./

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(4) 建構應用依賴: npm install

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(5) 打開建構好的node應用,得到目錄:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(6) 開啟node服務:npm start

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(7) 在浏覽器位址欄輸入:localhost:3000 ,得到:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(8) 加入xss

修改xss_test1檔案routers目録下的index.js檔案:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

修改xss_test1檔案views目錄下的index.ejs檔案:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

(9) 重新開機node服務:npm start ,打開浏覽器

a. 在位址欄輸入: localhost:3000/?xss=hello

運作結果得到:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

b. 在位址欄輸入:localhost:3000/?xss=<img src="null" οnerrοr="alert(1)">

運作結果得到:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

說明: 如果代碼中沒有 res.set('X-XSS-Protection', 0); 則會發現沒有彈出框,這是因為浏覽器自動設定了攔截XSS,是以onerror事件并不會執行,而加上了:res.set('X-XSS-Protection', 0); 才會出現彈框,這才完成了一次xss攻擊。

c. 在位址欄輸入:localhost:3000/?xss=<p οnclick="alert(%點我%)">點我</p>

運作結果得到:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

說明: 這種攻擊就是常用于篡改頁面内容,破壞頁面結構,引誘使用者去點選一些釣魚等網站的手段。

d. 在位址欄輸入:localhost:3000/?xss=<iframe src="//baidu.com/t.html"></iframe>

運作結果得到:

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

說明:這種攻擊就常用于廣告植入等。

簡單總結就是: img标簽是自動觸發而受到攻擊的,p标簽是引誘出發而受到攻擊的的,而iframe則是廣告植入攻擊的。

本文介紹了Web安全之XSS攻擊與防禦小結,XSS的定義、原理、攻擊方式、防禦措施及應用示例, 希望對您的學習有所幫助。

小編還整理了2021年網絡安全入門到精通 電子書籍,祝大家在金三銀四的日子裡順利找到自己喜歡的崗位,需要的朋友點選領取!

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防
Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防
Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

網絡安全學習路線

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

詳細網絡安全白皮書版本點選領取

贈送2021工具大禮包

Web安全:釣魚網站、廣告植入之攻與防原理Web安全之XSS攻防

繼續閱讀