Investigamos las trampas que engañaron incluso a los expertos más precavidos.

La campaña norcoreana Contagious Interview se extendió mucho más allá de las plataformas habituales y empezó a ocultar paquetes maliciosos en varios ecosistemas de desarrollo. Bajo la apariencia de bibliotecas inocuas para registro, licencias y depuración, los atacantes distribuían cargadores que, de forma sigilosa, descargaban código malicioso adicional. La nueva oleada muestra que el ataque se ha vuelto más amplio, más sofisticado y más peligroso para los desarrolladores que antes.
La empresa Socket informó que atribuyó a Contagious Interview más de 1700 paquetes maliciosos, y que el nuevo clúster afectó a npm, PyPI, Go Modules, crates.io y Packagist. Los operadores utilizaron los alias golangorg, aokisasakidev, aokisasakidev1, maxcointech1010 y maxcointech0000, y los paquetes se hacían pasar por herramientas habituales para registro, trabajo con HTTP y gestión de licencias. En realidad, esas bibliotecas servían como cargadores para la segunda fase del ataque.
La mayoría de las muestras funcionaban de la misma manera. El paquete se comunicaba con una infraestructura controlada, recibía un enlace a un archivo, lo descargaba, lo descomprimía en una carpeta temporal y ejecutaba el archivo apropiado para la plataforma. En el ecosistema npm el esquema era distinto: allí paquetes maliciosos llegaban cifrados y se ejecutaban directamente en la memoria del proceso Node.js. Gracias a este enfoque, las acciones peligrosas no se ocultaban en la instalación del paquete, sino en funciones que parecían totalmente normales —por ejemplo, en métodos de registro o de búsqueda por clave.
El objetivo principal de la campaña es el robo de datos. El análisis mostró que los módulos maliciosos recopilaban credenciales, contenido de navegadores, gestores de contraseñas y billeteras de criptomonedas. Los expertos señalaron específicamente el paquete license-utils-kit para PyPI. En la versión para Windows no se trataba simplemente de un cargador, sino de una herramienta completa de acceso remoto con capacidad para ejecutar comandos, interceptar pulsaciones de teclas, recopilar archivos, extraer datos de navegadores y billeteras, y desplegar medios de conexión remota.
Socket transmitió la información sobre los paquetes encontrados a los administradores de los registros afectados y envió solicitudes para bloquear las cuentas de GitHub relacionadas. Parte del material ya fue eliminado, pero algunos paquetes maliciosos seguían accesibles en el momento de la publicación. Según la empresa, el grupo usa sistemáticamente repositorios de desarrolladores como vector de acceso inicial y traslada rápidamente el mismo conjunto de técnicas de un ecosistema a otro con cambios mínimos en el código.
El nuevo hallazgo muestra que los ataques a las cadenas de suministro cada vez más se fundamentan no en una ocultación burda, sino en detalles verosímiles. El código malicioso se oculta en paquetes que parecen utilidades habituales, y la actividad peligrosa comienza solo después de invocar una función que a primera vista parece normal. Para los desarrolladores y los equipos de seguridad, este enfoque hace que la verificación de dependencias sea una tarea aún más crítica.