Los piratas inform谩ticos est谩n utilizando contratos inteligentes de Ethereum para ocultar las cargas 煤tiles de malware dentro de los paquetes NPM aparentemente benignos, una t谩ctica que convierte la cadena de bloques en un canal de comando resistente y complica los derribos.
ReversingLabs detall贸 dos paquetes NPM, colortoolsv2 y mimelib2que lee un contrato sobre Ethereum para obtener una URL para un descargador de segunda etapa en lugar de una infraestructura de codificaci贸n dura en el paquete en s铆, una opci贸n que reduce los indicadores est谩ticos y deja menos pistas en las revisiones del c贸digo fuente.
Los paquetes aparecieron en julio y fueron retirados despu茅s de la divulgaci贸n. ReversingLabs rastre贸 su promoci贸n a una red de repositorios de Github que se hizo pasar por bots comerciales, incluidos Solana-Trading-Bot-V2con estrellas falsas, antecedentes de confirmaci贸n inflados y mantenedores de calcetines, una capa social que dirigi贸 a los desarrolladores hacia la cadena de dependencia maliciosa.
Las descargas fueron bajas, pero el m茅todo importa. Seg煤n las noticias del hacker, colortoolsv2 vi siete descargas y mimelib2 Uno, que todav铆a se ajusta a la orientaci贸n de desarrolladores oportunistas. Snyk y OSV ahora enumeran ambos paquetes como maliciosos, proporcionando verificaciones r谩pidas para equipos que auditan las compilaciones hist贸ricas.
Historia que se repite a s铆 misma
El canal de comando en la cadena se hace eco de una campa帽a m谩s amplia que los investigadores rastrearon a fines de 2024 en cientos de tiposquatos de NPM. En esa ola, los paquetes ejecutaron scripts de instalaci贸n o preinstalaci贸n que consultaban un contrato de Ethereum, recuperaron una URL base y luego descargaron cargas 煤tiles espec铆ficas del sistema operativo con nombre node-win.exe
, node-linux
o node-macos
.
CheckMarx document贸 un contrato central en 0xa1b40044EBc2794f207D45143Bd82a1B86156c6b
junto con un par谩metro de billetera 0x52221c293a21D8CA7AFD01Ac6bFAC7175D590A84
con infraestructura observada en 45.125.67.172:1337
y 193.233.201.21:3001
entre otros.
La desobfuscaci贸n del filo muestra la ethers.js
llamar a getString(address)
En el mismo contrato y registra la rotaci贸n de las direcciones C2 con el tiempo, un comportamiento que convierte el estado del contrato en un puntero m贸vil para la recuperaci贸n de malware. Socket mape贸 de forma independiente la inundaci贸n para escribir un tipo de IOC, incluidos el mismo contrato y billetera, lo que confirma la consistencia de c贸digo cruzado.
Una vieja vulnerabilidad contin煤a prosperando
ReversingLabs enmarca los paquetes 2025 como una continuaci贸n en la t茅cnica en lugar de escala, con el giro de que el contrato inteligente aloja la URL para la siguiente etapa, no la carga 煤til.
El trabajo de distribuci贸n de GitHub, incluidos los falsos Stargazers y las comitales de tareas, tiene como objetivo pasar la debida diligencia casual y aprovechar las actualizaciones de dependencia automatizadas dentro de los clones de los reposadores falsos.
El plan de inversionista criptogr谩fico: Un curso de 5 d铆as sobre bagholding, internos internos y alfa faltante
El dise帽o se asemeja al uso anterior de plataformas de terceros para la indirecci贸n, por ejemplo, GitHub GIST o almacenamiento en la nube, pero el almacenamiento en la cadena agrega inmutabilidad, legibilidad p煤blica y un lugar neutral que los defensores no pueden desconectar f谩cilmente.
Seg煤n ReversingLabs, los COI concretos de estos informes incluyen los contratos de Ethereum 0x1f117a1b07c108eae05a5bccbe86922d66227e2b
Vinculado a los paquetes de julio y al contrato 2024 0xa1b40044EBc2794f207D45143Bd82a1B86156c6b
billetera 0x52221c293a21D8CA7AFD01Ac6bFAC7175D590A84
patrones de host 45.125.67.172
y 193.233.201.21
con puerto 1337 o 3001, y nombres de carga 煤til de la plataforma mencionados anteriormente.
Los hash para la segunda etapa de 2025 incluyen 021d0eef8f457eb2a9f9fb2260dd2e391f009a21
y para la onda 2024, CheckMarx enumera los valores de Windows, Linux y MacOS SHA-256. ReversingLabs tambi茅n public贸 SHA-1 para cada versi贸n maliciosa de NPM, que ayuda a los equipos a escanear tiendas de artefactos para exposici贸n pasada.
Protecci贸n contra el ataque
Para la defensa, el control inmediato es evitar que los scripts del ciclo de vida se ejecuten durante la instalaci贸n y el CI. NPM documenta el --ignore-scripts
marcar para npm ci
y npm install
y los equipos pueden establecerlo a nivel mundial .npmrc
luego, permita selectivamente las compilaciones necesarias con un paso separado.
La p谩gina Node.js Security Best Practices aconseja el mismo enfoque, junto con la fijaci贸n de versiones a trav茅s de archivos de bloqueo y una revisi贸n m谩s estricta de mantenedores y metadatos.
Bloquear el tr谩fico fuera de los COI y alertar en los registros de compilaci贸n que inicializan ethers.js
para consultar getString(address)
Proporcione detecciones pr谩cticas que se alineen con el dise帽o C2 basado en la cadena.
Los paquetes se han ido, el patr贸n permanece, y la indirecci贸n en la cadena ahora se encuentra junto a los tiposquatos y los reposadores falsos como una forma repetible de llegar a las m谩quinas de desarrolladores.
(Tagstotranslate) Ethereum