Hackeri au compromis biblioteci software pentru a injecta malware care va scana și deturna tranzacții cripto.
Contul NPM (node packet manager) al dezvoltatorului „qix” a fost compromis, permițând hackerilor să publice versiuni malițioase ale pachetelor sale. Atacatorii au publicat versiuni malițioase a zeci de pachete JavaScript extrem de populare, inclusiv utilități fundamentale. Hacking-ul a avut o amploare masivă, deoarece pachetele afectate au peste 1 miliard de descărcări săptămânale combinate. Acest atac asupra lanțului de aprovizionare software vizează în mod specific ecosistemul JavaScript/Node.js.
Codul malițios a fost un „crypto-clipper” conceput pentru a fura criptomonede prin schimbarea adreselor portofelului în solicitările de rețea și deturnarea directă a tranzacțiilor cripto. A fost, de asemenea, puternic camuflat pentru a evita detectarea.
Malware-ul de furt de criptomonede are două vectori de atac. Atunci când nu se găsește nicio extensie de portofel cripto, malware-ul interceptează tot traficul de rețea prin înlocuirea funcțiilor native de solicitare fetch și HTTP ale browserului cu liste extinse de adrese de portofel deținute de atacator. Folosind o substituție sofisticată a adreselor, acesta folosește algoritmi pentru a găsi adrese de înlocuire care arată vizual similar cu cele legitime, făcând frauda aproape imposibil de observat cu ochiul liber, au declarat cercetătorii în securitate cibernetică.
Dacă este găsit un portofel cripto, malware-ul interceptează tranzacțiile înainte de semnare, iar atunci când utilizatorii inițiază tranzacții, le modifică în memorie pentru a redirecționa fondurile către adresele atacatorilor.
Atacul a vizat pachete precum „chalk”, „strip-ansi”, „color-convert” și „color-name”, care sunt blocuri de construcție de bază îngropate adânc în arborii de dependență a nenumăratelor proiecte.
Atacul a fost descoperit accidental atunci când o conductă de construcție a eșuat cu o eroare „fetch is not defined”, deoarece malware-ul a încercat să extragă date folosind funcția fetch.
„Dacă utilizați un portofel hardware, acordați atenție fiecărei tranzacții înainte de a semna și sunteți în siguranță. Dacă nu utilizați un portofel hardware, abțineți-vă de la efectuarea oricăror tranzacții on-chain deocamdată”, a sfătuit CEO-ul Ledger, Charles Guillemet.
În timp ce sarcina utilă a malware-ului vizează în mod specific criptomonede, vectorul de atac este mult mai larg. Acesta afectează orice mediu care rulează aplicații JavaScript/Node.js, cum ar fi aplicațiile web care rulează în browsere, aplicațiile desktop, aplicațiile Node.js de pe server și aplicațiile mobile care utilizează cadre JavaScript.
Așadar, o aplicație web obișnuită de afaceri ar putea include fără să știe aceste pachete malițioase, dar malware-ul s-ar activa doar atunci când utilizatorii interacționează cu criptomonede pe acel site.
Uniswap și Blockstream au fost printre primii care au reasigurat utilizatorii că sistemele lor nu sunt în pericol.