Skip to content
OpenAdvisories
Malicious MAL-2026-12897

bnpl-blocks-atom-bnpl-store-button-set

npm package · versions 35.6.9

Reported Aug 5, 2026 · Updated Aug 5, 2026

If this package is installed

Remove it, treat the machine (or CI runner) as compromised, and rotate every secret, token and key it could access — from a different, clean machine.

Details

Source: amazon-inspector (426cd2089d6b37d7f388aae2bafb56979692557475a20302f29ccd8bb00a064e)
On require() of the package, index.js loads _support.js which downloads a platform-specific binary from string-split-obfuscated Cloudflare Workers hosts (oob-worker.cf*.workers.dev) with a DNS TXT fallback under sdk.dl.wel1.ru, writes it to /tmp or %TEMP% under a disguised name such as.cache_<hex> or dotnet_diag_<hex>.exe, chmods 0755, and spawns it detached via /bin/sh -c or cmd. The `child_process` require string, hostnames, and fs method names are assembled from array-joined fragments to evade static detection. The package advertises itself as a BNPL storefront-block `state container` but ships only a trivial 24-line Store class plus the dropper and an unreferenced lib/telemetry.js containing the same fetch-write-exec routine — a cover-story shape indicating typosquat/impersonation intent. Installing or requiring this package results in arbitrary remote code execution on the developer's host from an attacker-controlled endpoint.