-= Per source details. Do not edit below this line.=-
The package's preinstall lifecycle script runs automatically on npm install and collects installer identity (os.hostname(), os.userInfo().username, process.cwd()) along with the names of CI-related environment variables. The collected data is JSON-serialized, base64url-encoded, chunked into DNS label form, and exfiltrated to a hardcoded third-party out-of-band collector at *.oob.lyomeri.com via both a dns.lookup() call and an HTTP GET to easypanel-app.daco3v4q6f49egu1ds1gwjnsjb88s5kcp.oob.lyomeri.com. The name mimics the legitimate Easypanel project and the shape (preinstall + host/username/cwd + OOB DNS+HTTP beacon to a per-package subdomain) is a dependency-confusion reconnaissance beacon, disclosing installer identity and internal-package-name existence to a third party regardless of any 'benign canary' self-label.
{
"malicious-packages-origins": [
{
"import_time": "2026-09-04T04:21:20.972556467Z",
"id": "IN-MAL-2026-019453",
"versions": [
"1.0.0"
],
"source": "amazon-inspector",
"modified_time": "2026-09-04T03:45:53Z",
"sha256": "2744a6f0dfde1930ab560731e54cb8a1e1c8dc61a2072705498ddcaa6dd1a592"
}
]
}"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/easypanel-app/MAL-2026-15895.json"
{
"evidence_files": [
{
"path": "preinstall.js",
"tlsh": "3e1167b0c260527c016061c4645a46b281b7dfd130e2c9d0682a26405fd22a30bb38fe",
"sha256": "78185239d223a9ee3a81fc6eb0dafcdc28723c7d4badac69ef74e61d66958c3c"
}
],
"package_integrity": [
{
"filename": "easypanel-app-1.0.0.tgz",
"hashes": {
"sha1": "f213b624c672bbdac89aa8a6a260bdb3764da7f6",
"sha512_sri": "sha512-64qt+m2CLZ9a55lNfv0U41ZjXZrrPvG3gVAVXdJCVcKNw9zYIyzGaaU3Y3uYv4O6n6e9Z+DgyvEox7NVw/U30A=="
}
}
]
}
[
{
"description": "The product contains code that appears to be malicious in nature.",
"cweId": "CWE-506",
"name": "Embedded Malicious Code"
}
]