摘要

本報告提供對Tridium Niagara Framework中發現的關鍵漏洞的全面技術分析,該框架是一款廣泛應用於建築管理和工業自動化的軟體平台。報告深入探討框架的架構組成,詳細說明如CVE-2025-3943CVE-2025-3944等特定漏洞,並概述潛在的攻擊鏈。報告還討論了這些漏洞的技術影響,並提出有效的緩解策略,以增強 Niagara 驅動環境的安全態勢。

駭客如何攻擊Tridium Niagara:深入剖析Root級別RCE與CSRF Token風險 | 資訊安全新聞

1. 簡介

Tridium Niagara Framework® 是一款關鍵的軟體基礎設施,旨在促進建築管理、工業自動化和智慧基礎設施環境中多樣設備的連接、管理和控制。它作為中介平台,實現不同系統之間的無縫互操作性,包括暖通空調(Heating, Ventilation and Air Conditioning, HVAC)、照明、能源管理和安全。其廣泛的部署使其成為眾多物聯網(IoT)技術的關鍵支柱,涵蓋各個行業 [1]。

最近,Nozomi Networks的研究人員在Tridium Niagara Framework中發現了13個漏洞。如果這些漏洞被攻擊,可能導致重大安全危害,特別是在Niagara系統設定錯誤,例如在網路設備上關閉加密時。這些漏洞的連鎖攻擊可能允許攻擊者,通過中間人(Man-in-the-Middle, MiTM)攻擊,危害整個Niagara系統。本報告旨在深入技術檢視這些發現、其潛在影響以及保護關鍵基礎設施的建議緩解措施。

2. Tridium Niagara Framework 概述

由Tridium(漢威聯合公司, Honeywell company)開發的Niagara Framework是一個開放且與供應商無關的(vendor-neutral)解決方案,用於整合和管理來自不同製造商的運營系統和設備。它將不同的通訊協定轉換為統一的資料模型,允許集中監控和控制 [2]。

從技術角度來看,Niagara Framework包含兩個主要軟體組件,通常在單一硬體設備上運行:

  • 平台(Platform): 這是提供建立、部署、執行和監督Niagara站點所需核心服務的基礎軟體環境。它處理低階操作和資源管理。
  • 站點(Station): 該組件代表運營層面,負責與設備通訊、處理資料以及提供監控和控制的使用者介面。它直接與連接的系統互動並執行控制邏輯。

這些組件通過Niagara Workbench管理,這是一個整合的開發和設定工具,作為工程師、開發者和整合者的主要圖形使用者介面。鑑於Niagara在連接關鍵系統和橋接物聯網與資訊技術(IT)網路中的角色,它成為惡意行為者(Malicious actors)的高價值目標。Niagara的漏洞可能威脅數位資產,並導致現實世界的後果,影響各行業的安全性、生產力和服務連續性 [1]。

3. 漏洞分析

Nozomi Networks發現的漏洞突顯了Niagara Framework內的重大安全弱點。雖然發現了13個問題,但其中五個被合併為兩個CVE,總計十個獨立的CVE。本節將重點分析兩個關鍵漏洞,CVE-2025-3943 和 CVE-2025-3944,它們是引人注目的攻擊鏈的核心。

3.1. CVE-2025-3943: 通過GET請求暴露 CSRF Token

Niagara Framework使用Cross-Site Request Forgery (CSRF) token來驗證狀態更改的HTTP Request,防止 CSRF攻擊。然而,分析顯示 CSRF refresh token的處理存在關鍵缺陷。Niagara Workbench軟體通過 /ord 端點,特別是使用 spy 功能,經由HTTP GET方法傳輸該 token [1]。

通過GET請求傳輸敏感資料(如CSRF tokens)本質上不安全,因為GET請求參數通常會記錄在多個位置,包括網頁伺服器日誌、瀏覽器歷史記錄和代理日誌。此外,CSRF token 在整個 session 期間保持不變,使其成為攻擊者的持久目標。如果攻擊者能存取這些日誌,他們可以取得 token 並製造惡意的 CSRF 攻擊。

以下是一個通過 GET 方法傳遞 CSRF refresh token 的請求範例:

