MAL-2026-12661

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/constructor-blocks-landings/MAL-2026-12661.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12661
Published
2026-08-05T13:57:02Z
Modified
2026-08-05T14:36:13.100503895Z
Summary
Malicious code in constructor-blocks-landings (npm)
Details

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

Source: amazon-inspector (28cdac4c3410baaaa9054b53e7d5ed9260e8322d3164fc5e1670c2ac15efa98b)

On require() of the package's main entrypoint, index.js loads setup.js which selects an OS/architecture-specific asset and downloads a binary from a rotating list of hostnames assembled at runtime via string-splitting (e.g. ["oob-worker.cf101-adf.wo","rkers.de","v"].join("")), with a DNS-TXT fallback under dl.wel1.ru. The downloaded bytes are written to a temp directory under a disguised name (dotnetdiag<rand>.exe on Windows,.cache<rand> on Unix), chmodded 0755, and spawned detached via cmd.exe or /bin/sh -c "<path> &" with stdio ignored. Node built-ins are accessed through computed property names (os[k], fs['chmod'+'Sync'], require('child'+'process')) to defeat static analysis. A secondary copy of the same primitives is bundled in lib/telemetry.js under a fake analytics/SDK shape. Hostname reassembly, disguised staged filenames, detached background execution, and a DNS covert channel are attacker-dropper shape, not telemetry.

Database specific
{
    "malicious-packages-origins": [
        {
            "versions": [
                "35.5.7"
            ],
            "import_time": "2026-08-05T14:20:02.52469727Z",
            "sha256": "28cdac4c3410baaaa9054b53e7d5ed9260e8322d3164fc5e1670c2ac15efa98b",
            "modified_time": "2026-08-05T13:57:02Z",
            "id": "IN-MAL-2026-015105",
            "source": "amazon-inspector"
        }
    ]
}
References
Credits

Affected packages

npm / constructor-blocks-landings

Package

Name
constructor-blocks-landings
View open source insights on deps.dev
Purl
pkg:npm/constructor-blocks-landings

Affected ranges

Affected versions

35.*
35.5.7

Database specific

cwes
[
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    }
]
indicators
{
    "package_integrity": [
        {
            "hashes": {
                "sha512_sri": "sha512-DI8e5IbIOz8A8ul5rrAB8xr59I0O6dDBz/C0DBABEuV6A8mw29e3Hnx3a3dljWoU6ll5OKdCSfOFrZ+0d5vRLA==",
                "sha1": "99abcfa744086f13187c894e25c4cc19a6d55d07"
            },
            "filename": "constructor-blocks-landings-35.5.7.tgz"
        }
    ],
    "evidence_files": [
        {
            "path": "setup.js",
            "sha256": "fe1ff6e316786d73d7d0fbbe6973a65dbd0dd288dee48f4b47aabc2c5b1a08c2",
            "tlsh": "dea1979a16a9701c4bb0ebf4c71b9825f65af66337818284fb5c69845f731248372efc"
        },
        {
            "path": "lib/telemetry.js",
            "sha256": "8f1c6a6cba3b220b731d5808bc04168cded4b783871cd2054e58b0367939810e",
            "tlsh": "c8835055566a242186b2b368df234107ff3685272643429dbafc82dc1fbd72092a5ffc"
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/constructor-blocks-landings/MAL-2026-12661.json"