Një sulm është regjistruar ndaj përdoruesve të katalogut NPM, si pasojë e të cilit më 20 shkurt në depozitat NPM u vendosën më shumë se 15 mijë paketa, në skedarët README të të cilave ishin lidhje për në faqe phishing ose lidhje referuese për kalime për të cilat paguhen komisione. Gjatë analizës, në paketa u zbuluan 190 lidhje unike phishing ose reklamuese, që mbulonin 31 domene.
Emrat e paketeve u përzgjodhën për të tërhequr interesin e qytetarëve, p.sh., "free-tiktok-followers", "free-xbox-codes", "instagram-followers-free" etj. Kalkulimi u bë për të mbushur me paketa spamu listën e përditësimeve të fundit në faqen kryesore të NPM. Në përshkrimin e paketeve jepeshin lidhje që premtonin shpërndarje falas, dhurata, cheats për lojëra, si dhe shërbime falas për rritjen e ndjekësve dhe pëlqimeve në rrjetet sociale, si TikTok dhe Instagram. Kjo nuk është sulmi i parë i tillë, në dhjetor në katalogët NuGet, NPM dhe PyPi u regjistrua publikimi i 144 mijë paketeve spamu.

Përmbajtja e paketeve u gjenerua automatikisht duke përdorur një skrypt python, i cili duket se për shkak të moskujdesit ishte lënë në paketa dhe përfshinte kredenciale funksionale që ishin përdorur gjatë sulmit. Paketa u publikuan nën shumë llogari të ndryshme duke përdorur metoda që e komplikonin ndjekjen e gjurmëve dhe identifikimin e shpejtë të paketimeve problematike.
Përveç veprimeve mashtruese në depozitat NPM dhe PyPi gjithashtu janë identifikuar disa përpjekje për publikimin e paketeve të dëmshme:
- Në depozitat e PyPI janë gjetur 451 paketa të dëmshëm, të cilat maskoheshin si disa biblioteka të njohura përmes type-squatting (emra të ngjashëm, që ndryshojnë me simbole të veçanta, për shembull, vper në vend të vyper, bitcoinnlib në vend të bitcoinlib, ccryptofeed në vend të cryptofeed, ccxtt në vend të ccxt, cryptocommpare në vend të cryptocompare, seleium në vend të selenium, pinstaller në vend të pyinstaller etj.). Paketat përmbanin kod të obfuskatuar për të vjedhur kriptovaluta, i cili përcaktonte praninë e identifikuesve të portofolëve të kriptove në skedarin e kopjimit dhe i ndryshonte ato me portofolin e sulmuesit (bëhet fjalë se gjatë pagesës, viktima nuk do ta vërë re se numri i transferuar përmes skedarit të kopjimit ishte ndryshe). Zëvendësimi bëhej nga një shtesë e instaluar në shfletues, e cila ekzekutohej në kontekstin e çdo faqe web që shikohej.
- Në depozitat e PyPI është zbuluar një seri bibliotekash të dëmshme HTTP. Aktiviteti i dëmshëm u gjet në 41 paketa, emrat e të cilëve ishin zgjedhur duke përdorur metoda type-squatting dhe i ngjanin bibliothekave të njohura (aio5, requestst, ulrlib, urllb, libhttps, piphttps, httpxv2 etj.). Përmbajtja ishte stilizuar si bibliotekat funksionale të HTTP ose kishte kopjuar kodin e bibliotekave ekzistuese, dhe në përshkrim jepeshin pretendime për përfitimet dhe krahasime me bibliotekat legjitime të HTTP. Aktiviteti i dëmshëm përfshinte ose shkarkimin e softuerit të dëmshëm në sistem, ose grumbullimin dhe dërgimin e të dhënave të ndjeshme.
- Në NPM janë zbuluar 16 paketa JavaScript (speedte*, trova*, lagra), të cilat, përveç funksionalitetit të deklaruar (testimi i kapacitetit), gjithashtu përmbanin kod për minimin e kriptovalutave pa dijeninë e përdoruesit.
- Në NPM janë zbuluar 691 paketa të dëmshme. Pjesa më e madhe e paketave problematike pretendonte të ishte projekte të Yandex (yandex-logger-sentry, yandex-logger-qloud, yandex-sendsms etj.) dhe përmbante kod për të dërguar informacionin e ndjeshëm në jashtë. serverëtMendohet se ata që kanë vendosur paketat përpiqeshin të siguronin nënzëvendësimin e varësisë së tyre gjatë krijimit të projekteve në Yandex (metoda e nënzëvendësimit të varësive të brendshme). Në depozitat e PyPI, të njëjtët studiues kanë gjetur 49 paketa (reqsystem, httpxfaster, aio6, gorilla2, httpsos, pohttp etj.) me kod të obfuskatuar të dëmshëm, që shkarkonte dhe ekzekutonte një skedar ekzekutiv nga jashtë. serverë.
Burimi: opennet.ru
