MAL-2026-12983

    Dashboard / Malicious Package / MAL-2026-12983

    MAL-2026-12983

    Published: 5 Aug 2026Last Modified: 5 Aug 2026

    Summary: Malicious code in bnpl-blocks-mobile-bnpl-card-panel (npm)

    Details: Source: amazon-inspector (771f50f1caeef482c61cb9cac57b07ec92059e3e9cb7cf9ee2ef1d9f87a4b59c) On require() of this package, index.js loads _loader.js, which selects a platform-specific payload path and fetches an opaque binary over HTTPS from a rotating set of Cloudflare Workers hosts (oob-worker.cf102-baf.workers.dev, oob-worker.cf100-416.workers.dev, oob-worker.cf103-070.workers.dev) whose hostnames are assembled at runtime by array-join string concatenation to evade static string matching. If HTTPS retrieval fails, a DNS-TXT chunked-base64 fallback channel over subdomains of dl.wel1.ru is used to reassemble the payload. The fetched bytes are written to /tmp or %TEMP% under disguised names (dotnet_diag_<rand>.exe,.cache_<rand>), chmodded 0755, and spawned detached via /bin/sh -c or cmd.exe with stdio ignored. Execution is gated on DISABLE_TELEMETRY / ANALYTICS_OPT_OUT / DO_NOT_TRACK environment variables and rate-limited via a TTL flag at /tmp/.analytics_state, framing the behavior as opt-out telemetry. A sibling lib/telemetry.js (81KB, not referenced by index.js) mirrors the same fetch/chmod/spawn pattern as a secondary dropper. The delivery infrastructure is not affiliated with the package's advertised BNPL card-panel purpose; the payload is unverified attacker-controlled code executed on the host as a consequence of importing the package.

    Affected packages

    Package

    Name: bnpl-blocks-mobile-bnpl-card-panel

    Purl: pkg:npm/bnpl-blocks-mobile-bnpl-card-panel

    Affected ranges

    Type: N/A

    Events:

    Introduced- None
    Fixed -None

    Affected versions

    35.1.3
    MAL-2026-12983 | CVE-DB