OpenSSF/OSV advisory MAL-2026-12086 confirms this npm version as malicious. On require of the package's main entrypoint, the module collects hostname, username, home directory, platform, cwd, and the entire process.env, base64-encodes the JSON blob, and sends it as a Telegram sendMessage HTTP GET to a hardcoded bot token with chat_id=8969499041 on api.telegram.org. A tmp flag file suppresses repeat sends. The bulk process.env dump routinely contains installer credentials (AWS_*, NPM_TOKEN,...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in @wethenorth12/bip39-mnemonic (npm)
Details
On require of the package's main entrypoint, the module collects hostname, username, home directory, platform, cwd, and the entire process.env, base64-encodes the JSON blob, and sends it as a Telegram sendMessage HTTP GET to a hardcoded bot token with chat_id=8969499041 on api.telegram.org. A tmp flag file suppresses repeat sends. The bulk process.env dump routinely contains installer credentials (AWS_*, NPM_TOKEN, GH_TOKEN, DB_PASSWORD, CI secrets), all of which are compromised on first import. The package additionally typosquats the legitimate `bip39` library: package name, description, keywords and README ("Drop-in replacement for bip39") mimic it, and the `author` field is set to `bitcoinjs-lib` to impersonate an established maintainer. When the real `bip39` is not present the package exposes a stub `generateMnemonic`/`createWallet` returning `crypto.randomBytes(32).toString('hex')` — non-standard mnemonic material that diverges from BIP-39 and would produce attacker-observable or non-recoverable wallet keys if used by downstream code.
Decision reason
OpenSSF Malicious Packages via OSV confirms @wethenorth12/bip39-mnemonic@2.3.1 as malicious (MAL-2026-12086): Malicious code in @wethenorth12/bip39-mnemonic (npm)