{"id":"MAL-2026-15899","summary":"Malicious code in easypanel-docker (npm)","details":"\n---\n_-= Per source details. Do not edit below this line.=-_\n\n## Source: amazon-inspector (d43ed7789fb269c2613ce7b2442fdceab1b5e8b5360048d7bda2a63f0e9fac63)\nThe 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/\u003cpayload\u003e. 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.\n","modified":"2026-09-04T04:30:05.846237977Z","published":"2026-09-04T03:45:45Z","database_specific":{"malicious-packages-origins":[{"modified_time":"2026-09-04T03:45:45Z","sha256":"d43ed7789fb269c2613ce7b2442fdceab1b5e8b5360048d7bda2a63f0e9fac63","source":"amazon-inspector","versions":["1.0.0"],"id":"IN-MAL-2026-019452","import_time":"2026-09-04T04:21:20.925669987Z"}]},"references":[{"type":"PACKAGE","url":"https://www.npmjs.com/package/easypanel-docker/v/1.0.0"}],"affected":[{"package":{"name":"easypanel-docker","ecosystem":"npm","purl":"pkg:npm/easypanel-docker"},"versions":["1.0.0"],"database_specific":{"cwes":[{"cweId":"CWE-506","description":"The product contains code that appears to be malicious in nature.","name":"Embedded Malicious Code"}],"indicators":{"evidence_files":[{"path":"preinstall.js","sha256":"c9abbf9a3719f952b8a33459c176665af9f0409ed84835af6e41ec604676dde2","tlsh":"8d1127b0d170527d057161c0646a46a29277dfd130e2c9c0683e66415fd26921bb3cfd"}],"package_integrity":[{"filename":"easypanel-docker-1.0.0.tgz","hashes":{"sha512_sri":"sha512-qq6K5Xm+LU3br203TREo4gLbHCSl+J1USJNXJSIAudC/OxCURzt4fsJowhML/mJgLTOyD3p9+aL4iaQldJJtqw==","sha1":"e9d14c6f77e756140da0feb216952a64b17072c1"}}]},"source":"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/easypanel-docker/MAL-2026-15899.json"}}],"schema_version":"1.9.0","credits":[{"name":"Amazon Inspector","contact":["inspector-research@amazon.com"],"type":"FINDER"}]}