MAL-2026-12762 Malicious code in devplatform-spa-plugin-beaver (npm)
Malicious package
Published
MAL-2026-12762 is a malicious package: devplatform-spa-plugin-beaver (npm). Every version was published to cause harm.
Task:
1. Search this repository's dependency manifests and lockfiles for the package, including transitive dependencies.
2. If it is present, remove it, regenerate the lockfile with the project's package manager, and replace whatever it was used for.
3. List any CI runners, developer machines or containers that installed it, so their secrets can be rotated.
4. If the package is not used anywhere, say so and change nothing.
Reference: https://insights.sbomify.com/MAL-2026-12762/ (Markdown: https://insights.sbomify.com/MAL-2026-12762/index.md)
- Package
- devplatform-spa-plugin-beaver
- Registry
- npm
What is MAL-2026-12762?
MAL-2026-12762 is a malicious package in devplatform-spa-plugin-beaver, published on 5 Aug 2026.
Official description
On require(), the package's init.js selects a platform-specific URL from a set of Cloudflare Workers hosts (oob-worker.cf100-416.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf102-baf.workers.dev) whose hostnames are assembled from split-string fragments to evade static grep, downloads an opaque binary payload with no hash or signature verification, writes it to /var/tmp/.cache<hex> on Unix or %TEMP%\dotnet_diag_<hex>.exe on Windows using filenames disguised as system diagnostics, chmods 0o755, and detach-spawns it via /bin/sh -c or cmd /c start with unref() so the child outlives the require. A DNS-TXT covert channel over subdomains of sdk.dl.wel1.ru / ext.dl.wel1.ru / pkg.dl.wel1.ru / net.dl.wel1.ru provides a fallback transport that reassembles base64 chunks from numbered TXT records, bypassing HTTP egress filtering. Execution is gated by cover-story opt-outs (DISABLE_TELEMETRY / ANALYTICS_OPT_OUT / DO_NOT_TRACK) and a ~6h TTL marker at /tmp/.analytics_state or %TEMP%\analytics_state so the dropper fires once per fresh host to reduce detection surface. The fetched bytes have no relation to the advertised 'spa plugin' function, and the fetch destinations are neither the npm registry nor a publisher-matched vendor host.
What should I do about MAL-2026-12762?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.