OpenSSF/OSV advisory MAL-2026-15899 confirms this npm version as malicious. The preinstall lifecycle script collects host fingerprint data (os.hostname(), os.userInfo().username, process.cwd(), and CI-related environment variable names), base64url-encodes the JSON payload, sanitizes it into DNS-safe characters, and chunks it into ≤50-character DNS labels. The encoded payload is exfiltrated to a hardcoded out-of-band host at easypanel-docker.daco3v4q6f49egu1ds1gwjnsjb88s5kcp.oob.lyomeri.com...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in easypanel-docker (npm)
Details
The preinstall lifecycle script collects host fingerprint data (os.hostname(), os.userInfo().username, process.cwd(), and CI-related environment variable names), base64url-encodes the JSON payload, sanitizes it into DNS-safe characters, and chunks it into ≤50-character DNS labels. The encoded payload is exfiltrated to a hardcoded out-of-band host at easypanel-docker.daco3v4q6f49egu1ds1gwjnsjb88s5kcp.oob.lyomeri.com via both dns.lookup() (DNS tunneling) and an http.request() GET to /npm/<payload>. This fires automatically on `npm install`. The package name mimics the popular easypanel Docker deployment tooling, and the DNS+HTTP dual-channel OOB shape matches dependency-confusion / typosquat beacon activity; an in-source comment labelling this a benign canary does not change the behavior.
Decision reason
OpenSSF Malicious Packages via OSV confirms easypanel-docker@1.0.0 as malicious (MAL-2026-15899): Malicious code in easypanel-docker (npm)