MAL-2026-12078 Malicious code in trezor-lib (npm)
- Package
- trezor-lib
- Registry
- npm
What is MAL-2026-12078?
MAL-2026-12078 is a malicious package in trezor-lib, published on 5 Aug 2026.
Official description
[email protected] is a Trezor-lookalike npm package whose index.js, on first require(), harvests installer-side secrets and posts them to a hardcoded webhook.site inbox. The require-time payload reads $HOME/.env, ~/.npmrc, ~/.aws/credentials, ~/.ssh/id_rsa, ~/.ssh/id_ed25519, ~/.ssh/id_ecdsa, ~/.config/solana/id.json, and ~/.ethereum/keystore, and enumerates dotfile directories for files matching wallet|key|secret|seed|mnemonic|keystore|private with.json/.pem extensions. The collected file contents are bundled with os.hostname() and os.userInfo().username into a JSON payload and sent via https.request to hostname webhook.site path /5c5ad6cb-62df-4ea5-9dfb-2c447920ddc4. Execution is gated behind a Date.UTC(2026,7,6) activation timestamp with an in-source comment stating the delay is to avoid npm sandbox detection windows, so pre-activation-date installs see a no-op while real installers after that date trigger the harvester. The package name typosquats Trezor while its declared purpose is a generic utility library; the traced behavior is credential and wallet-secret theft, not any legitimate library function.
The OpenSSF Package Analysis project identified 'trezor-lib' @ 1.0.0 (npm) as malicious.
It is considered malicious because:
- The package communicates with a domain associated with malicious activity.
What should I do about MAL-2026-12078?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.