摘要:全程跨站域請求偽造這種攻擊方式相對于注入等攻擊方式比較晚被發(fā)現(xiàn)今天就來講解下這種攻擊方式以及避免方式攻擊過程假設(shè)用戶登錄銀行的網(wǎng)站進行操作同時也訪問了攻擊者預(yù)先設(shè)置好的網(wǎng)站點擊了攻擊者網(wǎng)站的某一個鏈接這個鏈接是指向銀行銀行服務(wù)器會根據(jù)這個鏈
CSRF全程 Cross Site Request Forgery, 跨站域請求偽造.這種攻擊方式相對于XSS,SQL注入等攻擊方式比較晚被發(fā)現(xiàn),今天就來講解下這種攻擊方式以及避免方式.
攻擊過程假設(shè)abc用戶登錄銀行的網(wǎng)站進行操作, 同時也訪問了攻擊者預(yù)先設(shè)置好的網(wǎng)站.
abc點擊了攻擊者網(wǎng)站的某一個鏈接,這個鏈接是http://www.bank.com/xxxx指向銀行,銀行服務(wù)器會根據(jù)這個鏈接攜帶的參數(shù)會進行轉(zhuǎn)賬操作.
銀行服務(wù)器在執(zhí)行轉(zhuǎn)賬操作之前會進行SESSION驗證是否登錄, 但是由于abc已經(jīng)登錄了銀行網(wǎng)站,攻擊者的鏈接也是www.bank.com.所以攻擊的鏈接就會攜帶session id到銀行服務(wù)器.
由于session id是正確的,所以銀行會判斷操作是由本人發(fā)起的,執(zhí)行轉(zhuǎn)賬操作.
演示根據(jù)上面的說明,我們來模擬一下攻擊的過程.
有www.bank.com跟www.hacker.com.用戶abc登錄www.bank.com網(wǎng)站之后點擊了www.hacker.com的點擊抽大獎的誘騙鏈接
此鏈接會向www.bank.com發(fā)起一個post請求.由于請求域名為www.bank.com,所以請求會攜帶www.bank.com的session id.
www.hacker.com的代碼Title
可以發(fā)現(xiàn),www.hacker.com的網(wǎng)頁中包含了一個向www.bank.com發(fā)起的post請求.并且表單都沒隱藏了,只有一個誘騙用戶點擊的按鈕.
完整的實例代碼可以在github上找到.傳送門.
預(yù)防從上面的例子 可以看到csrf攻擊.黑客不能拿到cookie,也沒辦法對服務(wù)器返回的內(nèi)容進行解析.唯一能做的就是給服務(wù)器發(fā)送請求.通過發(fā)送請求改變服務(wù)器中的數(shù)據(jù).上面的例子中攻擊者誘導(dǎo)用戶點擊鏈接進行轉(zhuǎn)賬操作,使得銀行數(shù)據(jù)庫中受害者的金額發(fā)生了改變.
了解了csrf攻擊的原理和目標(biāo),提出了兩種防御手段
referer 驗證根據(jù)HTTP協(xié)議,在http請求頭中包含一個referer的字段,這個字段記錄了該http請求的原地址.通常情況下,執(zhí)行轉(zhuǎn)賬操作的post請求www.bank.com/transfer.php應(yīng)該是點擊www.bank.com網(wǎng)頁的按鈕來觸發(fā)的操作,這個時候轉(zhuǎn)賬請求的referer應(yīng)該是www.bank.com.而如果黑客要進行csrf攻擊,只能在自己的網(wǎng)站www.hacker.com上偽造請求.偽造請求的referer是www.hacker.com.所以我們通過對比post請求的referer是不是www.bank.com就可以判斷請求是否合法.
這種方式驗證比較簡單,網(wǎng)站開發(fā)者只要在post請求之前檢查referer就可以,但是由于referer是由瀏覽器提供的.雖然http協(xié)議有要求不能篡改referer的值.但是一個網(wǎng)站的安全性絕對不能交由其他人員來保證.
token 驗證從上面的樣式可以發(fā)現(xiàn),攻擊者偽造了轉(zhuǎn)賬的表單,那么網(wǎng)站可以在表單中加入了一個隨機的token來驗證.token隨著其他請求數(shù)據(jù)一起被提交到服務(wù)器.服務(wù)器通過驗證token的值來判斷post請求是否合法.由于攻擊者沒有辦法獲取到頁面信息,所以它沒有辦法知道token的值.那么偽造的表單中就沒有該token值.服務(wù)器就可以判斷出這個請求是偽造的.
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/22235.html
摘要:網(wǎng)絡(luò)黑白一書所抄襲的文章列表這本書實在是垃圾,一是因為它的互聯(lián)網(wǎng)上的文章拼湊而成的,二是因為拼湊水平太差,連表述都一模一樣,還抄得前言不搭后語,三是因為內(nèi)容全都是大量的科普,不涉及技術(shù)也沒有干貨。 《網(wǎng)絡(luò)黑白》一書所抄襲的文章列表 這本書實在是垃圾,一是因為它的互聯(lián)網(wǎng)上的文章拼湊而成的,二是因為拼湊水平太差,連表述都一模一樣,還抄得前言不搭后語,三是因為內(nèi)容全都是大量的科普,不涉及技術(shù)...
摘要:前端最基礎(chǔ)的就是。但是如果是盜竊,異常提交請求,這些就屬于危險操作。可以用來偽裝成其他用戶操作,有可能就會造成財產(chǎn)上的損失。劫持有的時候運營商的劫持還是沒辦法。 前端最基礎(chǔ)的就是 HTML+CSS+Javascript。掌握了這三門技術(shù)就算入門,但也僅僅是入門,現(xiàn)在前端開發(fā)的定義已經(jīng)遠遠不止這些。前端小課堂(HTML/CSS/JS),本著提升技術(shù)水平,打牢基礎(chǔ)知識的中心思想,我們開課啦...
摘要:搞開發(fā)離不開安全這個話題,確保網(wǎng)站或者網(wǎng)頁應(yīng)用的安全性,是每個開發(fā)人員都應(yīng)該了解的事。阿里巴巴的安全團隊在實戰(zhàn)中發(fā)現(xiàn),防御產(chǎn)品的核心是檢測技術(shù)和清洗技術(shù)。表示轉(zhuǎn)賬的目標(biāo)賬戶,表示轉(zhuǎn)賬數(shù)目。 搞 Web 開發(fā)離不開安全這個話題,確保網(wǎng)站或者網(wǎng)頁應(yīng)用的安全性,是每個開發(fā)人員都應(yīng)該了解的事。本篇主要簡單介紹在 Web 領(lǐng)域幾種常見的攻擊手段。 1. Cross Site Script(XSS...
摘要:應(yīng)用常見安全漏洞一覽注入注入就是通過給應(yīng)用接口傳入一些特殊字符,達到欺騙服務(wù)器執(zhí)行惡意的命令。此外,適當(dāng)?shù)臋?quán)限控制不曝露必要的安全信息和日志也有助于預(yù)防注入漏洞。 web 應(yīng)用常見安全漏洞一覽 1. SQL 注入 SQL 注入就是通過給 web 應(yīng)用接口傳入一些特殊字符,達到欺騙服務(wù)器執(zhí)行惡意的 SQL 命令。 SQL 注入漏洞屬于后端的范疇,但前端也可做體驗上的優(yōu)化。 原因 當(dāng)使用外...
閱讀 1802·2021-09-03 10:50
閱讀 1333·2019-08-30 15:55
閱讀 3373·2019-08-30 15:52
閱讀 1235·2019-08-30 15:44
閱讀 946·2019-08-30 15:44
閱讀 3322·2019-08-30 14:23
閱讀 3555·2019-08-28 17:51
閱讀 2296·2019-08-26 13:52