Linux Distros 未修補的弱點:CVE-2022-46169

critical Nessus Plugin ID 259583

概要

Linux/Unix 主機上安裝的一個或多個套件存有弱點,供應商表示將不會修補。

說明

Linux/Unix 主機上安裝了一個或多個受到弱點影響的套件,且廠商未提供可用的修補程式。

- Cacti 是一個開放原始碼平台,可為使用者提供健全且可延伸的作業監控和錯誤管理架構。在受影響的版本中,如果為任何受監控的裝置選取特定的資料來源,則未經驗證的使用者可利用命令插入弱點在執行 Cacti 的伺服器上執行任意程式碼。該弱點存在於「remote_agent.php」檔案中。使用者無需經過身分驗證即可存取此檔案。此函式會透過「get_client_addr」擷取用戶端的 IP 位址,並透過「gethostbyaddr」將此 IP 位址解析為對應的主機名稱。在此之後,系統會驗證「poller」表格中是否有一個項目,其中的主機名稱對應於解析出的主機名稱。如果找到此項目,該函式會傳回「true」並授權用戶端。
由於「get_client_addr」函式的實作,使用者可繞過此授權。該函式在「lib/functions.php」檔案中定義,並透過檢查數個「$_SERVER」變數來判斷用戶端的 IP 位址。攻擊者可以任意設定以「HTTP_」開頭的變數。
由於 `poller` 表格中有一個預設項目包含執行 Cacti 的伺服器主機名稱因此攻擊者可藉由提供 `Forwarded-For: <TARGETIP>` 標頭等方式繞過驗證。這樣,「get_client_addr」函式就會傳回執行 Cacti 之伺服器的 IP 位址。接着呼叫「gethostbyaddr」,可以將此 IP 位址解析為伺服器的主機名稱,因為預設項目的緣故,該位址將通過「poller」主機名稱檢查。繞過「remote_agent.php」檔案的授權後,攻擊者可以觸發不同的動作。其中一個動作稱為「polldata」。被叫用的函式「poll_for_data」會擷取一些要求參數,並從資料庫載入對應的「poller_item」項目。如果「poller_item」的「action」等於「POLLER_ACTION_SCRIPT_PHP」,則使用「proc_open」函式來執行 PHP 指令碼。攻擊者控制的參數「$poller_id」是透過允許任意字串的「get_nfilter_request_var」函式來擷取。稍後,將此變數插入傳遞至「proc_open」的字串中,進而導致命令插入弱點。例如,藉由提供「poller_id=;id`,執行「id」命令。為了執行有弱點的呼叫,攻擊者必須提供「host_id」和「local_data_id」,其中對應「poller_item」的「action」設為「POLLER_ACTION_SCRIPT_PHP」。這兩個 ID (「host_id」和「local_data_id」) 都可以輕易暴力破解。唯一的要求是存在具有「POLLER_ACTION_SCRIPT_PHP」動作的「poller_item」。這很可能發生在生產型執行個體上,因為此動作是透過一些預先定義的範本新增,例如「Device - Uptime」或「Device - Polling Time」。如果將「poller_item」的「action」類型設定爲「POLLER_ACTION_SCRIPT_PHP」(「2」),則未經驗證的使用者可利用此命令插入弱點來執行任意命令。爲防止授權繞過,應當使攻擊者無法透過「get_client_addr」(「lib/functions.php」檔案) 傳回任意 IP 位址。只要不接受「HTTP_...」「$_SERVER」變數即可實現這點。如果出於相容性的原因應該保留這些變數,則至少應該防止攻擊者偽造執行 Cacti 至伺服器的 IP 位址。此弱點已在 1.2.x 和 1.3.x 版本分支中解決,1.2.23 是第一個包含修補程式的版本。(CVE-2022-46169)

請注意,Nessus 的判定取決於廠商所報告的套件是否存在。

解決方案

目前尚未有已知的解決方案。

另請參閱

https://ubuntu.com/security/CVE-2022-46169

Plugin 詳細資訊

嚴重性: Critical

ID: 259583

檔案名稱: unpatched_CVE_2022_46169.nasl

版本: 1.1

類型: local

代理程式: unix

系列: Misc.

已發布: 2025/8/30

已更新: 2025/8/30

支援的感應器: Agentless Assessment, Frictionless Assessment Agent, Frictionless Assessment AWS, Frictionless Assessment Azure, Nessus Agent, Nessus

風險資訊

VPR

風險因素: Critical

分數: 9.0

CVSS v2

風險因素: High

基本分數: 7.5

時間性分數: 6.2

媒介: CVSS2#AV:N/AC:L/Au:N/C:P/I:P/A:P

CVSS 評分資料來源: CVE-2022-46169

CVSS v3

風險因素: Critical

基本分數: 9.8

時間性分數: 9.1

媒介: CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

時間媒介: CVSS:3.0/E:F/RL:O/RC:C

弱點資訊

CPE: cpe:/o:canonical:ubuntu_linux:22.04:-:lts, p-cpe:/a:canonical:ubuntu_linux:cacti

必要的 KB 項目: Host/cpu, Host/local_checks_enabled, global_settings/vendor_unpatched, Host/OS/identifier

可被惡意程式利用: true

可輕鬆利用: Exploits are available

弱點發布日期: 2022/12/5

CISA 已知遭惡意利用弱點到期日: 2023/3/9

參考資訊

CVE: CVE-2022-46169