按照等保要求,跨域的不安全性,需要修復。
這個需要根據(jù)客戶端傳遞的請求頭中的Origin值,進行安全的跨站策略配置,目的是對非法的origin直接返回403錯誤頁面。
漏洞復現(xiàn)
復現(xiàn)方式為在 Header 中指定 Origin 請求頭,看是否可以請求成功。
能夠請求成功,說明未對請求頭進行控制,有漏洞。
curl-H'Origin//test.com'http://192.168.15.32:80
修復辦法
在http中定義一個通過map指令,定義跨域規(guī)則并返回是否合法
http { ... //再白名單里邊返回0,不在返回1 map $http_origin $allow_cors { default 1; "~^https?://.*?.tripwolf.com.*$" 1; "~^(https?://(dmp.finerice.cn)?)$" 1; "~*" 0; } server { # 指定允許其他域名訪問 add_header Access-Control-Allow-Origin $http_origin; # 允許的請求類型 add_header Access-Control-Allow-Methods GET,POST,OPTIONS; # 許的請求頭字段 add_header Access-Control-Allow-Headers "Origin, X-Requested-With, Content-Type, Accept"; location / { # 進行請求攔截 if ($allow_cors = 0){ return 403; } root /mnt/data; } } }
驗證方法
通過POSTMAN進行請求模擬,配置不同的Origin,查看返回結果。
如果不需要跨域,則直接清理掉add_header Access-Control-Allow-Origin等相關配置,就不這么復雜了。
-
模擬
+關注
關注
7文章
1436瀏覽量
84378 -
客戶端
+關注
關注
1文章
298瀏覽量
17008 -
nginx
+關注
關注
0文章
164瀏覽量
12509
原文標題:Nginx配置origin限制跨域請求
文章出處:【微信號:magedu-Linux,微信公眾號:馬哥Linux運維】歡迎添加關注!文章轉載請注明出處。
發(fā)布評論請先 登錄
利用LWIP實現(xiàn)的Web server,如何修改響應報文中HTTP header里面的Access-Control-Allow-Origin的值?
nginx重啟命令linux步驟是什么?
nginx重啟命令linux步驟是什么?
【NanoPi NEO試用體驗】之安裝配置Nginx環(huán)境WEB網(wǎng)站詳解
主要學習下nginx的安裝配置
看看nginx的連接頻率limit_conn_module和請求頻率limit_req_module限制模塊
vue-cli開發(fā)環(huán)境實現(xiàn)跨域請求
配置Nginx訪問日志
Nginx輕松搞定跨域問題

評論