版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第3章CSRF攻擊及防護(hù)01CSRF的基礎(chǔ)知識(shí)02CSRF漏洞利用場景03CSRF防護(hù)方案目錄CONTENTSCSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊的原理CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊實(shí)例CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊實(shí)例CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊實(shí)例當(dāng)攻擊者要偽造當(dāng)前用戶身份并提交一條留言,主要流程如下:偽造一個(gè)頁面誘使當(dāng)前用戶點(diǎn)擊以實(shí)現(xiàn)觸發(fā)CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊實(shí)例CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊實(shí)例CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊的原理CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊的原理
CSRF(Cross-SiteRequestForgery)跨站請(qǐng)求偽造,完全不同于XSS攻擊。XSS攻擊側(cè)重于獲取用戶的權(quán)限及信息,而CSRF則是攻擊者可偽造當(dāng)前用戶的行為,讓目標(biāo)服務(wù)器誤以為請(qǐng)求由當(dāng)前用戶發(fā)起,并利用當(dāng)前用戶權(quán)限實(shí)現(xiàn)業(yè)務(wù)請(qǐng)求偽造。
可見,CSRF側(cè)重于偽造特定用戶的請(qǐng)求。CSRF基礎(chǔ)知識(shí)CSRF攻擊CSRF攻擊的原理
觀察上述的漏洞基本利用流程可以發(fā)現(xiàn),要想攻擊形成有效的CSRF攻擊,必須滿足三個(gè)條件:
1.用戶處于登錄狀態(tài)
2.偽造的鏈接與正常應(yīng)用請(qǐng)求鏈接一致
3.后臺(tái)未對(duì)用戶業(yè)務(wù)開展合法性檢查
只要三個(gè)要素同時(shí)存在,則漏洞方可利用成功。尤其需要注意的是,用戶必須在登錄狀態(tài)時(shí)點(diǎn)擊偽造的頁面。01CSRF的基礎(chǔ)知識(shí)02CSRF漏洞利用場景03CSRF防護(hù)方案目錄CONTENTSCSRF漏洞利用場景CSRF攻擊
經(jīng)過對(duì)CSRF漏洞實(shí)例的分析可知,這類漏洞在利用方面條件比較苛刻,因?yàn)楸仨氃谟脩舻卿浀那闆r下,由用戶主動(dòng)點(diǎn)擊偽造鏈接,方可觸發(fā)漏洞。也正是由于這個(gè)特點(diǎn),很多人會(huì)忽視CSRF攻擊帶來的危害。在真實(shí)場景下,如果CSRF被利用,很可能會(huì)帶來巨大的安全隱患。如:當(dāng)用戶是管理員時(shí),如果存在CSRF漏洞,則攻擊者可根據(jù)業(yè)務(wù)功能特點(diǎn)構(gòu)造語句,在管理員不知情的情況下發(fā)起某項(xiàng)業(yè)務(wù)請(qǐng)求(如添加賬號(hào)、刪除某篇文章等),并且攻擊者構(gòu)造的請(qǐng)求會(huì)以當(dāng)前管理員的身份發(fā)出并執(zhí)行。針對(duì)個(gè)人用戶,如果CSRF漏洞配合存儲(chǔ)型XSS漏洞,可實(shí)現(xiàn)在當(dāng)前用戶頁面上嵌入攻擊偽造鏈接,從而大大增加用戶點(diǎn)擊的可能性,形成觸發(fā)攻擊的隱患。在部分管理系統(tǒng)中,考慮到用戶使用系統(tǒng)的便利性,可以在后臺(tái)Web頁面上開發(fā)特定功能來實(shí)現(xiàn)針對(duì)管理系統(tǒng)的參數(shù)調(diào)整。每次在針對(duì)管理系統(tǒng)進(jìn)行參數(shù)調(diào)整時(shí),都會(huì)向服務(wù)器發(fā)起一次請(qǐng)求。因此,如果CSRF偽造管理的高危管理功能并誘導(dǎo)管理員執(zhí)行,那么會(huì)對(duì)當(dāng)前系統(tǒng)造成非常大的危害。01CSRF的基礎(chǔ)知識(shí)02CSRF漏洞利用場景03CSRF防護(hù)方案目錄CONTENTSCSRF防護(hù)方案CSRF攻擊
CSRF一般是由于Web系統(tǒng)對(duì)當(dāng)前用戶身份的驗(yàn)證不足而造成的,比如目標(biāo)站點(diǎn)并未對(duì)提交的請(qǐng)求做合法性檢查,導(dǎo)致任何請(qǐng)求均可執(zhí)行。盡管攻擊的呈現(xiàn)方式千變?nèi)f化,但歸根結(jié)底都是沒有充分驗(yàn)證當(dāng)前業(yè)務(wù)的合法性導(dǎo)致的。
因此常用的防護(hù)手段重點(diǎn)在于為關(guān)鍵業(yè)務(wù)點(diǎn)添加合理的驗(yàn)證方式,以實(shí)現(xiàn)對(duì)用戶合法身份的二次確認(rèn)。
下面介紹幾種有效的防護(hù)手段。CSRF防護(hù)方案CSRF攻擊
由于攻擊者只能仿冒用戶發(fā)起請(qǐng)求,并不能接收服務(wù)器的響應(yīng)內(nèi)容,因此可在請(qǐng)求被執(zhí)行前添加防護(hù)措施。主要思路為在發(fā)起關(guān)鍵業(yè)務(wù)的請(qǐng)求時(shí),多添加一步驗(yàn)證環(huán)節(jié),并且保證驗(yàn)證環(huán)節(jié)的內(nèi)容無法被攻擊者獲取,從而有效避免攻擊者偽造請(qǐng)求的情況。常見的方式有以下兩種:
(1)添加驗(yàn)證過程
CSRF漏洞可成功利用的一個(gè)顯著特點(diǎn)是攻擊者偽造的用戶請(qǐng)求會(huì)被服務(wù)器實(shí)際執(zhí)行。為此,最有效的手段就是在其中添加一個(gè)中間過程,如讓用戶確認(rèn),從而可以避免這類問題出現(xiàn)。添加中間環(huán)節(jié)CSRF防護(hù)方案CSRF攻擊添加中間環(huán)節(jié)CSRF防護(hù)方案CSRF攻擊
由于攻擊者只能仿冒用戶發(fā)起請(qǐng)求,并不能接收服務(wù)器的響應(yīng)內(nèi)容,因此可在請(qǐng)求被執(zhí)行前添加防護(hù)措施。主要思路為在發(fā)起關(guān)鍵業(yè)務(wù)的請(qǐng)求時(shí),多添加一步驗(yàn)證環(huán)節(jié),并且保證驗(yàn)證環(huán)節(jié)的內(nèi)容無法被攻擊者獲取,從而有效避免攻擊者偽造請(qǐng)求的情況。常見的方式有以下兩種:
(1)添加驗(yàn)證過程
CSRF漏洞可成功利用的一個(gè)顯著特點(diǎn)是攻擊者偽造的用戶請(qǐng)求會(huì)被服務(wù)器實(shí)際執(zhí)行。為此,最有效的手段就是在其中添加一個(gè)中間過程,如讓用戶確認(rèn),從而可以避免這類問題出現(xiàn)。
添加驗(yàn)證過程時(shí)需要注意,確認(rèn)流程應(yīng)由頁面接受后在前臺(tái)進(jìn)行顯示,不要利用純前端的技術(shù)來實(shí)現(xiàn),如利用JS代碼來實(shí)現(xiàn)上述功能,否則就會(huì)失去原有的意義。添加中間環(huán)節(jié)CSRF防護(hù)方案CSRF攻擊
(2)添加驗(yàn)證碼
在業(yè)務(wù)角度針對(duì)CSRF防護(hù)的另一種有效方式是添加驗(yàn)證碼機(jī)制。也就是說,用戶在提交內(nèi)容時(shí)需要輸入驗(yàn)證碼,利用驗(yàn)證碼來確認(rèn)是否為當(dāng)前用戶發(fā)起的請(qǐng)求。
驗(yàn)證碼對(duì)于CSRF攻擊防護(hù)效果良好,但是驗(yàn)證碼最好在關(guān)鍵的業(yè)務(wù)流程點(diǎn)使用。如果在業(yè)務(wù)流程中過多使用驗(yàn)證碼,會(huì)導(dǎo)致用戶體驗(yàn)嚴(yán)重下降,直接影響用戶的行為。添加中間環(huán)節(jié)CSRF防護(hù)方案CSRF攻擊
針對(duì)CSRF漏洞,在建設(shè)Web系統(tǒng)時(shí)一般會(huì)利用token來識(shí)別當(dāng)前用戶身份的真實(shí)性。Token在當(dāng)前用戶第一次訪問某項(xiàng)功能頁面時(shí)生成,且是一次性的,在生成完畢后由服務(wù)端發(fā)送給客戶端。用戶端接收到token之后,會(huì)在進(jìn)行下一步業(yè)務(wù)時(shí)提交token,并由服務(wù)器進(jìn)行有效性驗(yàn)證。由于攻擊者在CSRF利用時(shí)無法獲得當(dāng)前用戶的token,導(dǎo)致就算鏈接發(fā)送成功,也會(huì)由于沒有附帶token值,導(dǎo)致針對(duì)請(qǐng)求的驗(yàn)證發(fā)生錯(cuò)誤,當(dāng)前攻擊請(qǐng)求也就無法正常執(zhí)行。驗(yàn)證用戶請(qǐng)求合法性CSRF防護(hù)方案CSRF攻擊驗(yàn)證用戶請(qǐng)求合法性CSRF防護(hù)方案CSRF攻擊
生成token的方式非常靈活,可通過當(dāng)前時(shí)間、當(dāng)前用戶名+隨機(jī)數(shù)等多種方式生成。上例中利用10000以內(nèi)的隨機(jī)數(shù)的MD5值作為token。
根據(jù)當(dāng)前用戶提交的情況進(jìn)行token驗(yàn)證及更新。從上例中可以看到,在每次訪問之后都會(huì)進(jìn)行token更新。
在使用token時(shí)需要遵循以下原則:
(1)token
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年湖北單招職業(yè)技能短視頻制作實(shí)操題庫含答案分鏡頭剪輯規(guī)范
- 2026年新疆中職生單招技術(shù)技能測(cè)試通關(guān)經(jīng)典題含答案原專業(yè)對(duì)口適配
- 2026年知識(shí)專員崗位溝通能力考核含答案
- 2026年會(huì)計(jì)專業(yè)高階職位的面試題集
- 2026年土地登記員筆試模擬題含答案
- 2026年美術(shù)教師資格考試題解析
- 打葉復(fù)烤設(shè)備操作工安全理論水平考核試卷含答案
- 襯板工崗前安全意識(shí)強(qiáng)化考核試卷含答案
- 2026年技術(shù)職稱晉升考試題庫及答案
- 2026年保險(xiǎn)精算師考試重點(diǎn)題及案例分析含答案
- 2026班級(jí)馬年元旦主題聯(lián)歡晚會(huì) 教學(xué)課件
- 2025年沈陽華晨專用車有限公司公開招聘備考筆試題庫及答案解析
- 2025年云南省人民檢察院聘用制書記員招聘(22人)筆試考試參考試題及答案解析
- 2025年樂山市商業(yè)銀行社會(huì)招聘筆試題庫及答案解析(奪冠系列)
- 2025新疆和田和康縣、和安縣面向社會(huì)招聘事業(yè)單位工作人員108人(公共基礎(chǔ)知識(shí))測(cè)試題附答案解析
- 暖通設(shè)備運(yùn)行調(diào)試方案
- 綜合管理部經(jīng)理述職報(bào)告
- 施工現(xiàn)場的安全溝通與應(yīng)急響應(yīng)方案
- 扎蘭屯護(hù)理單招題庫及答案解析
- 實(shí)施指南(2025)《AQ 4272-2016鋁鎂制品機(jī)械加工粉塵防爆安全技術(shù)規(guī)范》
評(píng)論
0/150
提交評(píng)論