MAL-2026-12778

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/devplatform-spa-plugin-s3-feature-toggle/MAL-2026-12778.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12778
Published
2026-08-05T13:40:04Z
Modified
2026-08-05T14:37:06.651627058Z
Summary
Malicious code in devplatform-spa-plugin-s3-feature-toggle (npm)
Details

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

Source: amazon-inspector (7574ec8653333519f651022c1d008eca37f884dc753ad8825cda3facdcd9aa61)

On require() of the package, index.js loads runtime.js which selects a platform-specific endpoint, downloads a binary over HTTPS from obfuscated Cloudflare Workers subdomains (oob-worker.cf103-070.workers.dev, oob-worker.cf102-baf.workers.dev, oob-worker.cf101-adf.workers.dev), writes it to /var/tmp/.cache<hex> on POSIX or %TEMP%\dotnetdiag<hex>.exe on Windows, chmods 0755, and spawns it detached via /bin/sh -c or cmd. Destination hostnames are reconstructed by array-join to defeat static string scanning (e.g. ["oob-work","er.cf1","03-070.w","orke","rs",".d","ev"].join("")). When HTTPS delivery fails, runtime.js falls back to a DNS-tunneled channel over TXT records at sdk.dl.wel1.ru / ext.dl.wel1.ru / pkg.dl.wel1.ru / net.dl.wel1.ru: it queries c.<domain> for a chunk count, iterates <i>.<domain> to retrieve base64-encoded chunks, concatenates and decodes them into a Buffer, writes the resulting binary to disk, chmods 0755, and spawns it. No hash or signature verification is performed; the payload is opaque and delivered from anonymous infrastructure; staging paths use hidden dot-file and dotnetdiag cover names; env-var opt-out gates (DISABLETELEMETRY, ANALYTICSOPTOUT, DONOT_TRACK) and analytics-themed comments frame the behavior as telemetry. The combination of import-time execution, obfuscated attacker-controlled hosts, DNS-TXT covert-channel fallback, and unverified native-binary execution gives full remote code execution on the installer's host on npm install / require().

Database specific
{
    "malicious-packages-origins": [
        {
            "modified_time": "2026-08-05T13:40:04Z",
            "id": "IN-MAL-2026-014989",
            "source": "amazon-inspector",
            "sha256": "7574ec8653333519f651022c1d008eca37f884dc753ad8825cda3facdcd9aa61",
            "versions": [
                "35.7.1"
            ],
            "import_time": "2026-08-05T14:19:49.973739159Z"
        }
    ]
}
References
Credits

Affected packages

npm / devplatform-spa-plugin-s3-feature-toggle

Package

Name
devplatform-spa-plugin-s3-feature-toggle
View open source insights on deps.dev
Purl
pkg:npm/devplatform-spa-plugin-s3-feature-toggle

Affected ranges

Affected versions

35.*
35.7.1

Database specific

source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/devplatform-spa-plugin-s3-feature-toggle/MAL-2026-12778.json"
cwes
[
    {
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code",
        "cweId": "CWE-506"
    }
]
indicators
{
    "package_integrity": [
        {
            "filename": "devplatform-spa-plugin-s3-feature-toggle-35.7.1.tgz",
            "hashes": {
                "sha1": "cc6e5974271221c627e44bc1bc46f0a01f58bf6b",
                "sha512_sri": "sha512-Ah3NeyTB2aOqSxamkEPvrL9rYwXTZvMEZiUMtGiYLxbbjhHwpXAx0XPCPFyBMNOTgrFs1wnopn6Q/2ZGGI3xyA=="
            }
        }
    ],
    "evidence_files": [
        {
            "tlsh": "e4a1b89a05aa70094bb0dbe087174416f65be6633780c198fb9ca9885f77524c3b2efc",
            "sha256": "f7f8719ca66327f366591b4a8fcb8067a6a00dcbb049f47633afc8199fce5bbd",
            "path": "_runtime.js"
        }
    ]
}