Cacti命令执行漏洞

admin 2022-12-13 09:58:54 CNNVD预警 来源:ZONE.CI 全球网 0 阅读模式

1、产品描述:Cacti项目是一个开源平台,可为用户提供强大且可扩展的操作监控和故障管理框架

2、影响产品或组件及版本:Cacti = 1.2.22

3、受影响资产情况:通过资产测绘系统fofa发现,全球公61665个使用记录,其中第一名美国 40520个,第二名中国10589个、第三名日本10556个。

4、技术细节表述:漏洞存在于“remote_agent.php”文件中,攻击者无需身份验证即可访问此文件。攻击者可利用get_nfilter_request_var()函数检索的参数$poller_id,来满足poller_item =POLLER_ACTION_SCRIPT_PHP条件,触发proc_open()函数,从而导致命令执行。漏洞利用成功后,未经身份验证的攻击者可以在运行 Cacti 的服务器上执行任意代码。

5、修补措施:

目前根据影响版本中的信息,排查并升级到安全版本。

Cacti官方已针对该漏洞发布补丁,但补丁更新版本1.2.23和1.3.0目前暂未发布,详见:

https://github.com/Cacti/cacti/security/advisories/GHSA-6p93-p743-35gf

临时修补建议

1. 禁止lib/functions.php 文件中的 get_client_addr函数返回任意IP地址来防止授权绕过。同时不遵守 HTTP_... $_SERVER 变量。

2. 对 remote_agent.php 文件应用以下更改来防止命令注入:变量 $poller_id 应该是一个整数,因此应该通过函数 get_filter_request_var 替代 get_nfilter_request_var 来检索:

    function poll_for_data() {
            // ...
               $poller_id      = get_filter_request_var('poller_id');
               // ...

3. 为了进一步加强对命令注入的防御,$poller_id 在传递给 proc_open 之前应该使用 escapeshellarg 进行转义。

    function poll_for_data() {
    // ...
    $cactiphp = proc_open(read_config_option('path_php_binary') . ' -q ' . $config['base_path'] . '/script_server.php realtime ' . escapeshellarg($poller_id), $cactides, $pipes);
    // ...

6、漏洞来源:https://github.com/Cacti/cacti/security/advisories/GHSA-6p93-p743-35gf

weinxin
特别声明
本站(ZONE.CI)所有文章仅供技术研究,若将其信息做其他用途,由用户承担全部法律及连带责任,本站不承担任何法律及连带责任,请遵守中华人民共和国安全法.
Cacti命令执行漏洞 CNNVD预警

Cacti命令执行漏洞

1、产品描述:Cacti项目是一个开源平台,可为用户提供强大且可扩展的操作监控和故障管理框架。2、影响产品或组件及版本:Cacti = 1.2.223、受影响资产情况:通过资产
pgadmin 4远程命令执行漏洞 CNNVD预警

pgadmin 4远程命令执行漏洞

 pgadmin 4远程命令执行漏洞漏洞预警      北京中测安华科技有限公司2022年12月目录第 1 章 概述第 2 章 漏洞分析2.1 漏洞信息概要2.2 漏洞详情描述
评论:0   参与:  0