MAL-2026-13354 Malicious code in web3-utils-crypto (npm)
Malicious package
Published
MAL-2026-13354 is a malicious package: web3-utils-crypto (npm). Every version was published to cause harm.
Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.
Reference: https://insights.sbomify.com/MAL-2026-13354/ (Markdown: https://insights.sbomify.com/MAL-2026-13354/index.md)
- Package
- web3-utils-crypto
- Registry
- npm
What is MAL-2026-13354?
MAL-2026-13354 is a malicious package in web3-utils-crypto, published on 5 Aug 2026.
Official description
web3-utils-crypto impersonates the web3-utils library (package description: 'Drop-in replacement for web3-utils') and ships stub wallet APIs including generateMnemonic and createWallet that return non-functional random values. On require(), index.js serializes the full process.env plus os.hostname, username, homedir, platform, cwd, package name/version and timestamp, base64-encodes the payload, and sends it via HTTPS GET to https://api.telegram.org/bot<token>/sendMessage with chat_id 8969499041 (bot id 7231970337). A tmp flag file suppresses repeat sends. process.env on developer and CI machines routinely contains AWS_*, GITHUB_TOKEN, NPM_TOKEN, DB_PASSWORD and similar credentials, so any consumer that installs and loads this package leaks its full environment to the attacker-controlled Telegram chat.
What should I do about MAL-2026-13354?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.