bnpl-blocks-atom-bnpl-loadernpm
Advisory published Updated
bnpl-blocks-atom-bnpl-loader is a confirmed malicious npm package (MAL-2026-13530) that executes malicious code on install (malicious version 35.1.2). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in bnpl-blocks-atom-bnpl-loader (npm)
What this malware does
On any require/import of this package, index.js loads setup.js, which reassembles four oob-worker.cf*.workers.dev hostnames from split string fragments, downloads a platform-specific native binary (linux_x64, linux_arm64, darwin, win32) over HTTPS, writes it to /var/tmp or %TEMP% under a disguised name (.cache_<hex> on Unix, dotnet_diag_<hex>.exe on Windows masquerading as a.NET diagnostic tool), chmods it 0755, and spawns it detached via cp.spawn('/bin/sh', ['-c', fp + ' &'], {detached:true}) / spawn('cmd',...). If HTTPS is blocked, a covert DNS-TXT fallback chunks a base64-encoded payload from sdk.dl.wel1.ru, ext.dl.wel1.ru, pkg.dl.wel1.ru, and net.dl.wel1.ru. Destination hostnames and.ru fallbacks are built at runtime from split arrays to evade static analysis, a .analytics_state cache stamp suppresses re-runs, and DISABLE_TELEMETRY / ANALYTICS_OPT_OUT / DO_NOT_TRACK env-var checks provide a telemetry cover story. lib/telemetry.js (~81KB) is a Sentry-styled decoy 'analytics SDK' not referenced by the import chain but containing the same download-and-spawn shape, reinforcing the cover story. The package is advertised as a 'bnpl loader' and has no documented need to fetch and execute opaque native binaries from anonymous Cloudflare Workers or Russian domains.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Malicious packageFind it
Search your lockfiles and build artifacts for bnpl-blocks-atom-bnpl-loader (version 35.1.2).
If you installed it — respond
Remove bnpl-blocks-atom-bnpl-loader from your project and lockfile, then assume any secrets accessible to the build or runtime were exposed: rotate API keys, tokens, and credentials, and audit for unexpected outbound activity or persistence.
Did it already run?
If bnpl-blocks-atom-bnpl-loader 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 bnpl-blocks-atom-bnpl-loader-class packages before install and in CI — and if it already ran, its runtime egress monitoring catches the malicious outbound activity and severs the channel.