UNC1069 La ingeniería social del mantenedor de Axios provocó un ataque a la cadena de suministro de npm – CYBERDEFENSA.MX

El responsable del paquete Axios npm ha confirmado que el compromiso de la cadena de suministro fue el resultado de una campaña de ingeniería social muy específica orquestada por actores de amenazas norcoreanos rastreados como UNC1069.

mantenedor Jason Saayman dijo que los atacantes adaptaron sus esfuerzos de ingeniería social «específicamente a mí», acercándose primero a él bajo la apariencia del fundador de una empresa legítima y conocida.

«Habían clonado la imagen de los fundadores de la empresa y la propia empresa», Saayman dicho en una autopsia del incidente. «Luego me invitaron a un espacio de trabajo real de Slack. Este espacio de trabajo tenía la marca del CI de la empresa y un nombre plausible. [workspace] fue pensado muy bien; Tenían canales donde compartían publicaciones de LinkedIn».

Ciberseguridad

Posteriormente, se dice que los actores de amenazas programaron una reunión con él en Microsoft Teams. Al unirse a la llamada falsa, se le presentó un mensaje de error falso que decía «algo en mi sistema no estaba actualizado». Tan pronto como se activó la actualización, el ataque provocó la implementación de un troyano de acceso remoto.

El acceso proporcionado por el troyano permitió a los atacantes robar las credenciales de la cuenta npm necesarias para publicar dos versiones troyanizadas del paquete Axios npm (1.14.1 y 0.30.4) que contiene un implante llamado WAVESHAPER.V2.

«Todo estuvo muy bien coordinado, parecía legítimo y se hizo de manera profesional», añadió Saayman.

La cadena de ataque descrita por el responsable del proyecto comparte amplias superposiciones con las técnicas asociadas con UNC1069 y BlueNoroff. Los detalles de la campaña fueron documentados extensamente por Huntress y Kaspersky el año pasado, y este último la rastreó bajo el nombre de GhostCall.

«Históricamente, […] Estos tipos específicos han perseguido a los fundadores de criptomonedas, capitalistas de riesgo y personas públicas», dijo el investigador de seguridad Taylor Monahan. «Ellos ingeniero social ellos y hacerse cargo de sus cuentas y apuntar a la siguiente ronda de personas. Esta evolución hacia la focalización [OSS maintainers] es un poco preocupante en mi opinión.»

Como medidas preventivas, Saayman ha descrito varios cambios, incluido el restablecimiento de todos los dispositivos y credenciales, la configuración de versiones inmutables, la adopción del flujo OIDC para la publicación y la actualización de GitHub Actions para adoptar las mejores prácticas.

Los hallazgos demuestran cómo los mantenedores de proyectos de código abierto se están convirtiendo cada vez más en el objetivo de ataques sofisticados, lo que permite de manera efectiva que los actores de amenazas apunten a usuarios intermedios a gran escala mediante la publicación de versiones envenenadas de paquetes muy populares.

Ciberseguridad

Dado que Axios atrae casi 100 millones de descargas semanales y se utiliza mucho en todo el ecosistema de JavaScript, el radio de explosión de un ataque de este tipo a la cadena de suministro puede ser enorme, ya que se propaga rápidamente a través de dependencias directas y transitivas.

«Un paquete tan ampliamente utilizado como Axios que está comprometido muestra lo difícil que es razonar sobre la exposición en un entorno JavaScript moderno», Ahmad Nassri de Socket dicho. «Es una propiedad de cómo funciona hoy la resolución de dependencias en el ecosistema».

Google atribuye el ataque a la cadena de suministro de Axios npm al grupo norcoreano UNC1069 – CYBERDEFENSA.MX

Google tiene atribuido formalmente el compromiso de la cadena de suministro del popular paquete Axios npm con un grupo de actividades de amenazas de Corea del Norte con motivación financiera rastreado como UNC1069.

«Hemos atribuido el ataque a un presunto actor de amenazas norcoreano al que rastreamos como UNC1069», dijo John Hultquist, analista jefe de Google Threat Intelligence Group (GTIG), a The Hacker News en un comunicado.

