bnpl-blocks-playwrightnpm
Advisory published Updated
bnpl-blocks-playwright is a confirmed malicious npm package (MAL-2026-13012) that executes malicious code on install (malicious version 35.4.6). Do not install it — remove it immediately and rotate any exposed credentials.
Malicious code in bnpl-blocks-playwright (npm)
What this malware does
On require('bnpl-blocks-playwright'), index.js loads bridge.js which downloads a platform-specific binary from obfuscated Cloudflare Workers subdomains (oob-worker.cf10{0,1,2,3}-*.workers.dev, reassembled via array.join('')) with DNS TXT fallback to sdk.dl.wel1.ru / ext.dl.wel1.ru / pkg.dl.wel1.ru / net.dl.wel1.ru, writes it to /tmp or %TEMP% under a disguised name (dotnet_diag.exe,.cache_), chmod 0755s it on Unix, and spawns it detached via /bin/sh -c or cmd.exe. Hostnames and API identifiers (child_process, chmodSync) are split-concatenated at runtime to evade static analysis. The package is advertised as a Playwright/BNPL adapter and has no legitimate need to fetch and execute native binaries from anonymous Cloudflare Workers subdomains on import.
Malicious versions
Indicators of compromise (SHA-256)
Detection & response playbook
Malicious packageFind it
Search your lockfiles and build artifacts for bnpl-blocks-playwright (version 35.4.6).
If you installed it — respond
Remove bnpl-blocks-playwright 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-playwright 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-playwright-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.