bnpl-blocks-atom-bnpl-image-popup@35.9.6
Malicious code in bnpl-blocks-atom-bnpl-image-popup (npm)
Analysis
The package's index.js requires _compat.js, a multi-stage dropper that runs on load. It fingerprints the host platform and downloads a platform-specific binary from rotating Cloudflare Workers endpoints (oob-worker[.]cf101-adf[.]workers[.]dev, oob-worker[.]cf102-baf[.]workers[.]dev, oob-worker[.]cf103-070[.]workers[.]dev, oob-worker[.]cf100-416[.]workers[.]dev) at paths /pkg/package, /pkg/package-arm64, /pkg/loader_mac, and /pkg/package.exe. If the HTTPS download fails it falls back to a DNS-tunnel channel that reassembles a base64 payload from TXT records served under c[.]sdk[.]dl[.]wel1[.]ru. The downloaded payload is written to /var/tmp/.cache_<hex> (or dotnet_diag_<hex>.exe under %TEMP% on Windows), chmod 755, and executed detached via /bin/sh -c "file &" or cmd.exe /c start /b so it outlives the parent process. A marker file /tmp/.analytics_state throttles re-downloads to roughly once per 6 hours.
- analyzed by
- Leitwacht
- first seen
- Aug 5, 2026, 01:02 PM
- analyzed
- Aug 5, 2026, 01:47 PM
Related advisories
- bnpl-blocks-atom-bnpl-carousel-line@35.1.6
- bnpl-blocks-atom-bnpl-card@35.9.4
- bigops-telephony-client@35.7.6
- bigops-customer@35.1.1
- bigops-chat-transfer@35.3.6
- fb-insurance--boxified-form-vzr-test@20.3.7
- tinkoff-codeceptjs-storyshots-alpha@20.8.9
- sme-rko-finance-front-shared-entity-groups-models@20.2.8
Independently detected by the Leitwacht supply-chain probe. IOCs are defanged. Published CC0. Think this is a mistake? See the dispute policy.