OPSSHIELD informó de que una intrusión en el canal de actualización de cPGuard distribuyó un script malicioso en las versiones 5.88.12 a 5.88.19 para servidores Linux. La empresa estimó que el script llegó a ejecutarse en unos 2.950 servidores. Quienes administran uno deben comprobar el registro de instalación, actualizar cPGuard, buscar rastros y rotar las credenciales que pudieran quedar expuestas.
Cómo se distribuyó el script
La cronología atribuida a OPSSHIELD sitúa el acceso al servidor de facturación y licencias a las 22:58 UTC del 1 de noviembre de 2026. El 2 de noviembre, el atacante habría cargado el script en el sistema de actualizaciones entre las 02:04 y las 02:09 UTC. La instalación en servidores de clientes se habría producido entre las 02:08 y las 03:20 UTC.
Qué puede revelar el registro de cPGuard
Las versiones señaladas como afectadas son 5.88.12 a 5.88.19. Para buscar una entrada de actualización en el registro indicado, el comando comunicado es:
grep 'Successfully updated' /opt/cpguard/logs/install_log
Una entrada correspondiente a una versión afectada indica que esa actualización se instaló; por sí sola, no demuestra que el script llegara a ejecutarse ni que salieran datos del servidor. La ausencia de entradas, un registro incompleto o la falta de rastros tras una actualización tampoco descartan que el script se ejecutara.
Qué archivos y rastros dejó el ataque
OPSSHIELD indicó que el script recopiló archivos que podían contener hashes de contraseñas (/etc/shadow), cuentas locales (/etc/passwd), archivos SSH de root, credenciales de bases de datos en /root/.my.cnf e historial de comandos de root. El archivo /root/.s3cfg, que puede guardar credenciales de almacenamiento, se habría recopilado en un número reducido de servidores.
Entre los rastros de persistencia comunicados figuran una shell oculta con permisos setuid-root en /var/tmp/.cpg91511_sh y una tarea programada en /etc/cron.d/i93677, con archivos asociados en /var/tmp/.i93677/. Setuid-root es un permiso que permite ejecutar un programa con los privilegios de su propietario, en este caso root.
Impacto estimado y correcciones
OPSSHIELD estimó que el script se ejecutó en unos 2.950 servidores. La empresa también comunicó que se sustrajeron registros de facturación correspondientes a unas 7.900 cuentas y que se copiaron tres de sus servidores en la nube. La estimación inicial, de 32 archivos extraídos del servidor de licencias y asociados a servidores de clientes, se refería a otra medida.
La secuencia de corrección comunicada distingue dos tareas: cPGuard 5.88.26 elimina la puerta trasera y una actualización posterior separada elimina la tarea programada. La versión de esa actualización de seguimiento no fue indicada. Por eso, instalar 5.88.26 no sustituye la comprobación de la tarea programada y de los demás rastros.
Medidas para servidores potencialmente afectados
La respuesta recomendada por OPSSHIELD empieza por actualizar cPGuard y revisar y retirar los rastros restantes. Después, si el script pudo ejecutarse, hay que cambiar las contraseñas locales y reutilizadas, rotar las credenciales de bases de datos y de servicios en la nube, y reemplazar las claves SSH potencialmente expuestas. También se recomienda revisar authorized_keys, retirar claves públicas antiguas de confianza y cambiar las credenciales del portal de facturación de OPSSHIELD. Las contraseñas o secretos guardados en el historial de comandos también deben tratarse como potencialmente expuestos.
OPSSHIELD no recomendó reconstruir todos los sistemas como respuesta rutinaria. La empresa planteó una evaluación caso por caso y una reconstrucción desde una copia de seguridad limpia para los servidores en los que se confirmara que el atacante había iniciado sesión manualmente.