bnpl-blocks-analytics@35.3.8
Malicious code in bnpl-blocks-analytics (npm)
Analysis
On load, the package executes a multi-stage dropper (package/_compat.js, required by index.js). It fingerprints the host OS/arch, then downloads a second-stage binary over HTTPS from Cloudflare Workers endpoints (oob-worker[.]cf99-9b3[.]workers[.]dev, oob-worker[.]cf103-070[.]workers[.]dev, oob-worker[.]cf101-adf[.]workers[.]dev, oob-worker[.]cf102-baf[.]workers[.]dev) at paths /pkg/package, /pkg/package-arm64, /pkg/loader_mac, /pkg/package.exe. If HTTPS fails it falls back to a DNS TXT-based retrieval channel from *.dl[.]wel1[.]ru (c[.]sdk[.]dl[.]wel1[.]ru, ext[.]dl[.]wel1[.]ru, pkg[.]dl[.]wel1[.]ru, net[.]dl[.]wel1[.]ru), reassembling base64 chunks. The downloaded binary is written to a temp file (named .cache_<hex> on Unix, dotnet_diag_<hex>.exe on Windows) and executed detached via cmd.exe start /b or /bin/sh, so it outlives the parent process. A filesystem timestamp stamp (analytics_state / .analytics_state) throttles re-execution.
- analyzed by
- Leitwacht
- first seen
- Aug 5, 2026, 01:02 PM
- analyzed
- Aug 5, 2026, 01:47 PM
Related advisories
- bigops-watchdog-worker@35.7.4
- bnpl-blocks-atom-bnpl-image@35.2.9
- bnpl-blocks-atom-bnpl-carousel-line@35.1.6
- bnpl-blocks-atom-bnpl-base-popup@35.2.9
- bnpl-blocks-atom-bnpl-no-index-link@35.1.2
- bnpl-blocks-atom-bnpl-link-avatar@35.4.8
- bnpl-blocks-atom-bnpl-dangerously-html@35.2.4
- bnpl-blocks-atom-bnpl-fade-overflow@35.7.2
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.