Cacti is an open source platform which provides a robust and extensible operational monitoring and fault management framework for users. In affected versions a command injection vulnerability allows an unauthenticated user to execute arbitrary code on a server running Cacti, if a specific data source was selected for any monitored device. The vulnerability resides in the `remote_agent.php` file. This file can be accessed without authentication. This function retrieves the IP address of the client via `get_client_addr` and resolves this IP address to the corresponding hostname via `gethostbyaddr`. After this, it is verified that an entry within the `poller` table exists, where the hostname corresponds to the resolved hostname. If such an entry was found, the function returns `true` and the client is authorized. This authorization can be bypassed due to the implementation of the `get_client_addr` function. The function is defined in the file `lib/functions.php` and checks serval `$_SERVER` variables to determine the IP address of the client. The variables beginning with `HTTP_` can be arbitrarily set by an attacker. Since there is a default entry in the `poller` table with the hostname of the server running Cacti, an attacker can bypass the authentication e.g. by providing the header `Forwarded-For: <TARGETIP>`. This way the function `get_client_addr` returns the IP address of the server running Cacti. The following call to `gethostbyaddr` will resolve this IP address to the hostname of the server, which will pass the `poller` hostname check because of the default entry. After the authorization of the `remote_agent.php` file is bypassed, an attacker can trigger different actions. One of these actions is called `polldata`. The called function `poll_for_data` retrieves a few request parameters and loads the corresponding `poller_item` entries from the database. If the `action` of a `poller_item` equals `POLLER_ACTION_SCRIPT_PHP`, the function `proc_open` is used to execute a PHP script. The attacker-controlled parameter `$poller_id` is retrieved via the function `get_nfilter_request_var`, which allows arbitrary strings. This variable is later inserted into the string passed to `proc_open`, which leads to a command injection vulnerability. By e.g. providing the `poller_id=;id` the `id` command is executed. In order to reach the vulnerable call, the attacker must provide a `host_id` and `local_data_id`, where the `action` of the corresponding `poller_item` is set to `POLLER_ACTION_SCRIPT_PHP`. Both of these ids (`host_id` and `local_data_id`) can easily be bruteforced. The only requirement is that a `poller_item` with an `POLLER_ACTION_SCRIPT_PHP` action exists. This is very likely on a productive instance because this action is added by some predefined templates like `Device - Uptime` or `Device - Polling Time`. This command injection vulnerability allows an unauthenticated user to execute arbitrary commands if a `poller_item` with the `action` type `POLLER_ACTION_SCRIPT_PHP` (`2`) is configured. The authorization bypass should be prevented by not allowing an attacker to make `get_client_addr` (file `lib/functions.php`) return an arbitrary IP address. This could be done by not honoring the `HTTP_...` `$_SERVER` variables. If these should be kept for compatibility reasons it should at least be prevented to fake the IP address of the server running Cacti. This vulnerability has been addressed in both the 1.2.x and 1.3.x release branches with `1.2.23` being the first release containing the patch.
総合評価: CVE-2022-46169 は在野悪用が確認された重大脅威(100/100)。CVSS 深刻度は重大。悪用される可能性が高い(EPSS 99.83%、100 パーセンタイル) 根拠: CISA KEV に登録(追加日 2023-02-16)。Cacti / Cacti が対象で、弱点分類 CWE-74の悪用が確認されています。未認証でリモート管理権限を奪取されるリスクが極めて高い。 直近 1 日で EPSS が +5.36% 上昇。悪用への関心が高まっている可能性があります。 推奨対応: CISA の対応期限を過ぎています。緊急のパッチ適用を最優先に検討してください。
リスクは変動します。再評価に基づき、本ページの表示内容を更新しています。
: Cacti Command Injection Vulnerability · CISA KEV の詳細
: 2023-02-16
: 2023-03-09
: Apply updates per vendor instructions.
| EDB-ID | ソース | 種別 | 公開 | リンク |
|---|---|---|---|---|
| 51166 | exploit_db | edb | 2023-03-31 | Exploit-DB ↗ |
| — | nvd_ref | exploit_tag | Exploit-DB ↗ |
EPSS は日次で悪用されやすさの相対度合いを推定します。パーセンタイルは採点済み CVE の中での相対位置(高いほど相対的に深刻)を示します。
| # | 日付 | 旧 EPSS スコア | 新 EPSS スコア | Δ(新 − 旧) |
|---|---|---|---|---|
| 1 | 2026-06-15 | 94.47% | 99.83% | +5.36% |
| 2 | 2025-11-21 | 94.36% | 94.47% | +0.11% |
| 3 | 2025-11-18 | — | 94.36% | — |
EPSS の全履歴 (全 40 件)
この CVE の CVSS 指標。
| ベーススコア | バージョン | 深刻度 | ベクトル | 悪用しやすさ | 影響 | スコアの出典 |
|---|---|---|---|---|---|---|
| 9.8 | 3.1 | CRITICAL |
|
3.9 | 5.9 | [email protected] |
| 9.8 | 3.1 | CRITICAL |
|
3.9 | 5.9 | [email protected] |
| vendor | priority | summary | link |
|---|---|---|---|
alpine
|
— | CVE-2022-46169: 1 source package rows (cacti); 9 state rows across 3 repos (3.17-community, 3.22-community, edge-community); fixed 0, open 9. | https://security.alpinelinux.org/vuln/CVE-2022-46169 |
debian
|
not yet assigned | CVE-2022-46169 not yet assigned priority: Debian including 1 source packages (cacti), 5 status rows across 5 suites (bookworm, bullseye, forky, sid, trixie): resolved 5. | https://security-tracker.debian.org/tracker/CVE-2022-46169 |
gentoo
|
high | CVE-2022-46169: 1 GLSA(s) (202412-02), 1 atom(s) (net-analyzer/cacti); latest impact high. | https://bugs.gentoo.org/buglist.cgi?quicksearch=CVE-2022-46169 |
suse
|
critical | — | https://www.suse.com/security/cve/CVE-2022-46169/ |
ubuntu
|
high | CVE-2022-46169 high priority: Ubuntu including 1 source packages (cacti), 13 status rows across 13 suites (bionic, focal, jammy, kinetic, lunar, mantic, noble, oracular, plucky, questing, trusty, upstream, xenial): not-affected 6, ignored 3, released 3, needs-triage 1. | https://ubuntu.com/security/CVE-2022-46169 |
| URL | タグ |
|---|---|
| https://github.com/Cacti/cacti/commit/7f0e16312dd5ce20f93744ef8b9c3b0f1ece2216 | Patch Third Party Advisory |
| https://github.com/Cacti/cacti/commit/a8d59e8fa5f0054aa9c6981b1cbe30ef0e2a0ec9 | Patch Third Party Advisory |
| https://github.com/Cacti/cacti/commit/b43f13ae7f1e6bfe4e8e56a80a7cd867cf2db52b | Patch Third Party Advisory |
| https://github.com/Cacti/cacti/security/advisories/GHSA-6p93-p743-35gf | Exploit Mitigation Patch Third Party Advisory |
| https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2022-46169 | US Government Resource |