El 26 de enero de 2025, se publicó una vulnerabilidad crítica en Cacti, una herramienta de monitoreo de redes de código abierto. Esta vulnerabilidad, CVE-2025-22604 permite la ejecución remota de código (RCE) por parte de usuarios autenticados a través de respuestas SNMP de múltiples líneas.
Descripción de la vulnerabilidad
El problema reside en una falla en el analizador de resultados SNMP de múltiples líneas. Usuarios autenticados pueden inyectar OIDs malformados en la respuesta SNMP. Cuando estas respuestas son procesadas por las funciones ss_net_snmp_disk_io()
o ss_net_snmp_disk_bytes()
, una parte de cada OID se utiliza como clave en un array que, posteriormente, forma parte de un comando del sistema, lo que provoca una vulnerabilidad de ejecución de comandos.
Detalles técnicos
En la función cacti_snmp_walk()
, Cacti utiliza exec_into_array()
para ejecutar comandos y leer resultados con múltiples líneas como un array. Luego, se analiza cada línea buscando un signo igual, asignando la parte izquierda como el OID y la derecha como su valor. Estos OIDs analizados se añaden al resultado final. Durante este proceso, los valores se filtran, pero los OIDs no.
Si una línea no contiene un OID válido, se añade sin filtrar al valor del OID anterior. Las funciones ss_net_snmp_disk_io()
y ss_net_snmp_disk_bytes()
realizan solicitudes SNMP y almacenan los resultados en variables. La última parte de cada OID se añade a un array llamado $indexes
. Posteriormente, se realiza otra solicitud snmpwalk
y se calcula la diferencia entre los valores actuales y anteriores. Durante este proceso, se construye un comando del sistema que incluye las claves del array $indexes
, lo que permite la ejecución de comandos arbitrarios si un atacante ha inyectado OIDs malformados.
Versiones afectadas y solución
Todas las versiones de Cacti hasta la 1.2.8 inclusive están afectadas por esta vulnerabilidad. La solución es actualizar a la versión 1.2.29, donde este problema ha sido corregido.
Recomendaciones
Se recomienda encarecidamente a los administradores de sistemas que utilicen Cacti que actualicen a la versión 1.2.29 o superior lo antes posible para mitigar esta vulnerabilidad. Además, es aconsejable revisar los registros del sistema en busca de actividades sospechosas que puedan estar relacionadas con esta vulnerabilidad.