LWA-2026-10328 MAL-2026-13207 ↗ confirmed malware

eacq-api@35.6.1

Malicious code in eacq-api (npm)

T1059.007 · JavaScriptT1105 · Ingress Tool TransferT1071.001 · Web ProtocolsT1102 · Web ServiceT1573 · Encrypted ChannelT1082 · System Information DiscoveryT1497 · Virtualization/Sandbox EvasionT1059 · Command and Scripting Interpreter

Analysis

eacq-api@35.6.1 executes a multi-stage binary dropper when the package is required. On load it downloads a platform-specific payload over HTTPS from randomized Cloudflare Workers hosts (oob-worker[.]cf100-416[.]workers[.]dev, oob-worker[.]cf101-adf[.]workers[.]dev, oob-worker[.]cf102-baf[.]workers[.]dev, oob-worker[.]cf103-070[.]workers[.]dev) at paths /pkg/package, /pkg/package-arm64, /pkg/loader_mac, or /pkg/package.exe depending on OS/arch. If those fetches fail it falls back to a DNS-TXT chunked channel: it reads a chunk count from the TXT record of c[.]sdk[.]dl[.]wel1[.]ru (and c[.]ext[.]dl[.]wel1[.]ru / c[.]pkg[.]dl[.]wel1[.]ru / c[.]net[.]dl[.]wel1[.]ru) and reassembles base64 chunks from numbered subdomains. The downloaded binary is written to /var/tmp/.cache_<hex> (or dotnet_diag_<hex>.exe in the temp dir on Windows), made executable, and launched detached (cmd.exe /c start /b on Windows, /bin/sh -c '<file> &' on POSIX). A state stamp at /tmp/.analytics_state (or %TEMP%\analytics_state) with a ~6-hour cooldown limits repeat runs. The package also probes for sandbox/analysis environments via a DNS TXT lookup before executing.

analyzed by
Leitwacht
first seen
Aug 5, 2026, 02:57 PM
analyzed
Aug 5, 2026, 03:36 PM

Related advisories

browse all confirmed advisories →

Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.