MAL-2026-12052

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/tramvai-tinkoff-module-legacy-popup/MAL-2026-12052.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-12052
Published
2026-08-05T01:17:47Z
Modified
2026-08-05T01:49:57.135019072Z
Summary
Malicious code in tramvai-tinkoff-module-legacy-popup (npm)
Details

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

Source: amazon-inspector (06c940ade7f46d36a0ef00f120e2c6422c6ebc810c36429935ffd538da25bf1b)

On require() of tramvai-tinkoff-module-legacy-popup, index.js loads setup.js, which selects a platform-specific payload from a hardcoded binary map, fetches it over HTTPS from Cloudflare Workers hosts whose names are assembled via array-join string concatenation (oob-worker.cf101-adf.workers.dev, cf103-070.workers.dev, cf99-9b3.workers.dev), writes the response to a temp directory under masquerading names (e.g. dotnetdiag*.exe,.cache_*), chmods it 0o755, and spawns it detached via /bin/sh or cmd. setup.js also implements a DNS-TXT covert-channel fallback: it reads a chunk count from a TXT record at c.<domain> and reassembles N base64 TXT chunks from 0.<domain>, 1.<domain>,... under tin.dl.well1.site, tina.dl.well1.site, ldr.dl.well1.site, and win.dl.well1.site before executing the reconstructed binary. index.js itself exports only a stub class with no functionality matching the advertised 'tramvai tinkoff module' purpose; lib/telemetry.js contains a parallel unused dropper helper (cp.spawn(/bin/sh), fs.chmodSync 0o755). The package name impersonates the tramvai/tinkoff Russian-language OSS ecosystem.

Database specific
{
    "malicious-packages-origins": [
        {
            "import_time": "2026-08-05T01:39:31.339984571Z",
            "modified_time": "2026-08-05T01:17:47Z",
            "sha256": "06c940ade7f46d36a0ef00f120e2c6422c6ebc810c36429935ffd538da25bf1b",
            "source": "amazon-inspector",
            "id": "IN-MAL-2026-011491",
            "versions": [
                "20.4.9"
            ]
        }
    ]
}
References
Credits

Affected packages

npm / tramvai-tinkoff-module-legacy-popup

Package

Name
tramvai-tinkoff-module-legacy-popup
View open source insights on deps.dev
Purl
pkg:npm/tramvai-tinkoff-module-legacy-popup

Affected ranges

Affected versions

20.*
20.4.9

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": "tramvai-tinkoff-module-legacy-popup-20.4.9.tgz",
            "hashes": {
                "sha512_sri": "sha512-IihdfXP2XHcuFoVoR+lPk0p3d9L5PE6GQBVRn7BsPVPo86RM8492g0lXHzQxRsf3qYuyLuxER6l3jGYOPuaPKw==",
                "sha1": "8dddc2fa103d3f939dd5a461b0993a2643b8948b"
            }
        }
    ],
    "evidence_files": [
        {
            "tlsh": "ada194a905a6701987709be4c717a41af657f26373808294f79ca5885ff252483b2fec",
            "sha256": "241888027231290a2a10ba88ee520329e5efe45d9ec7d2a19efed8524634b40f",
            "path": "setup.js"
        },
        {
            "tlsh": "eed02b228430303341eae551acd24247bbd90f1f60389c0532bb2004005549d48da330",
            "sha256": "5265ccb5acaa44e30efee637a3c6c6b83752caccc3403e4df15d89457e36b6a5",
            "path": "package.json"
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/tramvai-tinkoff-module-legacy-popup/MAL-2026-12052.json"