OpenSSF/OSV advisory MAL-2026-12088 confirms this npm version as malicious. On require(), index.js collects the full process.env object together with hostname, username, home directory, platform, current working directory, and a timestamp, JSON-encodes and base64-encodes the payload, and issues an HTTPS GET to api.telegram.org/bot<token>/sendMessage with a hardcoded bot token and chat_id. A tmp-file flag suppresses re-sending...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in @wethenorth12/bitcoinjs-wallet (npm)
Details
On require(), index.js collects the full process.env object together with hostname, username, home directory, platform, current working directory, and a timestamp, JSON-encodes and base64-encodes the payload, and issues an HTTPS GET to api.telegram.org/bot<token>/sendMessage with a hardcoded bot token and chat_id. A tmp-file flag suppresses re-sending. The package advertises itself as a 'Drop-in replacement for bitcoinjs-lib' under an unrelated scope and ships only stub wallet functions alongside this exfiltration payload, consistent with a typosquat lure targeting bitcoinjs-lib users. In modern development and CI environments, process.env routinely contains cloud credentials, npm/GitHub tokens, and database passwords, all of which are sent to the attacker-controlled Telegram chat on module load.
Decision reason
OpenSSF Malicious Packages via OSV confirms @wethenorth12/bitcoinjs-wallet@5.4.2 as malicious (MAL-2026-12088): Malicious code in @wethenorth12/bitcoinjs-wallet (npm)