javas-cryptonpm
Advisory published Updated
javas-crypto is a confirmed malicious npm package (MAL-2026-13347) that steals credentials and exfiltrates sensitive data (malicious version 2.0.4). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in javas-crypto (npm)
What this malware does
javas-crypto ships a postinstall hook (package.json line 11: "postinstall": "node setup.js") and a top-level autoExecute() in index.js that both enumerate the full process.env (minus a small shell-variable allowlist) and POST every captured key=value pair, along with hostname and CI job/project/commit identifiers, to an HTTP backend read from environment variables, package.json,.crypto-config.json, or.env. In the advertised CI/CD context, process.env contains credentials such as AWS_SECRET_ACCESS_KEY, GITHUB_TOKEN, GITLAB_TOKEN, and registry publish tokens, all of which are transmitted in plaintext form to the configured endpoint. The exfiltration path fires automatically on npm install (via the postinstall hook) and again on any require/import of the package. Package metadata frames the behavior as a "Secure environment variable handler for GitLab CI/CD pipelines" by author "DevSecOps" with placeholder repository gitlab.com/example/js-crypto.git, and the package name javas-crypto resembles js-crypto. Function names such as SecretsHandler, sendToBackend, and formatPayload present bulk secret harvesting as a security feature. Errors during transmission are silently swallowed so the victim sees no failure.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Credential / info stealerFind it
Search your lockfiles and build artifacts for javas-crypto (version 2.0.4).
If you installed it — respond
javas-crypto is built to steal secrets, so assume every credential the build or runtime could read is compromised. Remove it from your project and lockfile, then rotate ALL exposed secrets — npm/registry tokens, cloud keys, CI/CD secrets, SSH keys, and any .env values — from a known-clean machine. Audit logs for unauthorized use of those credentials.
Did it already run?
If javas-crypto was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
Detect & block this
O3 blocks javas-crypto-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the credential exfiltration and severs the channel.