MAL-2026-10517

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@tqm-mfe/main/MAL-2026-10517.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-10517
Aliases
  • GHSA-cg4c-94r8-hqjq
Published
2026-07-14T02:40:37Z
Modified
2026-07-20T03:35:36.743767277Z
Summary
Malicious code in @tqm-mfe/main (npm)
Details

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

Source: amazon-inspector (ba70610a96625984d6a26c5cfba828a98fad70a559f34eb881289f9ce4f625a1)

scripts/postinstall.js is a heavily obfuscated (obfuscator.io-style: 270+ entry rotated string array, RC4+base64 decoders, hex-encoded dispatchers) lifecycle script that runs automatically on npm install. On execution it (1) checks process.argv, process.env.NODE_OPTIONS, and process.execPath against decoded debug/inspector markers plus a wall-clock timing loop to skip the malicious branch under sandboxes and analyzers, then (2) performs an HTTPS fetch of a remote binary payload to a destination assembled at runtime from RC4/base64 fragments, (3) XOR-decrypts the response with a keyed buffer, (4) writes the decrypted files into a per-platform persistent app-data directory (Windows %APPDATA%/%LOCALAPPDATA%, macOS/Linux equivalents) via fs-extra copy/rename, (5) marks them executable, and (6) spawns them detached with stdio:'ignore' and windowsHide:true, unref'd from the installer process to survive after npm exits. In parallel, a beacon posts JSON containing the package name/version, an ISO timestamp, and a system object built from os.homedir(), os.type(), os.platform(), os.hostname(), and os.arch() to a runtime-decoded URL. The package's public metadata (author platform@tqm-mfe.io, repository github.tqm-mfe.io, homepage docs.tqm-mfe.io, README framing as an internal corporate mirror) does not correspond to a real public project and is consistent with a dependency-confusion lure targeting organizations that might resolve the @tqm-mfe scope from the public registry. All URLs, filenames, keys, and paths are decoded at runtime and none of this behavior is required by the advertised 'API mocking middleware' functionality.

Source: ghsa-malware (c9cd903d780d2706f8723736ace5c82fe90d58acba2c65c1037bc178cfa5d37d)

Any computer that has this package installed or running should be considered fully compromised. All secrets and keys stored on that computer should be rotated immediately from a different computer. The package should be removed, but as full control of the computer may have been given to an outside entity, there is no guarantee that removing the package will remove all malicious software resulting from installing it.

Database specific
{
    "malicious-packages-origins": [
        {
            "import_time": "2026-07-14T03:07:05.716393146Z",
            "source": "amazon-inspector",
            "sha256": "ba70610a96625984d6a26c5cfba828a98fad70a559f34eb881289f9ce4f625a1",
            "versions": [
                "5.4.7"
            ],
            "id": "IN-MAL-2026-010360",
            "modified_time": "2026-07-14T02:40:37Z"
        },
        {
            "import_time": "2026-07-20T03:23:10.350192301Z",
            "ranges": [
                {
                    "events": [
                        {
                            "introduced": "0"
                        }
                    ],
                    "type": "SEMVER"
                }
            ],
            "modified_time": "2026-07-20T02:08:21Z",
            "sha256": "c9cd903d780d2706f8723736ace5c82fe90d58acba2c65c1037bc178cfa5d37d",
            "id": "GHSA-cg4c-94r8-hqjq",
            "source": "ghsa-malware"
        }
    ]
}
References
Credits

Affected packages

npm / @tqm-mfe/main

Package

Name
@tqm-mfe/main
View open source insights on deps.dev
Purl
pkg:npm/%40tqm-mfe/main

Affected ranges

Type
SEMVER
Events
Introduced
0Unknown introduced version / All previous versions are affected

Affected versions

5.*
5.4.7

Database specific

indicators
{
    "evidence_files": [
        {
            "tlsh": "8714eb892740d447e89fdfffbf61e6e4e1197cc6c3c1244af314b96ce8985269a58b80",
            "sha256": "96f3d87fa93d5003e31444b78143431d2f8a695dee38d97711fc9f39334dee90",
            "path": "scripts/postinstall.js"
        },
        {
            "tlsh": "94113a35ce745e3316e425e6a97445027ea6080f5c5dbc0933c3012d8b8d1a614bd67e",
            "sha256": "e0c6695b05a48e79f9b5623b3cc3fa2ab8475ea44e1396e2811dcc2205682001",
            "path": "package.json"
        }
    ],
    "package_integrity": [
        {
            "filename": "main-5.4.7.tgz",
            "hashes": {
                "sha1": "0bb9049e0f732854b21e88f6465d99a8dec8d83e",
                "sha512_sri": "sha512-yd0YL/o7X3uayjwJETH/OIuM7gtZgry6CQNWVRnDxT+ptLBW7Ztj49R57HOSrezTCEA7TFD3Yb85REYVuqGrsg=="
            }
        }
    ]
}
cwes
[
    {
        "cweId": "CWE-506",
        "name": "Embedded Malicious Code",
        "description": "The product contains code that appears to be malicious in nature."
    },
    {
        "cweId": "CWE-506",
        "name": "Embedded Malicious Code",
        "description": "The product contains code that appears to be malicious in nature."
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@tqm-mfe/main/MAL-2026-10517.json"