91网首页-91网页版-91网在线观看-91网站免费观看-91网站永久视频-91网站在线播放

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

[點晴永久免費OA]客戶端來源IP偽造攻擊與防護指南

admin
2025年6月5日 17:45 本文熱度 159

在現代Web架構中,反向代理、負載均衡器和CDN的廣泛使用,使得服務器無法直接獲取客戶端的真實IP地址,為了實現用戶身份識別、日志記錄、地理定位和訪問控制等功能,開發者通常使用某些HTTP請求頭獲取客戶端來源IP,其中最常用的就是X-Forwarded-For(XFF)。本文將以XFF請求偽造為例,從漏洞介紹、實際案例、修復方式出發,詳細了解客戶端來源IP偽造攻擊與防護。



漏洞概述

X-Forwarded-For(XFF)是一個HTTP頭字段,主要用于識別原始客戶端的IP地址,通常由反向代理或負載均衡服務器添加。當應用程序依賴X-Forwarded-For 獲取客戶端IP進行安全控制時,攻擊者可以偽造該頭,繞過安全限制,例如:

·繞過IP訪問控制:攻擊者偽造XFF頭繞過基于IP的白名單機制。

·日志污染與溯源欺騙:攻擊者偽造XFF頭,干擾日志記錄,影響取證調查。

·Web應用防火墻 (WAF) 繞過:某些WAF依賴XFF進行訪問控制,可能被繞過。



漏洞產生原因

該漏洞的根本原因在于,服務端代碼沒有對X-Forwarded-For進行有效校驗:

1. 直接信任XFF作為客戶端IP:許多應用程序直接從HTTP頭中讀取X-Forwarded-For,并將其用于訪問控制或日志記錄。

2. 多層代理下錯誤解析:

·XFF頭可能包含多個IP(如 X-Forwarded-For: 192.168.1.1, 10.0.0.1, 8.8.8.8)。

·如果服務器未正確解析,可能錯誤地使用攻擊者提供的IP。



漏洞測試方式

以Burp Suite為例。





Burp Suite手工測試

1. 攔截請求,添加X-Forwarded-For偽造 IP:

GET /admin HTTP/1.1Host: target.comX-Forwarded-For: 192.168.1.100

2. 發送請求,觀察是否成功繞過訪問限制或造成日志記錄了偽造的IP。





Burp插件