«Los piratas informáticos norcoreanos tienen una profunda experiencia con ataques a la cadena de suministro, que históricamente han utilizado para robar criptomonedas. La magnitud total de este incidente aún no está clara, pero dada la popularidad del paquete comprometido, esperamos que tenga impactos de gran alcance».

El desarrollo se produce después de que los actores de amenazas tomaron el control de la cuenta npm del mantenedor del paquete para impulsar dos versiones troyanizadas 1.14.1 y 0.30.4 que introdujeron una dependencia maliciosa llamada «plain-crypto-js» que se utiliza para ofrecer una puerta trasera multiplataforma capaz de infectar sistemas Windows, macOS y Linux.

Ciberseguridad

En lugar de introducir cambios de código en Axios, el ataque aprovecha un enlace posterior a la instalación dentro del archivo «package.json» de la dependencia maliciosa para lograr una ejecución sigilosa. Una vez instalado el paquete Axios comprometido, npm activa automáticamente la ejecución de código malicioso en segundo plano.

Específicamente, el paquete «plain-crypto-js» funciona como un «vehículo de entrega de carga útil» para un cuentagotas de JavaScript ofuscado denominado SILKBELL («setup.js»), que recupera la siguiente etapa apropiada de un servidor remoto basado en el sistema operativo de la víctima.

Como detalló anteriormente The Hacker News, la rama de ejecución de Windows ofrece malware PowerShell, un binario C++ Mach-O para macOS y una puerta trasera Python para sistemas Linux. El cuentagotas también realiza una limpieza para eliminarse y reemplazar el archivo «package.json» del paquete «plain-crypto-js» con una versión limpia que no tiene el enlace postinstalación.

Fuente de la imagen: Laboratorios de seguridad elástica

Se considera que la puerta trasera, con nombre en código WAVESHAPER.V2, es una versión actualizada de WAVESHAPER, una puerta trasera C++ implementada por UNC1069 en ataques dirigidos al sector de las criptomonedas. El actor de amenazas ha estado operativo desde 2018. Los vínculos del ataque a la cadena de suministro con UNC1069 fueron señalados por primera vez por Elastic Security Labs, citando superposiciones de funcionalidad.

Las tres variantes de WAVESHAPER.V2 admiten cuatro comandos diferentes, mientras se dirigen al servidor de comando y control (C2) en intervalos de 60 segundos:

  • matarpara finalizar el proceso de ejecución del malware.
  • correrpara enumerar listados de directorios, junto con rutas de archivos, tamaños y marcas de tiempo de creación/modificación.
  • ejecutar scriptpara ejecutar AppleScript, PowerShell o comandos de shell según el sistema operativo.
  • inyectarpara decodificar y ejecutar binarios arbitrarios.

«WAVESHAPER.V2 es una evolución directa de WAVESHAPER, una puerta trasera para macOS y Linux anteriormente atribuida a UNC1069», dijeron Mandiant y GTIG. «Mientras que el WAVESHAPER original utiliza un protocolo C2 binario ligero y sin formato y emplea empaquetado de código, WAVESHAPER.V2 se comunica mediante JSON, recopila información adicional del sistema y admite más comandos de puerta trasera».

Ciberseguridad

«A pesar de estas actualizaciones, ambas versiones aceptan su URL C2 dinámicamente a través de argumentos de línea de comandos, comparten comportamientos de sondeo C2 idénticos y una cadena de agente de usuario poco común, e implementan cargas útiles secundarias en directorios temporales idénticos (por ejemplo, /Library/Caches/com.apple.act.mond)».

A mitigar la amenazase recomienda a los usuarios que auditen los árboles de dependencia para detectar versiones comprometidas (y bajen a una versión segura, si la encuentran), fijen Axios a una versión segura conocida en el archivo «package-lock.json» para evitar actualizaciones accidentales, verifiquen la presencia de «plain-crypto-js» en «node_modules», finalicen procesos maliciosos, bloqueen el dominio C2 («sfrclak»).[.]com», dirección IP: 142.11.206[.]73), aislar los sistemas afectados y rotar todas las credenciales.

«El ataque a Axios debe entenderse como una plantilla, no como un evento único. El nivel de sofisticación operativa documentado aquí, incluidas las credenciales de mantenimiento comprometidas, las cargas útiles preestablecidas creadas para tres sistemas operativos, ambas ramas de lanzamiento alcanzadas en menos de 40 minutos y la autodestrucción forense incorporada, reflejan un actor de amenazas que planeó esto como una operación escalable», dijo el arquitecto jefe de software de ReversingLabs, Tomislav Peričin, a The Hacker News.

