成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

CORS 跨域工作機制與安全防范

安全 應用安全 開發
隨著前后端分離架構的逐漸普及,CORS跨域技術被廣泛應用在Web應用中,以便不同域之間資源的互相訪問。

隨著前后端分離架構的逐漸普及,CORS跨域技術被廣泛應用在Web應用中,以便不同域之間資源的互相訪問。

一、CORS工作機制詳解

CORS的全稱是跨域資源共享(Cross-Origin Resource Sharing),允許瀏覽器向跨域服務器發起XMLHttpRequest請求。主要機制分為兩種調用流程:

1、簡單請求

瀏覽器直接發出實際請求,無需預檢。簡單請求滿足以下條件:

  1. 使用下列方法之一:GET、HEAD、POST
  2. 只能設置以下頭部:Accept、Accept-Language、Content-Language、Content-Type(只限于application/x-www-form-urlencoded、multipart/form-data、text/plain三種類型)

如果滿足這兩個條件,瀏覽器會自動在請求頭中添加 Origin 字段,發起簡單請求,服務器根據 Origin 劃定的來源域,決定是否給予響應。

2、預檢請求

如果不滿足簡單請求的條件,瀏覽器會自動發起預檢請求(OPTIONS 請求),詢問服務器請求是否被允許。如:

  1. 瀏覽器發送 OPTIONS 請求,請求頭中包含 Origin、Access-Control-Request-Method 和 Access-Control-Request-Headers 等信息
  2. 服務器響應 OPTIONS 請求,響應頭中包含 Access-Control-Allow-Origin、Access-Control-Allow-Methods 和 Access-Control-Allow-Headers 等信息
  3. 瀏覽器對響應頭信息進行確認和緩存
  4. 瀏覽器發送實際請求。請求頭中自動添加 Origin 字段。
  5. 服務器進行 Access-Control-Allow-Origin 校驗,并響應實際請求

二、CORS安全風險詳解

CORS 的機制有一定復雜性,也會有藏著一些安全風險。主要包括:

1、CORS誤配置風險

如果服務器端CORS配置錯誤,可能會使得本不應該訪問的惡意網站得到數據訪問權限。這屬于典型的CORS誤配置問題。

2、CSRF跨站請求偽造風險

攻擊者可利用CORS實現CSRF攻擊。例如惡意網站利用CORS請求接口獲取用戶數據或執行增刪改操作。這屬于利用CORS實現CSRF攻擊的風險。

3、信息泄露風險

攻擊者可以利用CORS的一些特性獲取敏感信息。例如根據CORS頭部判斷網站架構,根據錯誤信息判斷后臺技術棧等。

4、報文劫持風險

攻擊者可在客戶端通過JS劫持CORS報文,改變請求參數、添加非法頭部甚至修改響應內容。這屬于CORS請求被劫持的風險。

5、瀏覽器緩存被污染風險

惡意網站可向有緩存的CORS接口大量發送預檢請求,導致瀏覽器緩存被其預檢選項所污染,進而影響其他正常CORS請求。

三、防范策略

防范CORS風險的關鍵在于從源頭加強接口訪問控制,嚴格限制允許跨域請求的來源,具體策略包括:

  • 嚴格限制允許跨域請求的源(Origin)。生產環境一般只允許指定的域名請求,不開放。
  • 對安全性要求高的接口,禁用CORS跨域訪問。敏感接口不允許異域調用。
  • 驗證Origin請求頭防止它被欺騙。攻擊者可能偽造這個字段。
  • 使用CSRF防護機制,比如校驗HTTP Referer 或在請求中設置token進行校驗。
  • 接口響應中避免返回敏感信息。對錯誤信息進行遮蔽處理。
  • 在服務端校驗CORS的請求頭,防止其被客戶端篡改。
  • 對跨域預檢請求的緩存時長、次數/頻率進行限制。
  • 使用CSP防護CORS跨域請求遭到劫持的風險。
  • 啟用服務器端的CORS中間件,規范CORS的實現。

CORS作為一個具有明確邊界訪問控制的跨域解決方案,應嚴格限制在業務必需的場景中使用。在啟用CORS的基礎上,采取必要的安全防護措施,以降低相關風險。

責任編輯:華軒 來源: 今日頭條
相關推薦

2017-03-15 10:00:15

2019-04-10 10:32:16

CORSNginx反向代理

2022-04-29 09:11:14

CORS瀏覽器

2013-11-27 10:23:23

2011-07-05 11:06:52

2009-07-05 11:20:04

2020-08-31 19:20:33

瀏覽器CORS跨域

2014-08-19 10:36:02

AngularCORS

2011-11-21 16:35:46

2013-01-28 16:44:50

2021-06-25 09:04:39

Cors跨域JSONP vs CO

2010-07-09 14:30:18

SNMP Protoc

2021-06-15 07:32:59

Cookie和Sess實現跨域

2011-03-22 14:57:07

2010-07-06 16:38:19

2018-01-16 00:40:07

2011-08-23 08:37:56

2014-03-11 16:52:20

2021-06-10 18:11:02

Cors跨域Web開發Cors

2024-01-31 07:55:52

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 99精品国产一区二区青青牛奶 | 久久精品国产一区二区电影 | 99精彩视频 | 中文字幕在线视频免费观看 | 国产成人综合久久 | 欧美精品一区在线发布 | 亚洲成人精品久久 | 中文字幕在线观看视频一区 | 亚洲精品日韩欧美 | 尤物视频在线免费观看 | 欧美精品 在线观看 | 91在线精品一区二区 | 免费成人毛片 | 精品亚洲一区二区 | 欧美成人免费在线视频 | 久久久久国产精品 | 亚洲成人国产综合 | 成人不卡 | 久久亚洲精品国产精品紫薇 | 黄瓜av | 国产视频一区二区三区四区五区 | 看一级黄色毛片 | 中文字幕成人网 | av免费入口 | 成人av在线播放 | 久久免费视频观看 | 精品少妇一区二区三区在线播放 | 国产一区二区三区 | 免费视频成人国产精品网站 | 久久99精品久久久久久琪琪 | 久久中文字幕一区 | 久久中文字幕电影 | 特黄毛片 | 一级视频在线免费观看 | 在线午夜 | 亚洲成人午夜在线 | 成人激情视频免费在线观看 | 男人av在线播放 | 一级女毛片 | 亚洲成av人片在线观看无码 | 天堂色 |