defi-tools-39npm
Malicious code in defi-tools-39 (npm) Remove it immediately and rotate any exposed credentials.
What this malware does
Crypto/SSH/wallet stealer, blockchain-helper-0 campaign sibling (c960+), byte-identical to swap-sdk-87. postinstall auto-execs, src/index.js harvests ~/.ssh keys + Sol/Eth/BTC/Tron/Sui/Aptos wallets + .env + seeds, self-labels "CRYPTO STEALER", exfils to SAME Telegram bot 8227918239 chat 6433587894 (not rotated).
On npm install, the postinstall hook requires src/index.js, which enumerates a hardcoded list of crypto wallet files, SSH private keys, and environment/mnemonic files in the user's home and current working directory (including ~/.ssh/id_rsa, ~/.config/solana/id.json, .env, and seed/mnemonic files for Solana, Ethereum, Bitcoin, Tron, Sui, and Aptos). The collected file contents are POSTed to api.telegram.org using a hardcoded bot token (8227918239:AAGE...) and chat ID (6433587894). The payload self-identifies as <b>CRYPTO STEALER</b> in the Telegram message body. Execution is gated by an isTestEnvironment() check at src/index.js:11-26 that suppresses the payload in CI, GitHub Actions, Jenkins, Docker, and sandbox-shaped hostnames/usernames — analysis-evasion to keep the stealer dormant during scanning and active on developer workstations. The package ships no legitimate functionality; the generic name defi-tools-39 with a bland 'Cryptocurrency wallet management toolkit' description targets developers searching for DeFi/wallet tooling — the cohort most likely to have on-disk wallet keypairs.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Credential / info stealerFind it
Scan your lockfiles (package-lock.json, pnpm-lock.yaml, yarn.lock, requirements.txt, poetry.lock, etc.) and build artifacts for defi-tools-39 (version 4.26.29). O3 Security's supply-chain scanner checks every dependency against known-malicious package intelligence at install time and in CI, flagging defi-tools-39 across your stack and pipelines.
If you installed it — respond
defi-tools-39 is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.
Did it already run?
If defi-tools-39 was ever installed, its post-install/runtime payload may have already executed. O3's L7 egress monitoring and runtime eBPF sensors detect the credential exfiltration or command-and-control callback after install and block the malicious outbound channel, so you catch and contain the actual compromise — not just the presence of the package.
How O3 protects you
O3 blocks defi-tools-39 before install through its supply-chain scanner, and if it has already run, detects and severs the exfiltration or C2 callback at runtime through L7 egress monitoring and eBPF.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
- SafeDep · finder
Detect & block this
O3 blocks defi-tools-39-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.