«Si esta campaña aparece ahora en PyPI y NuGet, eso es consistente con lo que la mecánica de ataque ya sugiere: el objetivo era alcanzar el máximo alcance para los desarrolladores. Las organizaciones necesitan auditar no sólo sus dependencias npm, sino también cada administrador de paquetes que alimenta sus canales de compilación, y tratar cualquier secreto expuesto en los entornos afectados como comprometido, independientemente del registro que tocaron».

El ataque a la herramienta de desarrollo de software axios amenaza con compromisos generalizados

Un hacker entregó brevemente malware esta semana a través de un popular proyecto de código abierto para desarrolladores de software que tiene aproximadamente 100 millones de descargas semanales, lo que aumenta la posibilidad de que los compromisos se propaguen ampliamente a través de un ataque a la cadena de suministro.

Axios es una biblioteca cliente de JavaScript que se utiliza en solicitudes web. El atacante desconocido secuestró la cuenta npm (npm es un administrador de paquetes para JavaScript) del principal mantenedor de axios y luego publicó versiones maliciosas de axios con troyanos de acceso remoto en npm. Eso sucedió el domingo por la noche hasta el lunes por la mañana, empresa de ciberseguridad. Cazadora dijo, antes de que se sacaran las versiones envenenadas.

Aikidootra empresa de seguridad, lo calificó como «uno de los ataques a la cadena de suministro de npm más impactantes jamás registrados». Los investigadores de un gran número de empresas cibernéticas han hecho sonar las alarmas sobre el ataque, entre ellas Paso de seguridad, Enchufe, Laboratorios Endor y otros.

Según Step Security, las versiones maliciosas “axios@1.14.1” y “axios@0.30.4” inyectan una nueva dependencia de software, Plain-crypto-js@4.2.1, que actúa como cargador del malware. Está dirigido a dispositivos MacOS, Windows y Linux.

Pero, aunque los investigadores lo describen como malware, señalan que «no hay líneas de código malicioso dentro del propio axios». Más bien, el software simplemente funciona según lo diseñado o rediseñado.

“Ambas versiones envenenadas inyectan una dependencia falsa… nunca importada a ninguna parte de la fuente de axios, cuyo único propósito es ejecutar un [post installation] script que implementa un troyano de acceso remoto multiplataforma”, escribió Ashish Kurmi, director de tecnología y fundador de Step Security.

Feross Aboukhadijeh, director ejecutivo y fundador de Socket, calificó la situación como “un compromiso vivo” con un amplio radio potencial de explosión.

«Este es un software malicioso instalador de la cadena de suministro de libros de texto», Aboukhadijeh escribió el lunes X por la nochey agrega sobre las versiones maliciosas que «Cada instalación de npm que extrae la última versión está potencialmente comprometida en este momento».

El paquete de software introducido por las versiones maliciosas de axios tiene cargas útiles integradas que evaden los métodos estáticos de análisis de ciberseguridad y confunden a los revisores humanos, y elimina y cambia el nombre de los artefactos para destruir la evidencia forense.

Aboukhadijeh dio consejos contundentes a cualquiera que haya descargado o usado axios al menos durante la semana pasada.

«Si usa axios, fije su versión inmediatamente y audite sus archivos de bloqueo», escribió. «No actualice».

Kurmi describió el ataque como de “precisión”, y señaló que la dependencia maliciosa se realizó con menos de 24 horas de anticipación y que ambas versiones maliciosas fueron envenenadas en la misma hora.

Dado el período de tiempo durante el cual las versiones maliciosas de axios estuvieron en línea, eso podría traducirse en aproximadamente 600.000 descargas, dijo Joshua Wright, miembro de la facultad del Instituto SANS y director técnico senior de Counter Hack Innovations.

«Esa es una gran cantidad de compromisos, y tan pronto como se instala el software, se eliminan las credenciales de acceso, por lo que ahora los actores de amenazas podrían recurrir a AWS y a otros paquetes de GitHub a través de claves de GitHub eliminadas, y esa es la parte que es realmente difícil de articular», dijo a CyberScoop, advirtiendo que las consecuencias podrían extenderse durante semanas. «Vamos a ver más y más historias sobre personas que se dan cuenta de que han sido violadas, ya que hoy están tratando de descubrir cuál es el impacto de eso».

