OpenSSF/OSV advisory MAL-2026-12291 confirms this npm version as malicious. index.js unconditionally requires setup.js on module load. setup.js reconstructs C2 hostnames at runtime from split string fragments (resolving to oob-worker.cf99-9b3.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf102-baf.workers.dev, with a DNS-TXT fallback channel under *.dl.well1.site), downloads a platform-specific binary, writes it to a temp path with a...
Source
OpenSSF Malicious Packages via OSV
Summary
Malicious code in twork-data-services-eacq-company-service-v2-api-v1-identifiers-crm (npm)
Details
index.js unconditionally requires setup.js on module load. setup.js reconstructs C2 hostnames at runtime from split string fragments (resolving to oob-worker.cf99-9b3.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf102-baf.workers.dev, with a DNS-TXT fallback channel under *.dl.well1.site), downloads a platform-specific binary, writes it to a temp path with a masquerading filename (.cache_<hex>, dotnet_diag_<hex>.exe), chmods 0755, and spawns it detached via /bin/sh -c or cmd.exe with no hash or signature verification. The package's advertised purpose does not require any native binary. Environment variables such as DISABLE_TELEMETRY, ANALYTICS_OPT_OUT, and DO_NOT_TRACK are checked to skip execution, consistent with sandbox/analyst evasion. A sibling module lib/telemetry.js, not currently reached from the entrypoint, ships the same spawn(/bin/sh) + chmodSync 0755 + base64-buffer decode pattern with split 'child_'+'process' require, indicating a staged alternate dropper bundled with the package.
Decision reason
OpenSSF Malicious Packages via OSV confirms twork-data-services-eacq-company-service-v2-api-v1-identifiers-crm@20.6.7 as malicious (MAL-2026-12291): Malicious code in twork-data-services-eacq-company-service-v2-api-v1-identifiers-crm (npm)