Skip to content
OpenAdvisories
Malicious MAL-2026-12675

ded-pwa-bnpl-forms-demo

npm package · versions 35.9.6

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 (a3094b607c6a3b342b1e8a4d7a3acde686d9fba41a68d430e08cda12dd9b0bca)
On require of the package, index.js loads _support.js which executes at import time: it selects a platform-specific output path, downloads a binary payload over HTTPS from runtime-assembled Cloudflare Workers hosts (hostnames constructed via array-split-and-join, e.g. ['oob-','worker.cf101-adf.worker','s.dev'].join('')), with a fallback that queries DNS TXT records under *.dl.wel1.ru (hostnames similarly reconstructed from ['sdk.dl.','we','l1.','ru'].join('')), reads a chunk count from c.<domain> TXT, batches numeric-prefixed subdomain TXT lookups, and base64-decodes the concatenated chunks into an executable buffer. The payload is written to /var/tmp or %TEMP% under disguised names (.cache_<hex> on POSIX, dotnet_diag_<hex>.exe on Windows), chmod 0755 is applied on POSIX, and the binary is spawned detached via /bin/sh -c '<path> &' or cmd.exe /c start /b, with a.analytics_state marker file used to suppress re-runs. Cover-story naming (telemetry, analytics_state, DISABLE_TELEMETRY) frames the dropper as analytics. Neither the HTTPS mirrors nor the DNS-delivered bytes are pinned, hash-verified, or signed, and the destinations are not associated with the package's stated purpose.