Compromiso de un paquete de código abierto muy descargado
Un paquete de código abierto con más de un millón de descargas mensuales fue comprometido tras explotar un atacante una vulnerabilidad en el flujo de trabajo de los desarrolladores. Esto permitió acceder a sus claves de firma y otra información sensible.
Distribución de una versión maliciosa
El viernes, atacantes desconocidos aprovecharon esta vulnerabilidad para publicar una nueva versión del paquete element-data. Esta herramienta, una interfaz de línea de comandos (CLI), ayuda a los usuarios a monitorizar el rendimiento y anomalías en sistemas de aprendizaje automático.
Cuando se ejecuta, la versión maliciosa 0.23.3 escaneaba los sistemas en busca de datos sensibles, incluyendo:
- Perfiles de usuario
- Credenciales de almacenes de datos
- Claves de proveedores en la nube
- Tokens de API
- Claves SSH
La versión maliciosa fue publicada tanto en el Python Package Index como en las cuentas de imágenes Docker de los desarrolladores. Fue eliminada aproximadamente 12 horas después, el sábado.
Paquetes no afectados
Los desarrolladores aclararon que Elementary Cloud, el paquete Elementary dbt y el resto de versiones de la CLI no se vieron afectados.
Recomendaciones para los usuarios
«Los usuarios que instalaron la versión 0.23.3, o que descargaron y ejecutaron la imagen Docker afectada, deben asumir que cualquier credencial accesible en el entorno donde se ejecutó podría haber sido expuesta», advirtieron los desarrolladores.
¿Qué es un ataque de cadena de suministro?
Este incidente es un ejemplo de ataque de cadena de suministro, donde los atacantes comprometen un paquete legítimo para distribuir código malicioso a los usuarios finales. Este tipo de ataques son especialmente peligrosos en entornos de código abierto, donde la confianza en los paquetes es fundamental.