摘要:安全問題的分類按照所發(fā)生的區(qū)域分類后端安全問題所有發(fā)生在后端服務(wù)器應(yīng)用服務(wù)當(dāng)中的安全問題前端安全問題所有發(fā)生在瀏覽器單頁面應(yīng)用頁面當(dāng)中的安全問題按照團(tuán)隊(duì)中哪個角色最適合來修復(fù)安全問題分類后端安全問題針對這個安全問題,后端最適合來修復(fù)前端安全
安全問題的分類 按照所發(fā)生的區(qū)域分類
后端安全問題:所有發(fā)生在后端服務(wù)器、應(yīng)用、服務(wù)當(dāng)中的安全問題
前端安全問題:所有發(fā)生在瀏覽器、單頁面應(yīng)用、Web頁面當(dāng)中的安全問題
按照團(tuán)隊(duì)中哪個角色最適合來修復(fù)安全問題分類后端安全問題:針對這個安全問題,后端最適合來修復(fù)
前端安全問題:針對這個安全問題,前端最適合來修復(fù)
綜合以上前端安全問題:發(fā)生在瀏覽器、前端應(yīng)用當(dāng)中或者通常由前端開發(fā)工程師來對其進(jìn)行修復(fù)的安全問題
瀏覽器安全 同源策略是一種約定,是瀏覽器最核心也最基本的安全功能,限制了來自不同源的document或者腳本,對當(dāng)前document讀取或設(shè)置某些屬性
影響“源”的因素有:host(域名或者IP地址)、子域名、端口、協(xié)議
對瀏覽器來說,DOM、Cookie、XMLHttpRequest會受到同源策略的限制
不受同源策略的標(biāo)簽
參考上圖,我們可以總結(jié),完成一次CSRF攻擊,必須滿足兩個條件
用戶登錄受信任網(wǎng)站A,并且在本地生成Cookie
在不登出網(wǎng)站A的情況下,訪問危險網(wǎng)站B
CSRF本質(zhì)CSRF攻擊是攻擊者利用用戶身份操作用戶賬戶的一種攻擊方式
CSRF能攻擊成功的本質(zhì)原因:重要操作的所有參數(shù)都是可以被攻擊者猜測到的
解決方案 1、驗(yàn)證碼CSRF攻擊過程中,用戶在不知情的情況下構(gòu)造了網(wǎng)絡(luò)請求,添加驗(yàn)證碼后,強(qiáng)制用戶必須與應(yīng)用進(jìn)行交互
優(yōu)點(diǎn):簡潔而有效
缺點(diǎn):網(wǎng)站不能給所有的操作都加上驗(yàn)證碼
2、Referer Check利用HTTP頭中的Referer判斷請求來源是否合法
Referer首部包含了當(dāng)前請求頁面的來源頁面的地址
優(yōu)點(diǎn):簡單易操作(只需要在最后給所有安全敏感的請求統(tǒng)一添加一個攔截器來檢查Referer的值就行)
缺點(diǎn):服務(wù)器并非什么時候都能取到Referer
很多出于保護(hù)用戶隱私的考慮,限制了Referer的發(fā)送。
比如從HTTPS跳轉(zhuǎn)到HTTP,出于安全的考慮,瀏覽器不會發(fā)送Referer
瀏覽器兼容性
關(guān)于Referer的更多詳細(xì)資料:https://75team.com/post/everything-you-could-ever-want-to-know-and-more-about-controlling-the-referer-header-fastmail-blog.html
比如一個刪除操作的URL是:http://host/path/delete?uesrname=abc&item=123
保持原參數(shù)不變,新增一個參數(shù)Token,Token值是隨機(jī)的,不可預(yù)測
http://host/path/delete?username=abc&item=123&token=[random(seed)]
由于Token的存在,攻擊者無法再構(gòu)造出一個完整的URL實(shí)施CSRF攻擊
優(yōu)點(diǎn):比檢查Referer方法更安全,并且不涉及用戶隱私
缺點(diǎn):對所有的請求都添加Token比較困難
更多關(guān)于CSRF詳細(xì)可參考:
CSRF 攻擊的應(yīng)對之道:https://www.ibm.com/developerworks/cn/web/1102_niugang_csrf/
CSRF原理剖析:http://netsecurity.51cto.com/art/200812/102951.htm
維基百科CSRF:https://en.wikipedia.org/wiki/Cross-site_request_forgery
CSRF實(shí)例:http://netsecurity.51cto.com/art/200812/102925.htm
需要注意的點(diǎn):Token需要足夠隨機(jī),必須用足夠安全的隨機(jī)數(shù)生成算法
Token應(yīng)該為用戶和服務(wù)器所共同持有,不能被第三方知曉
Token可以放在用戶的Session或者瀏覽器的Cookie中
盡量把Token放在表單中,把敏感操作由GET改為POST,以form表單的形式提交,可以避免Token泄露(比如一個頁面:http://host/path/manage?username=abc&token=[random],在此頁面用戶需要在這個頁面提交表單或者單擊“刪除”按鈕,才能完成刪除操作,在這種場景下,如果這個頁面包含了一張攻擊者能指定地址的圖片,則這個頁面地址會作為HTTP請求的Refer發(fā)送到evil.com的服務(wù)器上,從而導(dǎo)致Token泄露)
當(dāng)網(wǎng)站同時存在XSS和CSRF漏洞時,XSS可以模擬客戶端瀏覽器執(zhí)行任意操作,在XSS攻擊下,攻擊者完全可以請求頁面后,讀取頁面內(nèi)容中的Token值,然后再構(gòu)造出一個合法的請求結(jié)論
安全防御的體系應(yīng)該是相輔相成、缺一不可的
3、點(diǎn)擊劫持(ClickJacking) 什么是點(diǎn)擊劫持點(diǎn)擊劫持是一種視覺上的欺騙手段。攻擊者使用一個透明的、不可見的iframe,覆蓋在一個網(wǎng)頁上,然后誘使用戶在網(wǎng)頁上進(jìn)行操作,此時用戶將在不知情的情況下點(diǎn)擊透明的iframe頁面。通過調(diào)整iframe頁面的位置,可以誘使用戶恰好點(diǎn)擊在iframe頁面的一些功能性按鈕上。防御點(diǎn)擊劫持:X-Frame-Options
X-Frame-Options HTTP響應(yīng)頭是用來給瀏覽器指示允許一個頁面能否在、中展現(xiàn)的標(biāo)記有三個可選的值
DENY:瀏覽器會拒絕當(dāng)前頁面加載任何frame頁面(即使是相同域名的頁面也不允許)
SAMEORIGIN:允許加載frame頁面,但是frame頁面的地址只能為同源域名下的頁面
ALLOW-FROM:可以加載指定來源的frame頁面(可以定義frame頁面的地址)
瀏覽器的兼容性 小結(jié) 綜合以上三大前端安全,我們可以總結(jié)謹(jǐn)慎用戶輸入信息,進(jìn)行輸入檢查(客戶端和服務(wù)端同時檢查)
在變量輸出到HTML頁面時,都應(yīng)該進(jìn)行編碼或轉(zhuǎn)義來預(yù)防XSS攻擊
該用驗(yàn)證碼的時候一定要添上
盡量在重要請求上添加Token參數(shù),注意Token要足夠隨機(jī),用足夠安全的隨機(jī)數(shù)生成算法
當(dāng)有
檢查驗(yàn)證請求來源,對每一個重要的操作都進(jìn)行重新驗(yàn)證
不要將重要文件、備份文件存放在公眾可以訪問到的地方
安全防御的體系是相輔相成、缺一不可的
只收藏不點(diǎn)贊的都是耍流氓哦文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/52326.html
摘要:安全問題的分類按照所發(fā)生的區(qū)域分類后端安全問題所有發(fā)生在后端服務(wù)器應(yīng)用服務(wù)當(dāng)中的安全問題前端安全問題所有發(fā)生在瀏覽器單頁面應(yīng)用頁面當(dāng)中的安全問題按照團(tuán)隊(duì)中哪個角色最適合來修復(fù)安全問題分類后端安全問題針對這個安全問題,后端最適合來修復(fù)前端安全 安全問題的分類 按照所發(fā)生的區(qū)域分類 后端安全問題:所有發(fā)生在后端服務(wù)器、應(yīng)用、服務(wù)當(dāng)中的安全問題 前端安全問題:所有發(fā)生在瀏覽器、單頁面應(yīng)用、...
摘要:安全問題的分類按照所發(fā)生的區(qū)域分類后端安全問題所有發(fā)生在后端服務(wù)器應(yīng)用服務(wù)當(dāng)中的安全問題前端安全問題所有發(fā)生在瀏覽器單頁面應(yīng)用頁面當(dāng)中的安全問題按照團(tuán)隊(duì)中哪個角色最適合來修復(fù)安全問題分類后端安全問題針對這個安全問題,后端最適合來修復(fù)前端安全 安全問題的分類 按照所發(fā)生的區(qū)域分類 后端安全問題:所有發(fā)生在后端服務(wù)器、應(yīng)用、服務(wù)當(dāng)中的安全問題 前端安全問題:所有發(fā)生在瀏覽器、單頁面應(yīng)用、...
摘要:我的書簽我的書簽謹(jǐn)慎導(dǎo)入,小心覆蓋工具類版本管理快速切換源配置教程指南可視化工具前端工具集前端助手網(wǎng)絡(luò)封包截取工具格式化工具標(biāo)注工具模擬請求類深入淺出布局你所不知道的動畫技巧與細(xì)節(jié)常用代碼黑魔法小技巧,讓你少寫不必要的,代碼更優(yōu)雅一勞永 我的書簽 我的書簽(謹(jǐn)慎導(dǎo)入,小心覆蓋) 工具類 nvm: node版本管理 nrm: 快速切換npm源 shell: zsh+on-my-zsh配...
摘要:我的書簽我的書簽謹(jǐn)慎導(dǎo)入,小心覆蓋工具類版本管理快速切換源配置教程指南可視化工具前端工具集前端助手網(wǎng)絡(luò)封包截取工具格式化工具標(biāo)注工具模擬請求類深入淺出布局你所不知道的動畫技巧與細(xì)節(jié)常用代碼黑魔法小技巧,讓你少寫不必要的,代碼更優(yōu)雅一勞永 我的書簽 我的書簽(謹(jǐn)慎導(dǎo)入,小心覆蓋) 工具類 nvm: node版本管理 nrm: 快速切換npm源 shell: zsh+on-my-zsh配...
閱讀 635·2021-11-22 15:32
閱讀 2723·2021-11-19 09:40
閱讀 2318·2021-11-17 09:33
閱讀 1274·2021-11-15 11:36
閱讀 1870·2021-10-11 10:59
閱讀 1481·2019-08-29 16:41
閱讀 1785·2019-08-29 13:45
閱讀 2155·2019-08-26 13:36