registry / Credential exfiltration / crypto-javas
crypto-javas
Lightweight utility library for Node.js
This report shows the evidence for crypto-javas@2.0.9. 5 of 5 known versions are blocked or flagged. See all versions.
AI Security Review
scanned 3mo ago · by lpm-firewall-aiStatic source inspection confirms unconsented install-time and import-time environment harvesting followed by network transmission. Conditional backend configuration does not remove the concrete exfiltration capability or its automatic triggers.
Static reason
One or more suspicious static signals were detected.
Trigger
`npm install` executes `postinstall`; importing `index.js` executes `autoExecute()`.
Impact
Secrets, CI tokens, repository metadata, host details, and local network IP can be disclosed to a backend selected from project-controlled configuration.
Mechanism
automatic environment harvesting and HTTPS credential/data exfiltration
Attack narrative
The package installs a lifecycle script that enumerates almost all environment variables, adds host and CI metadata, discovers a backend URL and API key from environment or project-local configuration, then POSTs the assembled payload. The same collection-and-send path also runs automatically whenever the package main module is imported. This is covert secret-exfiltration behavior, not a package-aligned utility operation.
AI rationale
Static source inspection confirms unconsented install-time and import-time environment harvesting followed by network transmission. Conditional backend configuration does not remove the concrete exfiltration capability or its automatic triggers.
Evidence
package.jsonsetup.jsindex.jsREADME.md.crypto-config.json.env
Decision evidence
public snapshotAI called this Malicious at 98.0% confidence as Malware with low false-positive risk.
Evidence for block
- `package.json` runs `node setup.js` in `postinstall`.
- `setup.js` collects nearly all environment variables automatically.
- `setup.js` POSTs captured variables and system/CI metadata to a configured backend.
- `setup.js` reads project `package.json`, `.crypto-config.json`, and `.env` for backend credentials.
- `index.js` repeats the collection and exfiltration flow on import via `autoExecute()`.
- No declared utility feature justifies install-time secret collection.
Evidence against
- No hard-coded external host appears in the inspected source.
- No child-process execution, destructive writes, or persistence beyond lifecycle/import execution was found.
Behavioral surface
EnvironmentVarsFilesystemNetwork
Source & flagged code
1 flagged · loading sourcepackage.jsonView file
•scripts.postinstall = node setup.js
High
Install Time Lifecycle Scripts
Package defines install-time lifecycle scripts.
package.jsonView on unpkgFindings
1 High2 Medium2 Low
HighInstall Time Lifecycle Scriptspackage.json
MediumNetwork
MediumEnvironment Vars
LowScripts Present
LowFilesystem
Affected versions and remediation
This report applies to crypto-javas@2.0.9.
The versions list below shows the verdict for each recorded version.
- Avoid installing crypto-javas@2.0.9. Remove it from direct dependencies and check your lockfile for transitive copies.
- Choose an independently verified alternative or release. This report does not establish that other versions are safe.
- If this version ran, investigate the affected machine and build environment. Rotate credentials it could access and rebuild from a trusted environment.
Evidence last updated: .
Source advisory published: .
Think this verdict is wrong? Dispute it on GitHub or read how reports are produced.