Web安全系列(二):XSS 攻击进阶(初探 XSS Payload)
什么是 XSS Payload
上一章我談到了 XSS 攻擊的幾種分類(lèi)以及形成的攻擊的原理,并舉了一些淺顯的例子,接下來(lái),我就闡述什么叫做 XSS Payload 以及從攻擊者的角度來(lái)初探 XSS 攻擊的威力。
在黑客 XSS 攻擊成功之后,攻擊者能夠?qū)τ脩?hù)當(dāng)前瀏覽的頁(yè)面植入各種惡意腳本,通過(guò)惡意腳本來(lái)控制瀏覽器,這些腳本實(shí)質(zhì)上就是 JavaScript 腳本(或者是其他瀏覽器可以運(yùn)行的腳本),這種惡意植入且具有完成各種具體功能的惡意腳本就被稱(chēng)為 XSS Payload。
初探 XSS Payload
一個(gè)最常見(jiàn)的 XSS Payload ,就是通過(guò)瀏覽器讀取 Cookie 對(duì)象,進(jìn)而發(fā)起 Cookie 劫持 攻擊。
一般一個(gè)網(wǎng)站為了防止用戶(hù)無(wú)意間關(guān)閉頁(yè)面,重新打開(kāi)需要重新輸入賬號(hào)密碼繁雜的情況下,一般都會(huì)把登錄信息(登錄憑證)加密存儲(chǔ)在 CooKie 中,并且設(shè)置一個(gè)超時(shí)時(shí)間,在此時(shí)間段內(nèi),用戶(hù)利用自己賬號(hào)信息隨意進(jìn)出該網(wǎng)站。如果該網(wǎng)站遭到 XSS Payload ,黑客盜取了該用戶(hù)的 Cookie 信息,往往意味著該用戶(hù)的登錄憑證丟失了,換句話(huà)說(shuō),攻擊者不需要知道該用戶(hù)的賬號(hào)密碼,直接利用盜取的 Cookie 模擬憑證,直接登錄到該用戶(hù)的賬戶(hù)。
如下所示,攻擊者先在一個(gè)社區(qū)發(fā)表一篇文章:
你有意無(wú)意點(diǎn)了一下 點(diǎn)我得大獎(jiǎng) 這個(gè)時(shí)候,XSS Payload 就生效了:
該XSS Payload會(huì)請(qǐng)求一個(gè) img 圖片,圖片請(qǐng)求地址即為黑客的服務(wù)器地址, url 參數(shù)帶上 Cookie ,我們?cè)诤笈_(tái)服務(wù)器接收到了這個(gè)請(qǐng)求:
這個(gè)時(shí)候,黑客就可以獲取到此 Cookie,然后模擬 CooKie 登陸。
當(dāng)然傳輸?shù)膬?nèi)容可以是任何內(nèi)容,只要能獲取到的,全都可以傳輸給后臺(tái)服務(wù)器。
如何利用竊取的 Cookie 登陸目標(biāo)用戶(hù)的賬戶(hù)呢?這和利用自定義Cookie訪問(wèn)網(wǎng)站的過(guò)程是一樣的,參考如下:
當(dāng)沒(méi)有登陸的時(shí)候,Cookie 內(nèi)容是空的:
當(dāng)我們手動(dòng)添加 Cookie 后,登陸的內(nèi)容如下:
此時(shí),我們就已經(jīng)登陸上了該用戶(hù)的賬戶(hù)。
所以,通過(guò) XSS 攻擊,可以完成 Cookie 劫持 攻擊,直接登陸進(jìn)用戶(hù)的賬戶(hù)。
其實(shí)都不需要帶上參數(shù),黑客就能獲取到所有數(shù)據(jù),這是因?yàn)楫?dāng)前 Web 中,Cookie 一般是用戶(hù)憑證,瀏覽器發(fā)起的所有請(qǐng)求都會(huì)自動(dòng)帶上 Cookie 。
那么該如何預(yù)防 Cookie 劫持 呢?
Cookie 的 HttpOnly 標(biāo)識(shí)可以有效防止 Cookie 劫持,我們會(huì)在稍后章節(jié)具體介紹。
總結(jié)
以上是生活随笔為你收集整理的Web安全系列(二):XSS 攻击进阶(初探 XSS Payload)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 登录功能测试点
- 下一篇: ELK 删除索引只保留10天