top of page
blog_banner-1980x300.png

【watchTowr 威脅偵測】HTTP Header 如何成為 Ivanti Connect Secure 遠端攻擊入口

  • 作家相片: Estrella Wei
    Estrella Wei
  • 7月3日
  • 讀畢需時 4 分鐘

已更新:9月23日


作者:Aliz Hammond   編譯:AIShield 編輯部 | 發稿日期:2025 年 7 月 2 日


邊界設備的新隱憂:X-Forwarded-For 成攻擊觸媒


近期,我們在企業常見的邊界設備 Ivanti Connect Secure(一款 SSL VPN 裝置)中發現編號 CVE‑2025‑22457 的重大漏洞。令人意外的是,攻擊者僅透過一個看似普通的 HTTP Header:X-Forwarded-For,便能觸發堆疊型緩衝區溢位(Stack-Based Buffer Overflow),最終實現 遠端程式碼執行(Remote Code Execution, RCE)。


使用 curl 模擬請求即可讓未修補版本當機,沒有任何回應,顯示程式崩潰。

產品簡介:Ivanti Connect Secure 是什麼?


Ivanti Connect Secure 是一款部署於企業內外網邊界的「新世代防火牆」,能有效阻擋惡意流量,同時提供 VPN 讓員工遠端連線存取企業資源。


根據 Ivanti 官方說法,目前全球已有 超過 35,000 家企業客戶 部署此裝置。也因其「面向網際網路」、「具特權位置」的特性,使其成為駭客眼中的高價值目標。



CVE-2025-22457:被誤判的嚴重漏洞


此漏洞最早被 Ivanti 判定為低風險,官方原說明如下:


「該漏洞為一個僅允許數字與句點的輸入值所導致的堆疊緩衝區溢位,評估後不具 RCE 或 DoS 潛力。」

然而,Ivanti 與安全夥伴後續研究發現,此漏洞確實具備遠端程式碼執行的可能性,且已有攻擊事件在野發生:


「我們已確認該漏洞可透過複雜手法被利用,並已在野外觀察到實際攻擊。我們強烈建議用戶盡速升級至 22.7R2.6 版本。」


技術分析:漏洞來源與重現過程


我們使用 Beyond Compare、IDA Pro、Diaphora 等工具比對修補前後的版本(22.7R2.5 vs 22.7R2.6),發現 Ivanti 除了修補漏洞外,也進一步強化程式碼,啟用原先停用的安全防禦機制。


最終我們鎖定函式 WebRequest::dispatchRequest,其中的代碼如下:



c

eaderValue = httpHeader->Value;
ipLen = strspn(headerValue, "01234567890.");
v58 = alloca(ipLen + 2);
strlcpy(s, headerValue, ipLen + 1);

這段程式從 X-Forwarded-For 取得 IP 地址,並未正確驗證長度,造成堆疊溢位。根據配置邏輯,此 header 名稱由變數 CUSTOM_IP_FIELD 控制,而其預設值正是 X-Forwarded-For


Ivanti Connect Secure 堆疊溢位漏洞攻擊流程圖
圖片出自艾盾資科


攻擊方式:只需一行 curl 指令


攻擊者只要發送超長的 X-Forwarded-For Header,即可觸發漏洞。我們使用如下指令模擬:


bash

curl -v --insecure https://<設備_IP> \
  --header "X-Forwarded-For:111111...111"

結果:設備立即關閉連線,未返回任何 HTTP 響應,此為典型程式崩潰現象。若已修補,設備會回應 HTTP 400。



哪些設備受影響?


Ivanti 官方說明如下版本易受 CVE-2025-22457 漏洞影響:


  • Ivanti Connect Secure < 22.7R2.6

  • Ivanti Policy Secure < 22.7R1.4

  • Ivanti ZTA Gateways < 22.8R2.2


根據 CVSS v3 評分,此漏洞為 9.8 / 10,屬於極高嚴重性,且已確認在野被利用。



防護建議與因應措施


watchTowr 建議如下:


  1. 立即升級 Ivanti Connect Secure 22.7R2.6 版本或以上。

  2. 可使用上述 curl 指令測試設備,若無回應即代表仍存在漏洞。

  3. 持續監控邊界設備的外部攻擊面與漏洞狀況,避免成為第一波受害者。



小辭典:資安術語快速解釋


術語

說明

Ivanti Connect Secure

SSL VPN 裝置,部署於企業邊界,具高權限與對外存取特性。

X-Forwarded-For

一個 HTTP 標頭,常用於表示原始訪客 IP,亦可能成為攻擊向量。

堆疊型緩衝區溢位 (Stack-Based Buffer Overflow)

一種記憶體錯誤,若無妥善處理,可能讓攻擊者執行惡意程式碼。

遠端程式碼執行 (Remote Code Execution, RCE)

攻擊者能遠端執行任意程式,危害極大。



結語:邊界設備的漏洞,不能再被低估


此事件再度提醒我們,攻擊者不僅動機強烈,且具備極高技術能力。即便補丁已發布,若企業未及時更新,仍可能淪為攻擊對象。

更令人警覺的是,這類漏洞觸發門檻極低,顯示仍有許多邊界設備缺乏基礎模糊測試與輸入驗證。

唯有持續進行外部測試、快速應對漏洞風險,才能在複雜的網路攻防中立於不敗。



🔍 資安名詞小辭典(本篇術語快速解釋)


X-Forwarded-For

一個常見的 HTTP Header,原用於記錄代理伺服器前的原始 IP 地址。在本案例中,該 Header 被攻擊者用來觸發堆疊溢位(Stack Buffer Overflow)漏洞。


Stack-Based Buffer Overflow(堆疊型緩衝區溢位)

一種常見漏洞類型,攻擊者可藉由輸入異常長度的資料覆寫記憶體內容,進一步達成遠端程式碼執行(Remote Code Execution, RCE)。


Remote Code Execution(RCE)

駭客可遠端在設備上執行程式,可用於植入後門、橫向擴張。




本文翻譯自 watchTowr 原文:“Is The Sofistication In The Room With Us? - X-Forwarded-For and Ivanti Connect Secure (CVE-2025-22457)

發佈日期:2025年 4 月 4 日

原文和圖片出處:watchTowr 部落格文章


bottom of page