El 20 de septiembre de 2026, una campaña de malware en npm vinculada al paquete indexed-btree mostró cómo los atacantes pueden eludir las defensas de la cadena de suministro ocultando el código malicioso en el comportamiento normal de ejecución. Según Checkmarx, el paquete intenta hacerse pasar por la biblioteca legítima sorted-btree y ha alcanzado dos millones de descargas semanales.
indexed-btree evita los scripts de ciclo de vida como preinstall, install y postinstall, cuyo bloqueo forma parte de las medidas de seguridad anunciadas por GitHub en junio de 2026. En su lugar, incorpora el cargador en el método BTree.prototype.set(), que se ejecuta cuando una aplicación lo invoca con un valor de clave específico. Esto permite que la instalación parezca limpia y no active los mecanismos de aprobación de npm v12.
El cargador activa sharedLoad.min.js, que contiene una primera fase ofuscada del malware. Una vez ejecutado, recopila datos del sistema, como arquitectura, nombre del equipo, CPU, memoria y tiempo de actividad, y los exfiltra mediante canales de Slack y Telegram codificados en el programa. También consulta un contrato inteligente de Ethereum en la red de pruebas Sepolia para obtener información de mando y control, y utiliza un intercambio de claves X25519 para derivar una clave AES con la que descifra una segunda fase almacenada en el contrato.
Los operadores pueden eliminar los archivos del malware y retirar el activador malicioso del código del paquete para borrar sus huellas. Checkmarx señala además que la operación incluía un repositorio de GitHub con apariencia legítima, un historial de commits poblado y una cuenta de desarrollador cuidadosamente preparada.
Los investigadores identificaron otros nueve paquetes relacionados, que ya fueron retirados de npm: ordered-kv-index, btree-leaderboard, priority-slot-queue, btree-range-store, btree-core, btree-time-index, btree-lru-cache, neighbor-key-map y sliding-score-window. Sus cifras de descargas oscilaron entre 366.019 y 1.951.274.
Checkmarx recomienda combinar el análisis durante la instalación con análisis conductual en tiempo de ejecución. Los desarrolladores que hayan instalado indexed-btree o cualquiera de los paquetes relacionados deberían rotar todos los secretos y restaurar el entorno de desarrollo desde una copia de seguridad segura.
Fuente: BleepingComputer.