Paquetes npm maliciosos eluden las defensas de scripts de instalación en tiempo de ejecución
Una campaña de malware en npm que involucra al paquete 'indexed-btree' muestra cómo los actores de amenazas eluden las defensas de la cadena de suministro ocultando código malicioso en el comportamiento normal de ejecución del paquete en lugar de en los scripts de instalación. El paquete, detectado por investigadores de Checkmarx, intenta suplantar a la biblioteca legítima 'sorted-btree' y ya ha acumulado 2 millones de descargas semanales.
La campaña también puede haber generado ganancias significativas para los atacantes, quienes, según Checkmarx, utilizan una billetera que contiene 109 ETH. Sin embargo, el informe no afirma que esos fondos provengan del robo de criptomonedas.
Elusión de las últimas medidas de seguridad
En junio de 2026, GitHub anunció una serie de medidas de seguridad para npm diseñadas para ayudar a prevenir ataques a la cadena de suministro que han sacudido repetidamente a los ecosistemas de código abierto desde finales de 2025. Una medida clave es bloquear los scripts de ciclo de vida de dependencias como 'preinstall', 'install' y 'postinstall', a menos que se aprueben explícitamente. Otras medidas impiden que npm recupere automáticamente dependencias de repositorios Git o URL remotas sin permiso.
El paquete malicioso indexed-btree sortea estas protecciones al evitar los scripts de instalación y, en su lugar, ocultar su cargador en el método BTree.prototype.set() del paquete, que se ejecuta en tiempo de ejecución cuando la aplicación lo llama con un valor de clave específico. Como resultado, la instalación parece limpia y no activa ninguno de los mecanismos de aprobación de npm v12.
El cargador de malware se esconde dentro del propio método BTree.prototype.set de la biblioteca, que es la función principal que todo usuario llamaría constantemente. Esto activa sharedLoad.min.js, que contiene la primera etapa ofuscada del malware. Esta es una forma bien construida de colarse ante las herramientas estándar de análisis de contaminación y la mayoría de los escáneres estáticos.
Una vez que el malware se ejecuta, puede recopilar detalles del sistema, incluidos arquitectura, nombre de host, CPU, memoria y tiempo de actividad, y exfiltrar la información a través de canales codificados de Slack y Telegram. El malware también consulta un contrato inteligente de Ethereum en la red de prueba Sepolia para obtener información de comando y control (C2). Utiliza el intercambio de claves X25519 para derivar una clave AES y descifrar una carga útil de segunda etapa almacenada en el contrato. Cuando los operadores deciden finalizar el ataque, el malware puede eliminar sus archivos y eliminar el activador malicioso del código del paquete para borrar sus rastros.
Los investigadores señalan que los actores de amenazas se han esforzado mucho para que el proyecto parezca legítimo, incluida la creación de un repositorio de GitHub de aspecto legítimo, la población de su historial de commits y la cuidada gestión de la cuenta del desarrollador. Checkmarx también descubrió nueve paquetes npm adicionales vinculados a la misma operación, que ahora ha eliminado de npm. Estos también alcanzaron cifras significativas de descargas:
- ordered-kv-index (448,184 descargas)
- btree-leaderboard (493,685 descargas)
- priority-slot-queue (402,860 descargas)
- btree-range-store (468,092 descargas)
- btree-core (1,951,274 descargas)
- btree-time-index (425,312 descargas)
- btree-lru-cache (372,185 descargas)
- neighbor-key-map (366,019 descargas)
- sliding-score-window (448,024 descargas)
Se aconseja a los desarrolladores que no confíen únicamente en el escaneo durante la instalación y que también empleen análisis de comportamiento en tiempo de ejecución. Quienes hayan instalado indexed-btree o cualquiera de los paquetes mencionados deben rotar todos los secretos y restaurar su entorno de desarrollo desde una copia de seguridad segura.
Construya su plan de seguridad para ataques impulsados por IA
Únase a Mikko Hyppönen y líderes de seguridad de la NFL, CHANEL y Atlassian en una cumbre digital de dos horas sobre qué cambian los ataques a velocidad de IA, qué deben dejar de hacer los defensores y cómo validar, decidir, corregir y revalidar a velocidad de máquina.
Artículos relacionados:
- Repositorios falsos de LastPass Authenticator en GitHub difunden el nuevo infostealer Rapuncel
- Amazon vincula los ataques a la cadena de suministro de Debug, Chalk NPM con hackers norcoreanos
- La campaña FakeGit utiliza 7,600 repositorios de GitHub para difundir el malware SmartLoader
- El nuevo malware Android RatHat utiliza IA para automatizar el control del dispositivo
- Hackers iraníes utilizan el malware Windows CHOSEN BRICK para espiar objetivos
Etiquetas: GitHub, Malware, npm, Paquetes, Elusión de seguridad
Bill Toulas
Artículo anterior
Publicar un comentario
Reglas de la comunidad. Debe iniciar sesión para publicar un comentario. ¿Aún no es miembro? Regístrese ahora.
También te puede gustar:



















Deja una respuesta