OpenSSF/OSV advisory MAL-2026-12122 confirms this npm version as malicious. The package's postinstall.js lifecycle script runs on `npm install` and collects installer-side secrets: it enumerates a hardcoded list of credential-shaped environment variables (NPM_TOKEN, NODE_AUTH_TOKEN, GITHUB_TOKEN, AWS_*, MNEMONIC, SEED_PHRASE, ETHEREUM_PRIVATE_KEY, and other API keys), reads ~/.ssh, ~/.npmrc, and ~/.gitconfig, probes Chrome/Firefox profiles and cryptocurrency wallet directories...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in @zzzgenesis00/near-api (npm)
Details
The package's postinstall.js lifecycle script runs on `npm install` and collects installer-side secrets: it enumerates a hardcoded list of credential-shaped environment variables (NPM_TOKEN, NODE_AUTH_TOKEN, GITHUB_TOKEN, AWS_*, MNEMONIC, SEED_PHRASE, ETHEREUM_PRIVATE_KEY, and other API keys), reads ~/.ssh, ~/.npmrc, and ~/.gitconfig, probes Chrome/Firefox profiles and cryptocurrency wallet directories (.metamask,.exodus,.electrum,.ethereum,.solana), and runs `npm whoami` and `git config`. The collected bundle is POSTed to two hardcoded attacker-controlled destinations: api.telegram.org via a hardcoded bot token and chat_id, and a Serveo reverse-tunnel host at 40f955f39128bd79-178-249-214-24.serveousercontent.com/collect. Execution is deferred with `setTimeout(1500 + Math.random()*2000)` and errors are swallowed; variable names are obfuscated (_jag, _jui, _tk, _ch) and the script is labeled 'postinstall environment verification' as cover. `module.exports = require('./index.js')` provides passthrough so consumers see near-api-like behavior. The package name typosquats NEAR Protocol's official near-api package.
Decision reason
OpenSSF Malicious Packages via OSV confirms @zzzgenesis00/near-api@3.0.1 as malicious (MAL-2026-12122): Malicious code in @zzzgenesis00/near-api (npm)