Skip to content
supplychainattack.orgSupply chain attack incident catalog
containedcritical

Malicious code in eacq-dialog (npm)

eacq-dialog@35.8.1 (npm) contains malicious code that downloads and executes platform-specific binaries from attacker-controlled Cloudflare Workers and DNS-TXT fallback domains. The dropper is reachable from both setup.js and lib/telemetry.js, executing on package require without verification.

ShareXLinkedInHacker News
Disclosed
Last updated
Blast radius
Any npm consumer of eacq-dialog@35.8.1
Ecosystems
Attack vectors
Affected entities
  • eacq-dialog · 35.8.1

eacq-dialog@35.8.1 contains a malicious dropper embedded in both setup.js and lib/telemetry.js. The code downloads platform-specific binaries from hardcoded attacker-controlled infrastructure: Cloudflare Workers hosts (oob-worker.cf99-9b3.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf101-adf.workers.dev, oob-worker.cf102-baf.workers.dev) with DNS-TXT fallback channels (sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, net.dl.wel1.ru).

The payload is written to /var/tmp or %TEMP% under disguised names (.cache_ or dotnet_diag_.exe), made executable (chmod 0755), and spawned detached via /bin/sh -c or cmd.exe /c start /b. The malicious code uses string fragmentation and dynamic require() calls to evade static analysis (e.g., ['oob-worke','r.cf99-9b3.worker','s.','dev'].join(''), require('child_'+'process')).

No hash or signature verification is performed on downloaded payloads. The destinations are not the package publisher and do not align with the package's stated purpose of 'infrastructure utilities'. The dropper in lib/telemetry.js duplicates the fetch/chmod/spawn primitives, causing the payload to execute on every require() of the package independently of setup.js, maximizing exposure.

Indicators of compromise

Packages
  • eacq-dialog@35.8.1
Domains
  • oob-worker.cf99-9b3.workers.dev
  • oob-worker.cf100-416.workers.dev
  • oob-worker.cf101-adf.workers.dev
  • oob-worker.cf102-baf.workers.dev
  • sdk.dl.wel1.ru
  • ext.dl.wel1.ru
  • pkg.dl.wel1.ru
  • net.dl.wel1.ru

Remediation

  • Immediately remove eacq-dialog@35.8.1 from all projects and dependencies
  • Audit npm package-lock.json and yarn.lock files for presence of eacq-dialog@35.8.1
  • If eacq-dialog@35.8.1 was installed, assume compromise: rotate credentials, audit system logs for suspicious child processes spawned from Node.js, and scan /var/tmp and %TEMP% for suspicious executables with names matching .cache_ or dotnet_diag_*
  • Block outbound connections to the identified Cloudflare Workers and wel1.ru domains at the network level
  • Use npm audit to identify and remediate any other malicious packages in the dependency tree
  • Consider using npm provenance verification and signed packages where available

Sources

  1. GitHub Advisory GHSA-w5m9-cv95-g8rm · GitHub Advisory Database

Cite this entry

"Malicious code in eacq-dialog (npm)." supplychainattack.org, Supply Chain Attack Incident Catalog. Disclosed August 7, 2026; last updated August 7, 2026. https://supplychainattack.org/incident/malicious-code-in-eacq-dialog-npm-1fj51i

Suggest a correction

Found an error or have a newer source? Corrections to factual errors take priority over new entries.

  1. containedcritical

    Malware in @junofficial/baileys

    The npm package @junofficial/baileys contained malware that fully compromised any system with the package installed or running. The malicious package has been identified and removed from distribution.

    npmCompromised package
  2. containedcritical

    Malware in a.poltoradnev-package-a

    The npm package a.poltoradnev-package-a contains malware that grants full system compromise to attackers. Any computer with this package installed should be considered fully compromised and all secrets and keys rotated immediately from a different machine.

    npmCompromised package
  3. activecritical

    Malware in @zynkit/probe

    Malware discovered in the npm package @zynkit/probe. Systems with this package installed or running are considered fully compromised, with potential for complete system takeover.

    npmCompromised package
  4. containedcritical

    Malware in awesome-ts-jest

    Malware was discovered in the npm package awesome-ts-jest. Systems with this package installed or running should be considered fully compromised and require immediate remediation.

    npmCompromised package