一、 漏洞 CVE-2022-46169 基础信息
漏洞信息
                                        # 未经认证的命令注入

N/A
                                        
提示
尽管我们采用了先进的大模型技术,但其输出仍可能包含不准确或过时的信息。
神龙会尽力确保数据准确,但也请结合实际情况进行甄别与判断。
神龙祝您一切顺利!
漏洞标题
Unauthenticated Command Injection
来源:美国国家漏洞数据库 NVD
漏洞描述信息
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.
来源:美国国家漏洞数据库 NVD
CVSS信息
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
来源:美国国家漏洞数据库 NVD
漏洞类别
输出中的特殊元素转义处理不恰当(注入)
来源:美国国家漏洞数据库 NVD
漏洞标题
Cacti 命令注入漏洞
来源:中国国家信息安全漏洞库 CNNVD
漏洞描述信息
Cacti是Cacti团队的一套开源的网络流量监测和分析工具。该工具通过snmpget来获取数据,使用RRDtool绘画图形进行分析,并提供数据和用户管理功能。 Cacti v1.2.22版本存在命令注入漏洞,该漏洞源于未经身份验证的命令注入,允许未经身份验证的用户在运行Cacti的服务器上执行任意代码。
来源:中国国家信息安全漏洞库 CNNVD
CVSS信息
N/A
来源:中国国家信息安全漏洞库 CNNVD
漏洞类别
命令注入
来源:中国国家信息安全漏洞库 CNNVD
二、漏洞 CVE-2022-46169 的公开POC
# POC 描述 源链接 神龙链接
1 CVE-2022-46169 https://github.com/imjdl/CVE-2022-46169 POC详情
2 CVE-2022-46169 Cacti remote_agent.php Unauthenticated Command Injection. https://github.com/0xf4n9x/CVE-2022-46169 POC详情
3 CVE-2022-46169 - Cacti Blind Remote Code Execution (Pre-Auth) https://github.com/taythebot/CVE-2022-46169 POC详情
4 Cacti Unauthenticated Command Injection https://github.com/Inplex-sys/CVE-2022-46169 POC详情
5 PoC for CVE-2022-46169 - Unauthenticated RCE on Cacti <= 1.2.22 https://github.com/sAsPeCt488/CVE-2022-46169 POC详情
6 Exploit to CVE-2022-46169 vulnerability https://github.com/botfather0x0/CVE-2022-46169 POC详情
7 Cacti: Unauthenticated Remote Code Execution Exploit in Ruby https://github.com/Habib0x0/CVE-2022-46169 POC详情
8 RCE POC for CVE-2022-46169 https://github.com/N1arut/CVE-2022-46169_POC POC详情
9 None https://github.com/miko550/CVE-2022-46169 POC详情
10 This is poc of CVE-2022-46169 authentication bypass and remote code execution https://github.com/ariyaadinatha/cacti-cve-2022-46169-exploit POC详情
11 Repo for CVE-2022-46169 https://github.com/doosec101/CVE-2022-46169 POC详情
12 WARNING: This is a vulnerable application to test the exploit for the Cacti command injection (CVE-2022-46169). Run it at your own risk! https://github.com/m3ssap0/cacti-rce-cve-2022-46169-vulnerable-application POC详情
13 None https://github.com/devAL3X/CVE-2022-46169_poc POC详情
14 Unauthenticated Remote Code Execution through authentication bypass and command injection in Cacti < 1.2.23 and < 1.3.0 https://github.com/JacobEbben/CVE-2022-46169_unauth_remote_code_execution POC详情
15 Fixed exploit for CVE-2022-46169 (originally from https://www.exploit-db.com/exploits/51166) https://github.com/icebreack/CVE-2022-46169 POC详情
16 PoC for CVE-2022-46169 that affects Cacti 1.2.22 version https://github.com/devilgothies/CVE-2022-46169 POC详情
17 CVE-2022-46169 https://github.com/yassinebk/CVE-2022-46169 POC详情
18 Exploit for cacti version 1.2.22 https://github.com/ruycr4ft/CVE-2022-46169 POC详情
19 This is a exploit of CVE-2022-46169 to cacti 1.2.22. This exploit allows through an RCE to obtain a reverse shell on your computer. https://github.com/FredBrave/CVE-2022-46169-CACTI-1.2.22 POC详情
20 Este es un código del exploit CVE-2022-46169, que recree utilizando Python3! Si por ahí estás haciendo una máquina de HTB, esto te puede ser útil... 🤞✨ https://github.com/sha-16/RCE-Cacti-1.2.22 POC详情
21 Improved PoC for Unauthenticated RCE on Cacti <= 1.2.22 - CVE-2022-46169 https://github.com/Safarchand/CVE-2022-46169 POC详情
22 Proof of concept / CTF script for exploiting CVE-2022-46169 in Cacti, versions >=1.2.22 https://github.com/MarkStrendin/CVE-2022-46169 POC详情
23 🐍 Python Exploit for CVE-2022-46169 https://github.com/BKreisel/CVE-2022-46169 POC详情
24 A simple PoC for CVE-2022-46169 a.k.a Cacti Unauthenticated Command Injection, a vulnerability allows an unauthenticated user to execute arbitrary code on a server running Cacti prior from version 1.2.17 to 1.2.22 https://github.com/Rickster5555/EH2-PoC POC详情
25 None https://github.com/antisecc/CVE-2022-46169 POC详情
26 Unauthenticated Command Injection in Cacti <= 1.2.22 https://github.com/dawnl3ss/CVE-2022-46169 POC详情
27 CVE-2022-46169 https://github.com/a1665454764/CVE-2022-46169 POC详情
28 None https://github.com/0xZon/CVE-2022-46169-Exploit POC详情
29 An advanced RCE tool tailored for exploiting a vulnerability in Cacti v1.2.22. Crafted with precision, this utility aids security researchers in analyzing and understanding the depth of the CVE-2022-46169 flaw. Use responsibly and ethically. https://github.com/copyleftdev/PricklyPwn POC详情
30 Exploit for CVE-2022-46169 https://github.com/0xN7y/CVE-2022-46169 POC详情
31 None https://github.com/mind2hex/CVE-2022-46169 POC详情
32 Exploit to CVE-2022-46169 vulnerability https://github.com/c3rrberu5/CVE-2022-46169 POC详情
33 None https://github.com/HPT-Intern-Task-Submission/CVE-2022-46169 POC详情
34 PoC for Cacti 1.2.22 - CVE-2022-46169 https://github.com/rockyroadonline/CVE-2022-46169 POC详情
35 None https://github.com/mpvx/CVE-2022-46169 POC详情
36 Cacti v1.2.22: Unauthenticated Command Injection Vulnerability (CVE-2022-46169) https://github.com/lof1sec/CVE-2022-46169 POC详情
37 Cacti through 1.2.22 is susceptible to remote command injection. There is insufficient authorization within the remote agent when handling HTTP requests with a custom Forwarded-For HTTP header. An attacker can send a specially crafted HTTP request to the affected instance and execute arbitrary OS commands on the server, thereby making it possible to obtain sensitive information, modify data, and/or execute unauthorized administrative operations in the context of the affected site. https://github.com/projectdiscovery/nuclei-templates/blob/main/http/cves/2022/CVE-2022-46169.yaml POC详情
38 None https://github.com/Threekiii/Awesome-POC/blob/master/Web%E5%BA%94%E7%94%A8%E6%BC%8F%E6%B4%9E/Cacti%20remote_agent.php%20%E5%89%8D%E5%8F%B0%E5%91%BD%E4%BB%A4%E6%B3%A8%E5%85%A5%E6%BC%8F%E6%B4%9E%20CVE-2022-46169.md POC详情
39 https://github.com/vulhub/vulhub/blob/master/cacti/CVE-2022-46169/README.md POC详情
三、漏洞 CVE-2022-46169 的情报信息