Ilustración que representa un paquete npm malicioso robando información de navegadores y carteras de criptomonedas.

El ecosistema de desarrollo no es ajeno a los ataques basados en ingeniería social.
Recientemente, la firma SlowMist alertó sobre una campaña en la que un supuesto equipo Web3 de Ucrania invitaba a postulantes a ejecutar código malicioso bajo la apariencia de un reto técnico. El código, distribuido a través de un repositorio de GitHub y un paquete npm troyanizado, pone de manifiesto los riesgos crecientes de la cadena de suministro y la importancia de desconfiar de pruebas técnicas no verificadas en procesos de captación.

Detalles del ataque

El ataque comienza con una entrevista falsa donde la víctima , un desarrollador interesado en proyectos Web3, recibe instrucciones para clonar un repositorio de GitHub y ejecutar un entorno Node.js supuestamente legítimo.

Dentro del repositorio, el archivo package.json está manipulado para incluir el paquete troyanizado rtk-logger (versión 1.11.5).
Este paquete, previamente eliminado del npm oficial, es recuperado y ejecuta código ofuscado y cifrado con AES-256-CBC.

Mediante funciones eval(), el script desencripta y ejecuta nuevas cargas maliciosas que recopilan información sensible del sistema, como:

  • Bases de datos de navegadores: Chrome, Brave, Opera, Firefox.

  • Extensiones de carteras de criptomonedas: MetaMask, entre otras.

Se identificaron conexiones de comando y control (C2) para exfiltrar los datos, junto con intentos de detección antianálisis y monitorización del entorno víctima.

Riesgos principales

El mayor riesgo es el robo de tokens, credenciales y claves almacenadas en navegadores y extensiones, lo que pone en peligro fondos y privacidad de usuarios que operan con criptomonedas.

Las cadenas de suministro basadas en npm y GitHub quedan comprometidas si no se revisa el código fuente externo. Aunque el ataque requiere ejecución manual y ciertas condiciones (como ejecución local y permisos elevados), la sofisticación del camuflaje aumenta la dificultad de detección.

El ataque tiene potencial para propagarse en entornos de desarrolladores y comunidades cripto si no se comparte la alerta.

Recomendaciones

  • Reforzar la concienciación sobre ataques de ingeniería social, especialmente en procesos de contratación y pruebas técnicas.

  • Verificar siempre los orígenes de repositorios antes de clonar o ejecutar código.

  • Limitar permisos de ejecución en entornos de pruebas.

  • Aplicar políticas estrictas de lista blanca para módulos npm.

  • Monitorizar la actividad de red en busca de IoCs (URLs y hashes divulgados).

  • Implementar o actualizar soluciones EDR y mantener sistemas y herramientas de seguridad al día.

  • Limpiar y revisar periódicamente los entornos de desarrollo y operación.

Conclusión

La confianza en procesos de selección y colaboración técnica debe ir acompañada de controles y validaciones adicionales.
La creciente sofisticación de campañas que combinan ingeniería social y troyanización de dependencias subraya la necesidad de adoptar una postura proactiva y crítica ante cualquier solicitud de ejecución de código no verificado.

Más información: