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