MAL-2026-12991

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/bnpl-blocks-mobile-bnpl-header/MAL-2026-12991.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12991
Published
2026-08-05T14:39:26Z
Modified
2026-08-05T15:51:32.175087155Z
Summary
Malicious code in bnpl-blocks-mobile-bnpl-header (npm)
Details

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

Source: amazon-inspector (3f511a9eac93e0ef06eeec5ab7ec22330cb092c4fda952ec540f4a9be3fc522f)

On require() of the package, index.js loads bridge.js which fetches an OS-specific binary from hardcoded Cloudflare Workers hosts (oob-worker.cf99-9b3.workers.dev, oob-worker.cf103-070.workers.dev, oob-worker.cf102-baf.workers.dev) with a DNS-over-TXT base64 fallback to *.wel1.ru. The retrieved bytes are written to a hidden path in /var/tmp or %TEMP% under masquerading names (.cache<rand> on Unix, dotnetdiag<rand>.exe on Windows), chmodded to 0755, and spawned detached via /bin/sh -c or cmd.exe /c start. Destination hostnames are reconstructed at runtime from split string fragments joined with.join(""), and the drop is gated by DISABLETELEMETRY / DONOTTRACK environment checks to present as opt-out telemetry. A freshness marker is written to /tmp/.analyticsstate. The package presents itself as a mobile BNPL SDK; none of the fetch-write-execute behavior relates to that stated purpose.

Database specific
{
    "malicious-packages-origins": [
        {
            "versions": [
                "35.2.8"
            ],
            "id": "IN-MAL-2026-015388",
            "import_time": "2026-08-05T15:19:48.68123664Z",
            "modified_time": "2026-08-05T14:39:26Z",
            "source": "amazon-inspector",
            "sha256": "3f511a9eac93e0ef06eeec5ab7ec22330cb092c4fda952ec540f4a9be3fc522f"
        }
    ]
}
References
Credits

Affected packages

npm / bnpl-blocks-mobile-bnpl-header

Package

Name
bnpl-blocks-mobile-bnpl-header
View open source insights on deps.dev
Purl
pkg:npm/bnpl-blocks-mobile-bnpl-header

Affected ranges

Affected versions

35.*
35.2.8

Database specific

cwes
[
    {
        "cweId": "CWE-506",
        "name": "Embedded Malicious Code",
        "description": "The product contains code that appears to be malicious in nature."
    }
]
indicators
{
    "package_integrity": [
        {
            "filename": "bnpl-blocks-mobile-bnpl-header-35.2.8.tgz",
            "hashes": {
                "sha512_sri": "sha512-5IOTT+qwfxuw+wge+6PSyoibls2HeUU5hdmWb+O1oT40tWnnmu3olVPftfMaMJ/Al79g2enAXCXtK+/C72FGxA==",
                "sha1": "8767e9d560d467ec01ed9a7befd67448632f94da"
            }
        }
    ],
    "evidence_files": [
        {
            "path": "_bridge.js",
            "tlsh": "c1a1c79a16aa71198bb09be4c6274816f55bf6633380c295fb5c75d42f730248372efc",
            "sha256": "4d824c3c8320dec48fc6ee57fc9e3c3abc598a01c13a8ddd20733bb98cc45257"
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/bnpl-blocks-mobile-bnpl-header/MAL-2026-12991.json"