Contagious Interview: Corea del Norte Infiltra el Ecosistema npm con una Cadena de Ataque de Tres Niveles

 


Una nueva ola de ciberespionaje patrocinado por el Estado ha sacudido al ecosistema de desarrollo de software. Investigadores de la firma de seguridad Socket han revelado una campaña activa y sofisticada, atribuida a actores estatales de Corea del Norte, que utiliza el registro npm para distribuir 35 paquetes maliciosos diseñados para comprometer a desarrolladores y organizaciones tecnológicas.

La operación, bautizada como Contagious Interview, no es nueva. Fue documentada por primera vez en 2023 por Unit 42 de Palo Alto Networks, pero ha evolucionado de forma alarmante. En esta última fase, los atacantes han publicado los paquetes maliciosos desde 24 cuentas diferentes, acumulando más de 4.000 descargas antes de ser detectados.

🧱 Arquitectura del Ataque: HexEval → BeaverTail → InvisibleFerret

Cada paquete malicioso contiene un cargador hex codificado llamado HexEval, que se activa al instalar el paquete. Este componente recolecta metadatos del sistema (como nombre del host, sistema operativo, arquitectura, etc.) y luego decodifica un script que descarga y ejecuta BeaverTail, un malware especializado en el robo de información.

BeaverTail, a su vez, puede desplegar una tercera etapa: InvisibleFerret, un backdoor escrito en Python que otorga control remoto completo del sistema comprometido. Esta estructura en capas —similar a una muñeca rusa— permite evadir escáneres estáticos y revisiones manuales, ya que el malware más peligroso no está presente en el paquete inicial.

🎯 Vector de Ataque: Ingeniería Social a Desarrolladores

El método de distribución es tan ingenioso como preocupante. Los atacantes se hacen pasar por reclutadores en LinkedIn, contactando a desarrolladores con ofertas laborales atractivas. Luego, envían una “prueba técnica” a través de Google Docs o GitHub, que incluye un proyecto con dependencias npm aparentemente legítimas. En realidad, estas dependencias contienen el malware.

En algunos casos, los atacantes presionan a los candidatos para que ejecuten el código fuera de entornos seguros y mientras comparten pantalla, lo que les permite observar en tiempo real si el ataque tuvo éxito.

🧪 Técnicas de Evasión y Persistencia

A diferencia de campañas anteriores, donde el malware estaba embebido directamente en los paquetes, esta nueva versión descarga las cargas útiles bajo demanda. Esto reduce la huella digital en el registro npm y dificulta la detección por parte de herramientas automatizadas.

Además, algunos paquetes incluían un keylogger multiplataforma, lo que demuestra la capacidad del grupo para adaptar sus cargas útiles según el perfil del objetivo. También se han observado técnicas como:

  • Typosquatting: uso de nombres similares a bibliotecas populares (react-plaid-sdk, vite-plugin-next-refresh, node-orm-mongoose, etc.)
  • Obfuscación avanzada: uso de codificación hexadecimal, eval encadenado y carga dinámica
  • Certificados falsos: en campañas anteriores, se firmaban binarios con entidades falsas para parecer legítimos.

🧩 Identidades y Alias del Grupo

El grupo detrás de esta campaña ha sido rastreado bajo múltiples nombres por distintas firmas de ciberseguridad:

  • CL-STA-0240
  • DeceptiveDevelopment
  • DEV#POPPER
  • Famous Chollima
  • Gwisin Gang
  • UNC5342
  • Void Dokkaebi

Esta diversidad de alias refleja tanto la complejidad de atribución como la amplitud de operaciones del grupo, que también ha estado vinculado a campañas de robo de criptomonedas y ataques a cadenas de suministro de software.

🛡️ Recomendaciones de Seguridad

Socket y otras firmas recomiendan a desarrolladores y organizaciones:

  • Evitar instalar paquetes npm de fuentes desconocidas o no verificadas
  • Revisar manualmente las dependencias de proyectos enviados por terceros
  • Ejecutar código de prueba en entornos aislados o sandbox
  • Monitorear conexiones salientes y procesos sospechosos
  • Utilizar herramientas como Socket, Snyk o npm audit para detectar anomalías

Además, se recomienda a los equipos de seguridad revisar logs de instalación de paquetes y buscar coincidencias con los nombres maliciosos identificados


https://socket.dev/blog/north-korean-contagious-interview-campaign-drops-35-new-malicious-npm-packages

Si te gusta este contenido, no olvides seguirnos en nuestras redes sociales!: