MAL-2026-3762 Malicious code in exxpress-tool (npm)
Malicious package
Published
MAL-2026-3762 is a malicious package: exxpress-tool (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-3762/ (Markdown: https://insights.sbomify.com/MAL-2026-3762/index.md)
- Package
- exxpress-tool
- Registry
- npm
What is MAL-2026-3762?
MAL-2026-3762 is a malicious package in exxpress-tool, published on 14 May 2026.
Official description
The package name
exxpress-tool is a one-character edit of the widely-used express package. On npm install, the declared scripts.postinstall runs postinstall.js, which reads ~/.npmrc (extracting _authToken and npm_[A-Za-z0-9]{36} tokens), ~/.git-credentials, and ~/.env (matching env-var names against token/secret/password/api/aws/azure/gcp/stripe/slack patterns and EVM private-key shapes), bundles the results together with os.hostname() and os.userInfo(), and POSTs the JSON to the hardcoded bare-IP endpoint http://149.28.127.35:8888 over plain HTTP. The same script iterates a hardcoded list of ~71 Chrome/Brave/Edge crypto-wallet extension IDs (MetaMask, Phantom, Coinbase Wallet, Trust, Exodus, Ledger Live, Trezor, etc.), reads each wallet's Local Extension Settings LevelDB .log files, and regex-matches on vault, mnemonic, seed, privateKey, encrypted. It also recursively walks ~/Documents, ~/Desktop, ~/Downloads, ~/OneDrive, ~/Dropbox, and ~/Google Drive searching for BIP-39 seed phrases and 0x-prefixed private keys. The advertised library code (index.js) is an empty stub; the author's own in-source comments (The real payload is in postinstall.js, Silent. Zero trace., Token harvester + Crypto wallet scanner) confirm intent. Any developer or CI environment that installs this package will have npm publish tokens, git credentials, environment secrets, and browser wallet data shipped to the attacker.What should I do about MAL-2026-3762?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.