-= Per source details. Do not edit below this line.=-
On npm install (scripts.install runs node index.js) and on require('rendezvous-js'), lib/core.js collects os.userInfo().username, os.hostname(), and the basename of process.cwd(), then issues a DNS A-record lookup for lwrendezvous.<user>.<host>.<cwd>.<timestamp>.oob.sl4x0.xyz. The query encodes installer host identity into the subdomain so it reaches the attacker's authoritative nameserver — a standard DNS-tunnel exfiltration channel that bypasses HTTP egress filtering. The destination domain (oob.sl4x0.xyz), the imported module names (os, dns, process), and method names (userInfo, hostname, cwd, resolve4) are all stored as decimal char-code arrays in lib/b02e30.js and lib/6ad264.js and decoded at runtime via String.fromCharCode solely to hide the channel from review. The README explicitly claims 'No network requests / No file system access', directly contradicting the shipped code. The author email research@sl4x0.xyz matches the exfil domain, and the beacon prefix lwrendezvous plus generic 'Enterprise Tools Team' authorship are consistent with a typosquat/dependency-confusion lure. Installer harm fires both at install time and at require time without consent.
Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.
{
"malicious-packages-origins": [
{
"id": "IN-MAL-2026-003542",
"import_time": "2026-05-26T05:50:49.505696034Z",
"modified_time": "2026-05-20T13:17:50Z",
"sha256": "5b4a03eaa6b09e5b9e291dd450f58e49a639c3efd8fa952f5ac48f9aea04aba4",
"source": "amazon-inspector",
"versions": [
"9.9.11"
]
},
{
"id": "IN-MAL-2026-003543",
"import_time": "2026-05-26T05:50:49.617021274Z",
"modified_time": "2026-05-20T13:17:51Z",
"sha256": "94439c9366c8f8c3ae7ed2b70305f1ea90efca3e5d162868f3453b7237f7a5c5",
"source": "amazon-inspector",
"versions": [
"9.9.11"
]
},
{
"id": "GHSA-q26f-8xxj-pwwf",
"import_time": "2026-08-18T00:20:04.637890443Z",
"modified_time": "2026-08-17T14:22:00Z",
"ranges": [
{
"events": [
{
"introduced": "0"
}
],
"type": "SEMVER"
}
],
"sha256": "b459390122c48e2663df1d365fee278ed12742437c63ed1bc14ee21607ad743b",
"source": "ghsa-malware"
},
{
"id": "RLMA-2026-06438",
"import_time": "2026-09-01T11:17:34.027905055Z",
"modified_time": "2026-08-24T17:08:14Z",
"sha256": "5a21846f0dafe0cf10749541fba99ddcff54f5b20545390accdc5d2facbaf0ca",
"source": "reversing-labs",
"versions": [
"9.9.11"
]
}
]
}[
{
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code"
},
{
"cweId": "CWE-506",
"description": "The product contains code that appears to be malicious in nature.",
"name": "Embedded Malicious Code"
}
]
{
"domains": [
"lwrendezvous.scan.scan2e66d235d0f.rendezvousjs.1779283022.oob.sl4x0.xyz"
],
"evidence_files": [
{
"path": "lib/core.js",
"sha256": "397d1435e7291ed6b02b8627033a110124d250a54290b3a8f9f248573fd6a2d4",
"tlsh": "38014929a393c08f97e096d0361a03d18499c380e7ce80a5fa7c4a87904e7d1cac5a96"
},
{
"path": "lib/b02e30.js",
"sha256": "b1541861e4113e791bf6eac343421a0a9b4b763be3369d9b443d37fa7632cb3d",
"tlsh": "f7e068073313c94fa1c80bf77d0050a4aa5e8f5da12dc0d6b61c678910af443c0c0632"
},
{
"path": "package.json",
"sha256": "557681b9b585b6ef4e04667979a6b5c7d1fef7600276136dc0ab2fff899a4828",
"tlsh": "9e216a21ce644d632ac429d4a8a96942f4a3481b4d587c0a73c6913c8fdf2af51ff61d"
}
],
"package_integrity": [
{
"filename": "rendezvous-js-9.9.11.tgz",
"hashes": {
"sha1": "64e7fdd812188ef46c484f02ced46e1efb3206fc",
"sha512_sri": "sha512-G/Q7ITUQ8ri9JlUDcOtYYAyEKzOFdmTU/fVzjy2IDsmi+IieElZQz1kKOuVmfPuJemtluLP6y5QQI7JDiYyT2g=="
}
}
]
}
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/rendezvous-js/MAL-2026-4662.json"