encrypted-archivenpm
Malicious code in encrypted-archive (npm) Remove it immediately and rotate any exposed credentials.
What this malware does
On npm install, the package executes a preinstall hook (package.json "preinstall": "node index.js || true") that runs index.js, which performs a DNS resolution and HTTPS GET to a hardcoded interactsh/oast.me subdomain (d8hjn6ap4rnta9vj5ve0jk11seb4k3kci.oast.me). Each install leaks the resolver IP, public egress IP, hostname-derived identifier, and install timestamp to a third-party out-of-band interaction server. The package's own metadata states it is a dependency-confusion proof-of-concept squatting an internal Ubiquiti namespace; any build system that resolves this name from the public registry instead of the intended private registry will silently run the beacon. Regardless of the author's stated research intent, the install-time network I/O to an attacker-controlled OOB host is the canonical dependency-confusion exploitation primitive and exfiltrates installer-side network/identity data.
The OpenSSF Package Analysis project identified 'encrypted-archive' @ 99.0.0 (npm) as malicious.
It is considered malicious because:
- The package communicates with a domain associated with malicious activity.
Malicious versions
Indicators of compromise (SHA-256)
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
- OpenSSF: Package Analysis · finder
Scan your dependencies
O3 Security blocks malicious packages like this at install time and in CI.
Supply-chain protection