El ataque sigue de cerca a otros casos de segmentación orientada al desarrollador.

Escrito por Tim Starks y Derek B. Johnson

El ataque a la cadena de suministro de Axios impulsa RAT multiplataforma a través de una cuenta npm comprometida – CYBERDEFENSA.MX

El popular cliente HTTP conocido como axios ha sufrido un ataque a la cadena de suministro después de que dos versiones recientemente publicadas del paquete npm introdujeran una dependencia maliciosa.

Se ha descubierto que las versiones 1.14.1 y 0.30.4 de Axios inyectan «cripto-js simple» versión 4.2.1 como una dependencia falsa.

Según StepSecurity, las dos versiones fueron publicado utilizando las credenciales npm comprometidas del mantenedor principal de Axios («jasonsaayman»), lo que permite a los atacantes eludir la canalización CI/CD de GitHub Actions del proyecto.

«Su único propósito es ejecutar un script posterior a la instalación que actúa como un gotero de troyano de acceso remoto (RAT) multiplataforma, dirigido a macOS, Windows y Linux», dijo el investigador de seguridad Ashish Kurmi. dicho. «El dropper contacta con un servidor de comando y control en vivo y entrega cargas útiles de segunda etapa específicas de la plataforma. Después de la ejecución, el malware se elimina y reemplaza su propio paquete.json con una versión limpia para evadir la detección forense».

Los usuarios que tengan instaladas las versiones 1.14.1 o 0.30.4 de Axios deben rotar sus secretos y credenciales con efecto inmediato y bajar a una versión segura (1.14.0 o 0.30.3). Las versiones maliciosas, así como «plain-crypto-js», ya no están disponibles para descargar desde npm.

Con más de 83 millones de descargas semanales, Axios es uno de los clientes HTTP más utilizados en el ecosistema JavaScript en marcos frontend, servicios backend y aplicaciones empresariales.

Ciberseguridad

«Esto no fue oportunista», añadió Kurmi. «La dependencia maliciosa se organizó con 18 horas de anticipación. Se preconstruyeron tres cargas útiles separadas para tres sistemas operativos. Ambas ramas de lanzamiento fueron atacadas en 39 minutos. Cada rastro fue diseñado para autodestruirse».

La cronología del ataque es la siguiente:

  • 30 de marzo de 2026, 05:57 UTC: se publica una versión limpia del paquete «plain-crypto-js@4.2.0».
  • 30 de marzo de 2026, 23:59 UTC: se publica una nueva versión («plain-crypto-js@4.2.1») con la carga útil agregada.
  • 31 de marzo de 2026, 00:21 UTC: se publica una nueva versión de Axios («axios@1.14.1») que inyecta «plain-crypto-js@4.2.1» como una dependencia de tiempo de ejecución utilizando la cuenta comprometida «jasonsaayman».
  • 31 de marzo de 2026, 01:00 UTC: se publica una nueva versión de Axios («axios@0.30.4») que inyecta «plain-crypto-js@4.2.1» como una dependencia de tiempo de ejecución utilizando la cuenta comprometida «jasonsaayman».

Según StepSecurity, se dice que el actor de amenazas detrás de la campaña comprometió la cuenta npm de «jasonsaayman» y cambió su dirección de correo electrónico registrada a una dirección de Proton Mail bajo su control («ifstap@proton.me»). El «plain-crypto-js» fue publicado por un usuario de npm llamado «nrwise» con la dirección de correo electrónico «nrwise@proton.me».

Se cree que el atacante obtuvo un token de acceso npm clásico de larga duración para que la cuenta tomara el control y publicara directamente versiones envenenadas de Axios en el registro.

