ReversingLabs descobreix que els atacants van abusar dels contractes intel·ligents d'Ethereum per ocultar programari maliciós npm

Darrera actualització: 09/05/2025
  • Dos paquets npm, 'colortoolsv2' i 'mimelib2', van encaminar C2 a través d'un contracte intel·ligent d'Ethereum per evadir la detecció.
  • Els repositoris falsos de bots de trading de GitHub inflaven la confiança amb commits i comptes per etapes abans d'afegir la dependència maliciosa.
  • El mateix contracte en cadena (0x1f171a1b07c108eae05a5bccbe86922d66227e2b) subministrava URL de segona etapa.
  • Els IoC inclouen versions de paquets específiques i resums SHA1; els equips haurien de supervisar les crides inesperades de blockchain als scripts d'instal·lació.

Els contractes intel·ligents d'Ethereum amaguen programari maliciós npm

ReversingLabs ha marcat dos paquets npm que encaminava silenciosament la lògica d'instal·lació a través d'un contracte intel·ligent d'Ethereum, convertint una cadena de blocs pública en un directori encobert per a la infraestructura de comandament i control (C2). Els paquets, 'colortoolsv2' i 'mimelib2', es presentaven com a utilitats simples alhora que permetien la recuperació d'una càrrega útil de segona etapa.

En externalitzar l'adreça C2 a un contracte en cadena, els operadors van embolicar el seu trànsit en el que sembla una activitat ordinària de blockchain, un moviment que complica la detecció estàtica i basada en la reputacióEl contracte a 0x1f171a1b07c108eae05a5bccbe86922d66227e2b exposava funcions de lectura que retornaven una URL amb la qual els instal·ladors contactarien més tard.

Contractes intel·ligents d'Ethereum en npm
Article relacionat:
Els paquets npm maliciosos utilitzaven contractes intel·ligents d'Ethereum per ocultar enllaços de càrrega útil.

De carregador npm a un C2 en cadena

Com funcionava la cadena de contractes intel·ligents npm-to-Ethereum

Dins de 'colortoolsv2', una fina carregador d'index.js va invocar una ordre externa la ubicació de la qual no estava codificada localment. En comptes d'això, va consultar un contracte intel·ligent d'Ethereum per al punt final que dirigiria l'amfitrió cap a comandament i control.

Exploradors públics com Etherscan mostra el contracte exposant funcions de lectura simples que retornen una URL, utilitzant efectivament la cadena com a punter resilient a la infraestructura de l'atacant. Com que el salt final es deriva d'una crida a la cadena de blocs, els defensors no veuen un domini estàtic integrat al paquet npm.

Després del seu descobriment, 'colortoolsv2' va ser bloquejat a npm el 7 de juliolPoc després, els operadors van publicar 'mimelib2', que reutilitzava una lògica gairebé idèntica i el mateix contracte intel·ligent per oferir la segona etapa, segons l'anàlisi.

Un cop executat, el carregador va obtenir un component de segona etapa el resum del qual va ser publicat per investigadors (SHA1: 021d0eef8f457eb2a9f9fb2260dd2e39ff009a21). Aquesta indirecció permetia als atacants rotar les destinacions a voluntat editant les dades de la cadena en lloc de reempaquetar el codi.

Una jugada de credibilitat de GitHub per emmascarar dependències malicioses

Repositoris de GitHub preparats per ocultar programari maliciós npm

ReversingLabs també va rastrejar una xarxa de projectes falsos de GitHub que es presentaven com a bots de comerç de cripto, amb milers de commits, múltiples mantenidors, estrelles i observadors. Repositoris com ara 'solana-trading-bot-v2' semblaven actius, però gran part de l'activitat era un desordre automatitzat.

Molts commits van generar fitxers trivials (per exemple, edicions repetides de LICENSE), mentre que grups de comptes semblants creats al voltant del 10 de juliol no contenien gairebé cap contingut real; alguns fitxers README només deien «Hola». Els noms d'usuari com ara «slunfuedrac», «cnaovalles» i «pastimerles» apareixien amb freqüència, cosa que inflava els senyals de legitimitat.

Les diferències de codi van mostrar que la dependència maliciosa s'afegia al codi del trading-bot (per exemple, a bot.ts i importacions a src/index.ts), primer mitjançant 'colortoolsv2' i més tard mitjançant 'mimelib2'. Aquesta associació es va tornar molt menys òbvia per a un revisor casual enmig del sorollós historial de commits.

En sembrar npm i GitHub junts, els actors senyals de confiança tradicionals borrosos, fent que la dependència oculta es barregés en un projecte que semblés actiu, ben mantingut i avalat per la comunitat.

IoCs, abast i què haurien de tenir en compte els defensors

Indicadors clau vinculats a l'esquema de contractes npm i Ethereum

ReversingLabs ha publicat el següent indicadors de compromís (IOC) vinculat a aquesta campanya:

  • paquets npm: eines de colorv2 1.0.0 (SHA1 678c20775ff86b014ae8d9869ce5c41ee06b6215), 1.0.1 (1bb7b23f45ed80bce33a6b6e6bc4f99750d5a34b), 1.0.2 (db86351f938a55756061e9b1f4469ff2699e9e27)
  • paquet npm: mimelib2 1.0.0 (bda31e9022f5994385c26bd8a451acf0cd0b36da), 1.0.1 (c5488b605cf3e9e9ef35da407ea848cf0326fdea)
  • Segona etapa: SHA1 021d0eef8f457eb2a9f9fb2260dd2e39ff009a21
  • Contracte intel·ligent: 0x1f171a1b07c108eae05a5bccbe86922d66227e2b

Aquest enfocament reflecteix l'abús previ d'allotjament de confiança com ara Gists o l'emmagatzematge al núvol, però El gir a la cadena soscava les llistes de bloqueig estàtiques i comprovacions d'origen simples. La ubicació C2 es pot canviar al contracte sense tocar el paquet, i el trànsit de la cadena de blocs es pot llegir malament com a rutina en entorns criptoadjacents.

Els passos pràctics inclouen revisar la procedència de les dependències més enllà de les estrelles i els commits, monitorització de trucades RPC inesperades de blockchain durant les fases d'instal·lació/compilació, validant qualsevol URL resolta en temps d'execució i fixant versions conegudes com a vàlides amb comprovacions d'integritat. Els equips de seguretat també haurien de buscar repositoris l'activitat dels quals s'infla artificialment mitjançant commits trivials i automatitzats.

El cas mostra com Els contractes intel·ligents d'Ethereum es poden reutilitzar com a indicadors resistents per a la distribució de programari maliciós a l'ecosistema npm, mentre que l'activitat esglaonada de GitHub amaga dependències malicioses a plena vista; el coneixement d'aquestes superposicions entre la infraestructura de codi obert i la infraestructura en cadena ara és essencial per a les defenses de desenvolupadors i empreses.

Articles Relacionats: