- Zlonamjerni npm paketi colortoolsv2 i mimelib2 su preuzeli C2 URL-ove iz Ethereum pametnog ugovora kako bi izbjegli otkrivanje.
- Indirekcije na lancu omogućavaju operaterima rotiranje krajnjih tačaka bez ponovnog objavljivanja paketa; colortoolsv2 je uklonjen 7. jula prije prelaska na mimelib2.
- Koordinirani GitHub push je koristio lažne repozitorije trgovačkih botova, naduvane zvjezdice i skriptovane commitove kako bi prikrio zlonamjerne zavisnosti.
- IoC-ovi uključuju verzije paketa, SHA1 heševe i ugovor 0x1f171a1b07c108eae05a5bccbe86922d66227e2b, plus smjernice za one koji se brane.

Akteri prijetnji okrenuli su se novom triku: usmjeravanju zlonamjerne infrastrukture kroz Pametni ugovor Ethereuma za skrivanje pokazivača komandi i kontrole (C2) koriste npm paketi. Prema ReversingLabs-u, dva paketa - colortoolsv2 i mimelib2 - tiho su se obratili blockchainu kako bi preuzeli URL-ove za druge faze podataka, zaobilazeći rutinske provjere koje traže kodirane domene.
Umjesto iskorištavanja greške u samom Ethereumu, shema koristi mrežu kao javni, otporni indirektni slojNakon što je colortoolsv2 blokiran na npm-u 7. jula, operateri su se brzo prebacili na mimelib2 sa gotovo identičnom logikom, nastavljajući da se pozivaju na isti on-chain ugovor za sljedeći korak.
Od npm instalacije do pretrage na lancu: kako je zaobilazni put funkcionisao

Unutar colortoolsv2, minimalni loader (index.js) je djelovao kao dispečer koji pozvala vanjsku naredbu i preuzela njen cilj iz pametnog ugovora umjesto lokalne skripte ili statičke konfiguracije. Etherscan prikazuje ugovor na adresi 0x1f171a1b07c108eae05a5bccbe86922d66227e2b, čije su funkcije čitanja vratile URL koji se koristi za dosezanje C2 servisa.
Ovaj pokazivač na lancu je komplicirao blokiranje: branioci se nisu mogli jednostavno osloniti na pronalaženje ili stavljanje na crnu listu fiksno kodirane domene u paketu jer je aktivna krajnja tačka postojala je iza ugovora koji su kontrolisali operateriRotiranje odredišta zahtijevalo je samo ažuriranje skladišta ugovora, a ne ponovno objavljivanje npm artefakta, a sav rezultirajući blockchain promet se smatrao legitimnim.
Nakon izvršenja tokom instalacije ili izvršavanja, program za učitavanje (loader) preuzima second-stage component (SHA1 021d0eef8f457eb2a9f9fb2260dd2e39ff009a21), koji je obrađivao naknadne aktivnosti. Oponašajući ponašanje colortoolsv2, mimelib2 je ponovo koristio isti ugovor za istu svrhu sa gotovo identičnim putanjama koda.
ReversingLabs je opisao pristup kao neuobičajen u npm ekosistemu: Zlonamjerni URL-ovi su bili hostovani putem stanja pametnog ugovora, a ne na tradicionalnim web servisima koji su se često viđali u prošlim kampanjama lanca snabdijevanja (npr. pohrana u oblaku ili gist-ovi).
GitHub dim i ogledala: lažni repozitorij trgovačkih botova kao paravan

NPM paketi se nisu pojavili izolovano. Operateri su pokrenuli mrežu GitHub projekata predstavljenih kao alati za trgovanje kriptovalutama—repozitoriji kao što je solana-trading-bot-v2—a zatim ih povezali sa zlonamjernim zavisnostima. Slučajnom posmatraču, ovi repozitorijumi su izgledali „živi“, hvaleći se hiljadama commitova, višestrukim održavateljima, zvijezdama i posmatračima.
Detaljnijim pregledom otkriveno je da je veliki dio aktivnosti bio skriptiran i površan, uključujući ponavljajuću promjenu datoteka s licencama i novokreirani računi sa oskudnim sadržajem (neki su kreirani oko 10. jula sa README datotekama minimalnim kao što je "Pozdrav"). Korisnička imena koja su se pojavljivala u historiji commita - uključujući slunfuedrac, cnaovalles i pasttimerles - pojavljivala su se više puta u svim projektima u fazi obrade.
Commit-ovi su tačno pokazali gdje su paketi utkani u kodnu bazu—dodavanje colortoolsv2 i kasnijeg mimelib2 kao zavisnosti u bot.ts i odgovarajućim uvozima koji se pojavljuju u src/index.ts. Izrađeni društveni dokaz učinio je umetanje zavisnosti mnogo manje očiglednim tokom površnog pregleda.
U suštini, GitHub fasada je pojačala signale povjerenja dok je Prava odlučujuća tačka za sljedeći potez zlonamjernog softvera nalazila se na Ethereumu.Odvajanjem socijalnog inženjeringa (GitHub) od kontrole (pametni ugovor), operateri su otežali uočavanje i ometanje kampanje.
Međusobni odnosi i konkretni koraci za branitelje

ReversingLabs je objavio detaljan popis artefakata povezanih s ovom aktivnošću, zajedno s ključnom referencom na lancu koja je pokrenula drugu fazu. Sljedeće stavke se mogu koristiti za traži, blokira i provjerava izloženosti u procesima izgradnje i radnim stanicama za razvojne programere:
- npm packages: colortoolsv2 1.0.0 (SHA1 678c20775ff86b014ae8d9869ce5c41ee06b6215), 1.0.1 (1bb7b23f45ed80bce33a6b6e6bc4f99750d5a34b), 1.0.2 (db86351f938a55756061e9b1f4469ff2699e9e27)
- npm packages: mimelib2 1.0.0 (bda31e9022f5994385c26bd8a451acf0cd0b36da), 1.0.1 (c5488b605cf3e9e9ef35da407ea848cf0326fdea)
- Second stage: SHA1 021d0eef8f457eb2a9f9fb2260dd2e39ff009a21
- Pametni ugovor korišten za C2 indirekciju: 0x1f171a1b07c108eae05a5bccbe86922d66227e2b
Dodatni kontekst iz faze uklanjanja: colortoolsv2 je uklonjen iz npm-a 7. jula, nakon čega su operateri prešli na mimelib2 s istom referencom na lancu i gotovo identičnim ponašanjem programa za učitavanje.
Preporučene akcije za inženjerske i sigurnosne timove uključuju: označi pretrage na lancu koje izvršavaju instalacijske skripte; blokirati ili upozoriti na izvršavanje child_process u hook-ovima životnog ciklusa paketa; zabraniti mrežni izlaz tokom npm instalacije u CI; nametnuti liste dozvoljenih procesa za registre i održavatelje; zaključati tranzitivne verzije; i pratiti zahtjeve vezane za gore navedenu adresu ugovora.
U širem smislu, metrike popularnosti repozitorija treba tretirati kao signale koji nisu sigurnosni. Povjerenje treba da proizilazi iz koda, artefakata i mrežnih indikatora, a ne broj zvjezdica, obim commitova ili pojava mnogih "održavatelja". Nezavisna verifikacija - statička analiza, izvršavanje u sandboxu i provjere porijekla vođene SBOM-om - ostaje ključna.
Ono što se ističe u ovoj kampanji nije pojedinačna greška u Ethereumu, NPM-u ili GitHubu, već način na koji se javna infrastruktura može utkati u prikriveni lanac isporuke. Premještanje C2 otkrivanja na pametni ugovor i pranje kredibiliteta putem GitHuba, akteri su proširili tradicionalnu detekciju izvan forme. Pažljiva higijena zavisnosti i slojevite kontrole su protivteža.