Upwind: paquetes AsyncAPI npm afectados en un ataque a la cadena de suministro

Los desarrolladores suelen suponer que los paquetes publicados a través de canales oficiales han pasado por un proceso de lanzamiento seguro. Este concepto es fundamental para el desarrollo de software moderno, donde los componentes de código abierto se integran rutinariamente en las aplicaciones a través de una gestión automatizada de dependencias. Una nueva investigación sugiere que la confianza puede verse comprometida cuando los atacantes obtienen acceso a los sistemas responsables de publicar el software.
La empresa de seguridad en la nube Upwind ha publicado los resultados de una investigación sobre un ataque coordinado que afectó a varios paquetes oficiales de npm de AsyncAPI. Según la empresa, la actividad se extendió más allá de un único paquete comprometido y, en cambio, involucró múltiples repositorios y canales de lanzamiento, lo que permitió que el código malicioso se distribuyera a través de canales de lanzamiento legítimos.
La investigación descubrió múltiples puntos de compromiso
La investigación de Upwind encontró que la campaña afectó a varias partes del ecosistema AsyncAPI.
Los investigadores confirmaron que los atacantes comprometieron dos repositorios de GitHub separados y luego identificaron un segundo repositorio independiente comprometido. También observaron ataques contra varias ramas de lanzamiento y uso indebido de varias identidades de publicación de OpenID Connect (OIDC) en un período de tiempo relativamente corto.
Espacio de coworking de TNW City: donde ocurre tu mejor trabajo
Un espacio de trabajo diseñado para el crecimiento, la colaboración y un sinfín de oportunidades de networking en el corazón de la tecnología.
En conjunto, estos resultados sugieren que los atacantes obtuvieron acceso a múltiples canales de publicación en lugar de explotar una única vulnerabilidad en el proceso de publicación.
La investigación concluyó que la operación representaba una campaña coordinada destinada a interrumpir el proceso de lanzamiento del software en lugar de un compromiso único del paquete.
El código malicioso llegó a través del flujo de trabajo esperado
Un aspecto de la campaña que llamó la atención de los investigadores fue cómo se ejecutaba el código malicioso después de utilizar paquetes comprometidos.
Según Upwind, los atacantes normalmente evitan las tácticas asociadas con los ataques a la cadena de suministro de NPM. En lugar de utilizar scripts previos o posteriores a la instalación, el código malicioso se ejecuta durante la importación normal del paquete o mediante rutas de ejecución alternativas.
Debido a que estas acciones ocurren como parte del comportamiento esperado de la aplicación, la actividad será más difícil de detectar utilizando herramientas de seguridad que se centran principalmente en el monitoreo de la instalación de paquetes.
Los investigadores también observaron que, si bien los métodos de propagación diferían, los atacantes reutilizaban repetidamente la misma infraestructura y patrones de malware en los repositorios y canales de publicación comprometidos.
El impacto se extiende más allá de los mantenedores de paquetes.
Los paquetes afectados se publicaron a través de canales oficiales y parecían legítimos para las organizaciones que dependían de prácticas estándar de gestión de dependencias.
Esto significa que el impacto no se limitó a los repositorios. Upwind dijo que las estaciones de trabajo de los desarrolladores y los entornos CI/CD que importaron los paquetes afectados deberían considerarse potencialmente comprometidos porque el código malicioso fue diseñado para ejecutarse durante el uso rutinario del paquete.
"Esto no fue sólo un paquete malicioso: fue una pérdida de confianza", dijo Amiram Shachar, director ejecutivo y cofundador de Upwind. "Se lanzaron varios paquetes oficiales de AsyncAPI con código de puerta trasera de repositorios y canales de lanzamiento separados, lo que demuestra que los atacantes se dirigen cada vez más al proceso de lanzamiento del software".
Los hallazgos subrayan cómo los ataques contra la distribución de software pueden afectar a los usuarios intermedios incluso cuando reciben paquetes de fuentes legítimas.
Las dependencias se revisan después del evento.
Después de la investigación, Upwind recomienda que las organizaciones revisen si las versiones de los paquetes afectados han ingresado a su entorno de desarrollo.
La empresa recomienda verificar la versión de dependencia correcta en lugar de asumir que la versión actual es segura. Recomienda fijar dependencias a versiones verificadas y revisar las actualizaciones de dependencias, los archivos de bloqueo y las listas de materiales de software (SBOM) para detectar cambios inesperados.
Las organizaciones también deben considerar las estaciones de trabajo de los desarrolladores y los ejecutores de CI/CD que hayan importado paquetes afectados como potencialmente comprometidos y rotar cualquier credencial accesible desde esos entornos.
Visibilidad en todo el ciclo de vida del desarrollo.
Upwind dice que la investigación muestra por qué monitorear el software durante todo el ciclo de vida de desarrollo es cada vez más importante. Las organizaciones necesitan visibilidad del software después de su introducción en un entorno de desarrollo, cuando los atacantes se desvían de técnicas efectivas durante la instalación y en su lugar activan código malicioso durante el comportamiento normal de la aplicación.
La agencia dijo que continúa monitoreando la campaña a medida que los ataques dirigidos a los procesos de lanzamiento de software continúan evolucionando, al tiempo que alienta a las organizaciones a fortalecer las prácticas de seguridad de la cadena de suministro de software.




