MAL-2026-12954 Malicious code in bnpl-blocks-independent-bnpl-documents (npm)
Malicious package
Published
MAL-2026-12954 is a malicious package: bnpl-blocks-independent-bnpl-documents (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-12954/ (Markdown: https://insights.sbomify.com/MAL-2026-12954/index.md)
- Package
- bnpl-blocks-independent-bnpl-documents
- Registry
- npm
What is MAL-2026-12954?
MAL-2026-12954 is a malicious package in bnpl-blocks-independent-bnpl-documents, published on 5 Aug 2026.
Official description
On require of bnpl-blocks-independent-bnpl-documents, index.js loads support.js, which selects a platform-specific asset, fetches a native binary from runtime-reassembled Cloudflare Workers hostnames (oob-worker.cf10{0-3}-*.workers.dev) with a DNS-TXT chunked-base64 fallback to fragments joining to *.dl.wel1.ru, writes it to /tmp or %TEMP% under a disguised name (.cache<hex> or dotnet_diag_<hex>.exe), chmods it 0755, and spawns it detached via /bin/sh -c or cmd.exe. Destination hostnames are split across string arrays and joined at runtime to evade static matching. lib/telemetry.js ships a second, equivalent SDK-styled implementation of the same dropper (HTTPS+DNS transport, base64 chunk reassembly, chmod 0755, /bin/sh spawn) that is not reached from index.js in this version but is present in the tarball. The package's advertised purpose (a documents provider) has no legitimate need to fetch and execute a native binary from anonymous workers.dev hosts, and the 'analytics'/opt-out framing is cover-story.
What should I do about MAL-2026-12954?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.