GET /ord?spy:/sysManagers/networkInterfaceManager/refresh$3ftoken$3dbcx9KdRC5Yfml$2f5D2SeoZ9fnafUi7cvW HTTP/1.1

此漏洞的一個重要因素是,與 Niagara Workbench 管理面板的互動經常觸發 Content Security Policy (CSP) 違規報告。這些報告包含 refresh anti-CSRF token,並被記錄。如果啟用了 Syslog 並設定為通過未加密通道傳輸日誌,token暴露的風險進一步放大。嗅探(Sniffing)網路的攻擊者可以攔截這些日誌並提取 CSRF token,為 session hijacking 和其他攻擊鋪路 [1]。

以下是一個發送到 /csp-reports 端點的生成的CSP報告範例,顯示敏感資訊如何被無意記錄:

  1. POST /csp-reports HTTP/1.1
  2. Host: station.local
  3. Cookie: niagara\_userid=admin; niagara\_origin\_uri=%2Ford;
  4. JSESSIONID=5568690f244c1dd87cc4dee8bd43da5baa61c8b2c0abd6ba28.node0
  5. Content-Length: 737
  6. ...
  7. {"csp-report":{"document-uri":"https://station.local/ord spy:/sysManagers/networkInterfaceManager/refresh$3ftoken$3dbcx9KdRC5Yfml$2f5D2SeoZ9fnafUi7cvW","referrer":"","violated-directive":"font-src","effective-directive":"font-src","original-policy":"connect-src 'self' workbench ws://station.local:443 wss://station.local:443; default-src 'self' workbench; img-src 'self' workbench data: module:; report-uri /csp-reports; script-src 'self' workbench 'unsafe-inline' 'unsafe-eval'; style-src 'self' workbench 'unsafe-inline'","disposition":"enforce","blocked-uri":"http://station.local/module/themeZebra/fonts/SourceSansPro-Regular.otf.woff","line-number":1,"source-file":"https://station.local/ord","status-code":200,"script-sample":""}}

此情境突顯了一個關鍵的錯誤設定風險:如果Syslog服務設定為通過未加密通道傳送資料,相鄰的攻擊者可以輕鬆分析網路流量並攔截 anti-CSRF refresh token [1]。

3.2. CVE-2025-3944: 通過 dhcpd.conf 進行任意檔案寫入和 Root 級別 RCE

Niagara Framework 包含一個安全檔案傳輸功能,旨在限制管理員存取或修改敏感檔案。然而,此功能未能充分保護運行基於 QNX 的 Niagara 作業系統的設備上的 /etc/dhcpd/dhcpd.conf 檔案。具有管理權限的認證攻擊者可以利用此缺陷覆寫 dhcpd.conf 檔案,並利用特定的DHCP hooks(如 on commit on release on expiry )在 Niagara 基於 QNX 的系統上以 root 權限執行任意程式碼 [1]。

以管理權限將任意檔案寫入關鍵系統目錄的能力是一個嚴重的漏洞。通過在 dhcpd.conf 檔案中注入惡意命令,攻擊者可以實現持久的 root 級別 Remote Code Execution (RCE)。例如,攻擊者可以插入一個 on commit hook,觸發敏感 root 可讀檔案(如 /etc/passwd /etc/shadow )的洩露,將其內容儲存到臨時檔案如 /tmp/out

以下是一個 on commit hook的範例:

on commit {
execute("/bin/sh", "-c", "/proc/boot/ping -c 4 192.168.45.237; echo 'passwd:\n' > /tmp/out; cat /etc/passwd >> /tmp/out; echo '\nshadow:\n' >> /tmp/out; cat /etc/shadow >> /tmp/out; echo '\nopasswd:\n' >> /tmp/out; cat /etc/opasswd >> /tmp/out; echo '\noshadow:\n' >> /tmp/out; cat /etc/oshadow >> /tmp/out");
}

此程式碼片段展示攻擊者如何在 dhcpd.conf 檔案中使用 execute 命令來運行shell命令。在此特定範例中,它會ping一個外部IP位址,然後將各種與密碼相關的檔案( /etc/passwd /etc/shadow /etc/opasswd /etc/oshadow )的內容串接到 /tmp/out 。這有效地允許攻擊者竊取認證或其他敏感系統資訊 [1]。