burpFakeIP(https://github.com/TheKingOfDuck/burpFakeIP) 插件可自動插入X-Forwarded-For以及其他獲取客戶端IP的HTTP頭,如X-Forwarded、X-Real-IP等。

插件中除X-Forwarded-For外,還包含 X-Real-IP等頭,也是常見用于傳遞客戶端 IP 的 HTTP 請求頭:

·X-Forwarded-For:最常用的頭,格式為 客戶端IP, 代理1IP, 代理2IP。

·X-Forwarded:與X-Forwarded-For類似,但較少使用。

·X-Real-IP:通常由反向代理(如Nginx)設置,直接傳遞客戶端IP。

·Ali-Cdn-Real-Ip:阿里云CDN專用的頭,用于傳遞客戶端真實IP。

·WL-Proxy-Client-IP:WebLogic服務器使用的頭。

附錄中列舉了更詳細的說明。

這些HTTP請求頭在配置不正確的情況下,也會被偽造。下一節中將介紹相關案例。




案例

某系統記錄用戶操作,例如登錄、刪除、修改系統配置等,可在系統日志功能中可查看。

經驗證使用Proxy-Client-Ip可偽造客戶端IP。

污染日志記錄偽造IP地址。

經溝通得知獲取Client IP的代碼段如下:

從代碼段可以看出,服務端直接信任客戶端傳來的HTTP請求頭作為客戶端IP,導致偽造。

在搜索引擎搜索獲取客戶端IP的方式,大概率會得到類似代碼,如果開發不理解代碼原理,直接應用到業務中來,則會面臨客戶端請求頭偽造的風險。

比如這段代碼中,后端獲取Proxy-Client-IpWL-Proxy-Client-IP,Proxy-Client-IP字段和WL-Proxy-Client-IP字段只在Apache(Weblogic Plug-In Enable)+ WebLogic搭配下出現,而實際業務中并未使用到Apache和Weblogic,因此這段代碼并無實際作用,反而引入了漏洞。



修復方式

如何防止XFF偽造,獲取用戶真實IP呢?

現在Web應用部署,一般會經過多重代理,如CDN、負載均衡、Nginx反向代理,以Nginx代理為例來看多重代理環境下如何獲取真實客戶端IP。





使用Nginx作為反向代理

防御原理很簡單,nginx不使用客戶端傳來的X-Forwarded-For,在直接對外的Nginx(即直接對外提供服務的Nginx)配置,修改nginx.conf。

1. 反向代理Nginx配置X-Forwarded-For

在nginx.conf中通過proxy_set_header傳遞X-Forwarded-For:

server {    listen 80;    location / {        proxy_pass <http://backend>;        proxy_set_header X-Forwarded-For $remote_addr;        proxy_set_header X-Real-IP $remote_addr;    }}

·$remote_addr:Nginx直接接收到的IP(通常是上游代理的 IP)。$remote_addr是獲取的是直接TCP連接的客戶端IP(類似于Java中的request.getRemoteAddr())這個是無法被偽造的。該設置可直接覆蓋掉客戶端傳來的X-Forwarded-For頭。

2. 應用服務器,以java應用為例

public String getClientIp(HttpServletRequest request) {    String xff = request.getHeader("X-Forwarded-For");    if (xff != null && !xff.isEmpty()) {        String[] ipList = xff.split(",");        return ipList[0].trim(); // 僅提取第一個非代理 IP    }    return request.getRemoteAddr();}

這段代碼的作用是獲取并解析請求頭X-Forwarded-For,經過代理,X-Forwarded-For形式可能為X-Forwarded-For:clientIP, proxy1, proxy2, proxy3

需提取第一個非代理IP。





兩層Nginx代理

如果中間經過多層代理,比如雙重Nginx如何配置?

1. 第一層Nginx配置X-Forwarded-For

與5.1配置相同.

server {    listen 80;    location / {        proxy_pass <http://backend>;        proxy_set_header X-Forwarded-For $remote_addr;        proxy_set_header X-Real-IP $remote_addr;    }}

2. 第二層Nginx配置X-Forwarded-For

server {    listen 80;    location / {        proxy_pass <http://backend>;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        proxy_set_header X-Real-IP $remote_addr;    }}

·這里需注意$proxy_add_x_forwarded_for:自動追加原始X-Forwarded-For頭,以保留完整的IP鏈。

·也可以不做配置,直接透傳Nginx1發送過來的請求。

3. 后端獲取真實IP

與5.1相同




附錄

常見用戶傳遞客戶端IP的HTTP請求頭:



閱讀原文:原文鏈接


該文章在 2025/6/6 12:12:16 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 91看片在线观看 | 国产精品首页熟女 | 三级网站国产 | 日韩成人午夜福利 | 成人啊啊啊啊啊网 | 日韩第一页 | 91精品国产秘原神 | 丝袜亚洲日韩另类 | 日韩国产在线视频 | 91探花国产综合在 | 国产免费观看大片黄 | 日韩激情网 | 日本在线播放观看 | 欧美综合国产日本 | 精品一线二线三 | 国产大片欧美精品 | 九色蝌蚪91| 日韩一级一欧美一级 | 97成人免费理 | 国产大片免费观看 | 成人精品视频 | 国产高清精品aaa | 日本xxxx| 成人精品视频免费 | 91成人精品在 | 国产精品美女www | 精品福利枧频网站 | 欧美日韩人兽五月天 | 国产在线精彩视频 | 国产亚洲一区区二 | 国产精品福利导航 | 日本高清va | 日韩欧美熟 | 九九热在线视频观看 | 国产最新进 | 成人97视频 | 欧美午夜片在线观看 | 精品免费视频76 | 日韩午夜高清 | 日本乱伦自拍欧美 | 国产卡二卡三卡四卡 |