Paquete de código abierto con un millón de descargas mensuales robó credenciales de usuarios
Un paquete de software de código abierto con más de un millón de descargas mensuales fue comprometido por actores maliciosos, quienes lograron acceder a claves de firma y otra información sensible para distribuir una versión maliciosa que robaba credenciales de usuarios.
El incidente afectó a element-data, una interfaz de línea de comandos (CLI) utilizada para monitorear el rendimiento y detectar anomalías en sistemas de aprendizaje automático. Según los desarrolladores, el ataque permitió a los ciberdelincuentes publicar una versión fraudulenta del paquete, identificada como 0.23.3, en el Python Package Index (PyPI) y en cuentas de imágenes de Docker asociadas al proyecto.
¿Cómo ocurrió el ataque?
Los atacantes explotaron una vulnerabilidad en un GitHub Action creado por los desarrolladores del paquete. Mediante un pull request con código malicioso, lograron ejecutar un script en Bash dentro de la cuenta del desarrollador, lo que les permitió extraer tokens de acceso y claves de firma.
Con estos datos, los ciberdelincuentes publicaron una versión adulterada de element-data, casi idéntica a la legítima, que al ser ejecutada buscaba información sensible en los sistemas afectados. Entre los datos comprometidos se incluían:
- Perfiles de usuario
- Credenciales de almacenes de datos
- Claves de proveedores en la nube (AWS, GCP, Azure)
- Tokens de API
- Claves SSH
Respuesta y recomendaciones
Los desarrolladores de Elementary (la empresa detrás del paquete) detectaron el compromiso gracias a un reporte de un tercero y retiraron la versión maliciosa en aproximadamente tres horas. Sin embargo, la versión fraudulenta estuvo disponible durante 12 horas antes de ser eliminada por completo.

En un comunicado, los responsables del proyecto advirtieron:
«Los usuarios que instalaron la versión 0.23.3 o que descargaron y ejecutaron la imagen de Docker afectada deben asumir que cualquier credencial accesible en el entorno donde se ejecutó pudo haber sido expuesta».
Además, confirmaron que otros productos de la compañía, como Elementary Cloud y el paquete Elementary dbt, no se vieron afectados por el incidente. Como medida de seguridad, se rotaron todas las credenciales a las que el código malicioso pudo haber tenido acceso.
Impacto y lecciones aprendidas
Este caso pone de relieve los riesgos asociados a la cadena de suministro de software de código abierto, donde paquetes populares pueden convertirse en vectores de ataque si no se implementan medidas de seguridad adecuadas. Los desarrolladores recomiendan:
- Verificar siempre las versiones de los paquetes antes de instalarlos.
- Monitorear los permisos y accesos en cuentas de repositorios como GitHub.
- Utilizar herramientas de autenticación multifactor para proteger cuentas críticas.
El incidente subraya la importancia de la vigilancia continua en el ecosistema de desarrollo de software, donde incluso proyectos con millones de descargas pueden ser vulnerables a ataques sofisticados.