4. 攻擊鏈分析

Nozomi Networks 識別了一個引人注目的攻擊鏈,利用 CVE-2025-3943 和 CVE-2025-3944 在基於 Niagara 的設備上實現 root 級別 RCE。此攻擊鏈需要兩個前提條件:

  • 攻擊者必須能夠嗅探或執行中間人(MiTM)攻擊,針對進出 Tridium Niagara 設備的流量。
  • Syslog 功能必須啟用並設定為將日誌轉發到未加密的 Syslog 伺服器,這會在安全儀表板上產生警告 [1]。

如果滿足這些前提條件,攻擊者可以執行以下步驟:

  1. 攔截 anti-CSRF refresh token (CVE-2025-3943): 通過利用未加密的 Syslog 流量,相鄰的攻擊者可以分析網路,攔截由 Niagara Workbench 軟體生成的 CSP 違規報告暴露的 anti-CSRF token。
  2. 升級日誌收集: 在取得 anti-CSRF refresh token 後,攻擊者可以偽造 CSRF 攻擊。這涉及誘騙管理員存取精心設計的連結(例如 /ord?spy:/web.jetty$3ftoken$ ),將 web.jetty 組件的日誌級別更改為ALL。此設定確保所有進出的 HTTP Request 和 HTTP Response 都被完整記錄,為攻擊者提供更多可利用的資料。
  3. Session Hijacking: 通過分析 Syslog 資料,攻擊者提取管理員的 JSESSIONID session token。使用此 token,攻擊者可以以管理權限連接到站點,有效地 hijacking 管理員的 session。
  4. 任意檔案寫入: 擁有管理權限後,攻擊者獲得將任意檔案寫入 Niagara 系統的能力。這是一個關鍵步驟,因為它允許攻擊者在設備上引入惡意程式碼。
  5. Root 級別 Remote Code Execution (RCE): 攻擊者隨後將惡意的 dhcpd.conf 檔案寫入 /etc/dhcpd/ 目錄。此檔案包含執行任意命令的 on-commit hook,擁有 root 權限。當 dhcpd 服務重新啟動或取得新的 DHCP 租約時,惡意程式碼被執行,授予攻擊者在 Niagara 設備上的 root 級別 RCE [1]。

5. 推薦緩解措施

Tridium 已發布安全公告和修補程式來解決這些漏洞。強烈建議用戶將 Niagara Framework 安裝更新到最新的更新版本。除了修補外,以下最佳實踐建議用於增強 Niagara 驅動環境的安全性:

  • 加密 Syslog 流量: 確保 Syslog 設定為使用加密通道(例如TLS),以防止敏感資訊(如CSRF tokens)以明文傳輸。這直接解決了 CVE-2025-3943 中 Token 的暴露問題。
  • 實施網路分段: 通過網路分段將關鍵物聯網/運營技術(OT)系統與IT網路隔離。這限制了在發生違規時網路內的橫向移動,遏制攻擊的影響。
  • 定期審查和強化設定: 定期審查並強化 Niagara 系統設定。確保所有安全功能均已啟用,並修改預設或不安全的設定。這包括停止不必要的服務和通訊埠。
  • 應用最小權限原則: 確保用戶和服務以執行其功能所需的最小權限操作。這降低了被盜帳戶或服務的潛在影響。
  • 實施穩健的監控和日誌記錄: 建立全面的監控和日誌記錄機制,以早期檢測可疑活動和潛在攻擊。這包括監控網路流量異常和審查系統日誌,尋找未經授權的存取嘗試或異常行為。

6. 結論

Tridium Niagara Framework 中發現的漏洞突顯了在工業控制系統和關鍵基礎設施中持續進行安全研究和主動修補的關鍵重要性。對CVE-2025-3943CVE-2025-3944的詳細分析揭示了看似微小的缺陷如何被連鎖攻擊,實現重大危害,包括 root 級別的遠端程式碼執行。通過理解這些技術漏洞並認真實施推薦的緩解策略,組織可以顯著增強其Niagara驅動環境的韌性和安全性,防止潛在的運營中斷和資料洩露。

Copyright © 2025 版權所有 翊天科技有限公司