MAL-2026-12940

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/bnpl-blocks-desktop-bnpl-shopping-banner/MAL-2026-12940.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12940
Published
2026-08-05T14:48:00Z
Modified
2026-08-05T15:51:07.895071212Z
Summary
Malicious code in bnpl-blocks-desktop-bnpl-shopping-banner (npm)
Details

-= Per source details. Do not edit below this line.=-

Source: amazon-inspector (9dbec840b48cc522f6dcdda0ea3569cd85730d1fee219bd0b6ce46007917f61e)

On require, index.js loads support.js which selects a platform-specific asset path, downloads opaque bytes from Cloudflare Workers hosts whose names are assembled at runtime by joining 2-3 substrings (e.g. oob-worker.cf99-9b3.workers.dev, oob-worker.cf102-baf.workers.dev), writes them to a temp file under a decoy name (dotnetdiag<hex>.exe on Windows,.cache<hex> on Unix), chmods 0755, and spawns the file detached via cmd.exe /c start on Windows or /bin/sh -c... & on Unix. A fallback delivery path queries DNS TXT records under c.net.dl.wel1.ru for a chunk count and then iterates i<n>.net.dl.wel1.ru TXT records, base64-decodes their concatenation, and treats the result as the executable payload — a DNS covert channel that bypasses HTTP egress filtering. childprocess is loaded lazily inside the helper and stderr is suppressed. The delivery hosts and DNS domains are string-split literals, childprocess is lazy-loaded, and staging uses decoy filenames — deliberate evasion of both static scanners and diagnostics.

Database specific
{
    "malicious-packages-origins": [
        {
            "sha256": "9dbec840b48cc522f6dcdda0ea3569cd85730d1fee219bd0b6ce46007917f61e",
            "id": "IN-MAL-2026-015446",
            "modified_time": "2026-08-05T14:48:00Z",
            "import_time": "2026-08-05T15:19:51.87370313Z",
            "source": "amazon-inspector",
            "versions": [
                "35.4.6"
            ]
        }
    ]
}
References
Credits

Affected packages

npm / bnpl-blocks-desktop-bnpl-shopping-banner

Package

Name
bnpl-blocks-desktop-bnpl-shopping-banner
View open source insights on deps.dev
Purl
pkg:npm/bnpl-blocks-desktop-bnpl-shopping-banner

Affected ranges

Affected versions

35.*
35.4.6

Database specific

indicators
{
    "evidence_files": [
        {
            "sha256": "7c9368c6a0315d27f4211e7494336cafeb583b56b97f2adc69b2475c0e9ef422",
            "path": "_support.js",
            "tlsh": "6da1766a166670188b70dbe0c6175415f56af2637380c1d4f79ca9985fb322483b3efc"
        }
    ],
    "package_integrity": [
        {
            "hashes": {
                "sha512_sri": "sha512-Qoz0oDb6JX8NTepU9v8z1MRF8zM95y1cC78oFwJpQXfq4n/ze0IV5v8PCNZ8QGoz1K3ozbNPmCjc/7ewkTZlYA==",
                "sha1": "eec5353fdf07a69d1fbd8a50b5a51e9ef09bfeb2"
            },
            "filename": "bnpl-blocks-desktop-bnpl-shopping-banner-35.4.6.tgz"
        }
    ]
}
cwes
[
    {
        "name": "Embedded Malicious Code",
        "description": "The product contains code that appears to be malicious in nature.",
        "cweId": "CWE-506"
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/bnpl-blocks-desktop-bnpl-shopping-banner/MAL-2026-12940.json"