-= Per source details. Do not edit below this line.=-
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.
{
"malicious-packages-origins": [
{
"import_time": "2026-09-04T04:21:20.925669987Z",
"id": "IN-MAL-2026-019452",
"versions": [
"1.0.0"
],
"source": "amazon-inspector",
"modified_time": "2026-09-04T03:45:45Z",
"sha256": "d43ed7789fb269c2613ce7b2442fdceab1b5e8b5360048d7bda2a63f0e9fac63"
}
]
}"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/easypanel-docker/MAL-2026-15899.json"
{
"evidence_files": [
{
"path": "preinstall.js",
"tlsh": "8d1127b0d170527d057161c0646a46a29277dfd130e2c9c0683e66415fd26921bb3cfd",
"sha256": "c9abbf9a3719f952b8a33459c176665af9f0409ed84835af6e41ec604676dde2"
}
],
"package_integrity": [
{
"filename": "easypanel-docker-1.0.0.tgz",
"hashes": {
"sha512_sri": "sha512-qq6K5Xm+LU3br203TREo4gLbHCSl+J1USJNXJSIAudC/OxCURzt4fsJowhML/mJgLTOyD3p9+aL4iaQldJJtqw==",
"sha1": "e9d14c6f77e756140da0feb216952a64b17072c1"
}
}
]
}
[
{
"description": "The product contains code that appears to be malicious in nature.",
"cweId": "CWE-506",
"name": "Embedded Malicious Code"
}
]