MAL-2026-12885 Malicious code in bnpl-blocks-atom-bnpl-popup (npm)
Malicious package
Published
MAL-2026-12885 is a malicious package: bnpl-blocks-atom-bnpl-popup (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-12885/ (Markdown: https://insights.sbomify.com/MAL-2026-12885/index.md)
- Package
- bnpl-blocks-atom-bnpl-popup
- Registry
- npm
What is MAL-2026-12885?
MAL-2026-12885 is a malicious package in bnpl-blocks-atom-bnpl-popup, published on 5 Aug 2026.
Official description
On require() of this package, index.js loads shim.js which assembles obfuscated non-publisher URLs by joining split string fragments (resolving to a *.workers.dev host, with a DNS-TXT covert-channel fallback under a.ru domain that reconstructs a payload from base64-encoded TXT records at c.<domain> and <i>.<domain>). shim.js downloads a platform-specific binary, writes it to /tmp or %TEMP% under a disguised filename (.cache<hex> on Unix, dotnet_diag<hex>.exe on Windows), chmods 0755, and spawns it detached via cp.spawn('/bin/sh', ['-c', fp+' &'], {detached:true}).unref() (or the cmd equivalent). No hash or signature verification is performed. A second copy of the dropper is shipped in lib/telemetry.js (labeled as an 'Analytics SDK') using the same shape with split-string API names such as require('child_'+'process') and fs['chmod'+'Sync']; it is not wired into the current entry point but stages the same capability. The destination hosts are not first-party to the package, and the string-splitting plus DNS-TXT channel are anti-analysis tradecraft rather than legitimate telemetry configuration.
What should I do about MAL-2026-12885?
Remove the package from your dependencies and lockfiles, then rotate any secrets on machines where it was installed.