MAL-2026-12649 Malicious code in clients-structure (npm)
Malicious package
Published
MAL-2026-12649 is a malicious package: clients-structure (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-12649/ (Markdown: https://insights.sbomify.com/MAL-2026-12649/index.md)
- Package
- clients-structure
- Registry
- npm
What is MAL-2026-12649?
MAL-2026-12649 is a malicious package in clients-structure, published on 5 Aug 2026.
Official description
On require() of clients-structure, index.js loads _ext.js which selects a platform-specific endpoint, fetches a binary from a rotating list of anonymous Cloudflare Workers subdomains (oob-worker.cf101-adf.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf99-9b3.workers.dev, oob-worker.cf103-070.workers.dev), with a DNS-TXT fallback channel over sdk.dl.wel1.ru / ext.dl.wel1.ru / pkg.dl.wel1.ru / net.dl.wel1.ru that reconstructs a base64 payload chunked across numbered TXT records. The fetched bytes are written to a temp path, chmod 0755, and spawned detached via /bin/sh -c or cmd.exe. Destination hostnames are assembled at runtime from split string fragments joined via Array.join, and a /tmp/.analytics_state TTL marker plus an opt-out env-var facade serve as cover story. No hash or signature verification is performed, and the destinations bear no relation to any declared publisher.
What should I do about MAL-2026-12649?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.