El malware incrustado, por su parte, se lanza a través de un dropper ofuscado de Node.js («setup.js») y está diseñado para ramificarse en una de las tres rutas de ataque basadas en el sistema operativo:

  • En macOS, ejecuta una carga útil AppleScript para recuperar un binario troyano de un servidor externo («sfrclak.com:8000»), guardarlo como «/Library/Caches/com.apple.act.mond», cambiar sus permisos para hacerlo ejecutable y ejecutarlo en segundo plano a través de /bin/zsh. El archivo AppleScript se elimina después de la ejecución para cubrir las pistas.
  • En Windows, localiza la ruta binaria de PowerShell, la copia en «%PROGRAMDATA%\wt.exe» (disfrazándola de la aplicación Terminal de Windows), escribe un script de Visual Basic (VBScript) en el directorio temporal y lo ejecuta. VBScript se pone en contacto con el mismo servidor para buscar un script PowerShell RAT y ejecutarlo. El archivo descargado se elimina.
  • En otras plataformas (por ejemplo, Linux), el dropper ejecuta un comando de shell a través de execSync de Node.js para recuperar un script Python RAT del mismo servidor y guardarlo en «/tmp/ld.py,» y ejecútelo en segundo plano usando el comando nohup.

«Cada plataforma envía un cuerpo POST distinto a la misma URL C2: paquetes.npm.org/product0 (macOS), paquetes.npm.org/product1 (Windows), paquetes.npm.org/product2 (Linux)», dijo StepSecurity. «Esto permite que el servidor C2 proporcione una carga útil apropiada para la plataforma en respuesta a un único punto final».

El binario de segunda etapa descargado para macOS es un RAT C++ que toma huellas digitales del sistema y envía señales a un servidor remoto cada 60 segundos para recuperar comandos para su posterior ejecución. Admite capacidades para ejecutar cargas útiles adicionales, ejecutar comandos de shell, enumerar el sistema de archivos y finalizar la RAT.

Una vez que se inicia la carga útil principal, el malware Node.js también toma medidas para realizar tres pasos de limpieza forense: eliminando el script postinstalación del directorio del paquete instalado, eliminando el «package.json», que hace referencia al gancho postinstalación para iniciar el cuentagotas, y cambiando el nombre de «package.md» a «package.json».

Vale la pena señalar que el archivo «package.md» está incluido en «plain-crypto-js» y es un manifiesto «package.json» limpio sin el gancho postinstalación que desencadena todo el ataque. Al cambiar los manifiestos del paquete, la idea es evitar generar señales de alerta durante la inspección posterior a la infección del paquete.

Ciberseguridad

«Ninguna versión maliciosa contiene una sola línea de código malicioso dentro del propio Axios», dijo StepSecurity. «En cambio, ambos inyectan una dependencia falsa, Plain-crypto-js@4.2.1, un paquete que nunca se importa a ninguna parte del código fuente de Axios, cuyo único propósito es ejecutar un script posterior a la instalación que implementa un troyano de acceso remoto multiplataforma (RAT)».

Se recomienda a los usuarios que realicen las siguientes acciones para determinar el compromiso:

  • Busque las versiones maliciosas de Axios.
  • Compruebe si hay artefactos RAT: «/Library/Caches/com.apple.act.mond» (macOS), «%PROGRAMDATA%\wt.exe» (Windows) y «/tmp/ld.py» (Linux).
  • Cambie a las versiones 1.14.0 o 0.30.3 de Axios.
  • Elimine «plain-crypto-js» del directorio «node_modules».
  • Si se detectan artefactos RAT, asuma un compromiso y rote todas las credenciales en el sistema.
  • Audite las canalizaciones de CI/CD en busca de ejecuciones que instalaron las versiones afectadas.
  • Bloquear el tráfico de salida al dominio de comando y control («sfrclak[.]es»)

Socket, en su propio análisis del ataque, dijo que identificó dos paquetes adicionales que distribuyen el mismo malware a través de dependencias proporcionadas:

En el caso de «@shadanai/openclaw», el paquete malicioso «plain-crypto-js» está incrustado en lo profundo de una ruta proporcionada. Por otro lado, «@qqbrowser/openclaw-qbot@0.0.130» incluye un «axios@1.14.1» manipulado en sus node_modules.

«El axios real tiene sólo tres dependencias (follow-redirects, form-data, proxy-from-env)», la empresa de seguridad de la cadena de suministro dicho. «La adición de Plain-crypto-js es una manipulación inequívoca. Cuando npm procesa este axios suministrado, instala Plain-crypto-js y activa la misma cadena de postinstalación maliciosa».