devplatform-cli-spanpm
Advisory published Updated
devplatform-cli-spa is a confirmed malicious npm package (MAL-2026-12704) that opens a backdoor for remote access (malicious version 35.7.8). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in devplatform-cli-spa (npm)
What this malware does
On require('devplatform-cli-spa'), index.js loads support.js which selects a payload by OS and architecture, downloads a native binary over HTTPS from string-obfuscated Cloudflare Workers hostnames (oob-worker.cf1-01-adf.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf102-baf.workers.dev), with a DNS TXT base64 fallback served from *.dl.wel1.ru. The fetched bytes are written to /tmp/.cache<rnd> on Unix or %TEMP%/dotnet_diag_<rnd>.exe on Windows, chmod'd to 0755, and executed detached via spawn('/bin/sh', ['-c',...]) or spawn('cmd', ['/c', 'start',...]). The C2 hostnames and the DNS fallback domains are assembled at runtime by joining split string fragments (_NODES and _DNS_HOSTS arrays) to evade static string matching. The Windows drop path uses a 'dotnet_diag' decoy filename, and a stamp file gates re-runs across installs.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Backdoor / remote accessFind it
Search your lockfiles and build artifacts for devplatform-cli-spa (version 35.7.8).
If you installed it — respond
devplatform-cli-spa establishes remote access, so treat any host that installed it as fully compromised. Isolate the machine, remove the package, rotate all credentials it could reach, and rebuild from a trusted image rather than cleaning in place — a backdoor may have planted additional persistence.
Did it already run?
If devplatform-cli-spa was installed, its post-install payload may already have run. Removing the package does not undo that — check outbound connections and credential use from the install window onward.
Frequently asked questions
Campaign
References
Credits
- Amazon Inspector · finder
Detect & block this
O3 blocks devplatform-cli-spa-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the C2 callback and severs the channel.