首页 网络安全 正文
  • 本文约1029字,阅读需5分钟
  • 4
  • 0

Cacti SNMP命令注入漏洞CVE-2025-66399

摘要

栋科技漏洞库关注到 Cacti 在 1.2.29 之前的版本中存在一个安全漏洞,该漏洞现在已经被追踪为CVE-2025-66399,CVSS 4.0评分为7.4。

Cacti 是基于 PHP、MySQL 和 RRDtool(Round Robin Database Tool)构建的开源性能监控与故障管理框架,模板化配置降低上手门槛。

一、基本情况

Cacti 的核心功能是对网络设备、服务器、应用程序等 IT 基础设施的性能指标进行采集、存储、可视化展示与告警管理,其插件生态丰富。

Cacti SNMP命令注入漏洞CVE-2025-66399

Cacti 最初由 Ian Berry 开发,目前由 Cacti Group 维护,广泛应用于企业级网络监控、数据中心运维等场景,以轻量、灵活、易扩展著称。

栋科技漏洞库关注到 Cacti 在 1.2.29 之前的版本中存在一个安全漏洞,该漏洞现在已经被追踪为CVE-2025-66399,CVSS 4.0评分为7.4。

二、漏洞分析

CVE-2025-66399是位于Cacti受影响版本中SNMP设备配置功能中存在的输入验证漏洞,通过SNMP团体字符串注入可导致远程代码执行。

问题核心在于Cacti对 SNMP团体字符串(用于查询网络设备的凭证)的处理方式。

当管理员或具有设备编辑权限的用户保存设备时,应用程序未能清理输入中危险字符,也就是说SNMP设备配置功能中存在输入验证缺陷。

即负责验证团体字符串(snmp_community)的代码缺少关键过滤器:用于 sanitization 的正则表达式“被有意留空(””),导致验证失效”。

这一疏忽意味着“换行符未被修改”。 由于系统未剥离这些字符,攻击者可注入恶意命令,后端系统会将其解释为单独指令。

具体来说,在版本低于1.2.29时,SNMP设备配置功能中存在输入验证漏洞,经过身份验证的Cacti用户提供精心制作的SNMP社区字符串。

而这些精心制作的SNMP社区字符串中包含控制字符(包括换行符),这些字符会被数据库原样接受并存储,随后嵌入后端SNMP操作中。

这就意味着,在某些环境中,下游SNMP工具或包装器会将换行分隔的令牌解释为命令边界,这可能导致以Cacti进程的权限执行意外命令。

因此,其SNMP设备配置功能中存在的这一输入验证漏洞吗,使得攻击者能够在受影响系统上执行任意命令,且执行权限与Cacti进程相同。

攻击者可执行具有 Cacti 进程权限的任意命令,其后果严重,成功利用可导致: 未授权修改监控数据 ;执行系统级命令 ;未授权文件写入。

三、POC概念验证

公告提供了“特制多行团体字符串”存储方式的清晰示例。攻击者可注入如下载荷:

管理员已设置登录后刷新可查看

四、影响范围

Cacti < 1.2.29

五、修复建议

Cacti >= 1.2.29

六、参考链接

管理员已设置登录后刷新可查看



扫描二维码,在手机上阅读
评论
更换验证码
友情链接