MAL-2026-18517

See a problem?
Import Source
https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@atedone/workspace-context/MAL-2026-18517.json
JSON Data
https://api.osv.dev/v1/vulns/MAL-2026-18517
Published
2026-11-03T04:36:25Z
Modified
2026-11-03T05:15:05Z
Summary
Malicious code in @atedone/workspace-context (npm)
Details

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

Source: amazon-inspector (831ecc7c41217227ee159b85e4510e3d58c956be016bd7582e94fefb011565fe)

On require(), the package's top-level state.initialize() writes shell integration files into ~/.config/workspace-context (init.zsh,.zshrc, session-runtime.js, presentation.js, channel.json) and spawns a detached, unref'd Node worker that launches /bin/zsh -i with ZDOTDIR pointed at that directory. The injected init.zsh installs a zsh precmd hook that re-executes a sibling script on every prompt, giving a persistent shell foothold triggered by merely importing the module. session.js fetches http://150.136.8.159:8080/workspace/profile over plaintext HTTP from a hardcoded bare IP, appending?username= read from env.USER/LOGNAME, writes the response to session-profile.json, and presentation.js injects fields from that remote JSON directly into the user's live zsh PROMPT via %F{tone}text%f substitution — remote attacker-controlled content is rendered through zsh prompt expansion on every command. Sensitive API names are reassembled at runtime from string fragments to defeat static analysis: ['bin','ding'].join(''), ['sp','awn','_','sync'].join(''), ['sp','awn'].join(''), ['child','_process'].join(''), ['fe','tch'].join(''), and the env-var name ['WORKSPACE','_CONTEXT','_CHANNEL'].join(''). Access to child_process/fetch is funneled through Reflect.get/Reflect.apply with no plain literal references anywhere. refreshShellIntegration obtains the internal process.binding('spawn_sync') handle to execute node lib/sync.js, bypassing the public child_process module. The package has no legitimate need, consistent with its stated purpose, to spawn an interactive shell at import time, hook zsh precmd, or fetch remote content from a bare IP over cleartext HTTP.

Database specific
{
    "malicious-packages-origins": [
        {
            "id": "IN-MAL-2026-022516",
            "import_time": "2026-11-03T05:12:07.696434644Z",
            "modified_time": "2026-11-03T04:36:37Z",
            "sha256": "06a5c20ca8737767d4a4055c6351a0fc595d36cde1d6ee57c48197c4b5fd9c32",
            "source": "amazon-inspector",
            "versions": [
                "0.0.23"
            ]
        },
        {
            "id": "IN-MAL-2026-022523",
            "import_time": "2026-11-03T05:12:08.477353736Z",
            "modified_time": "2026-11-03T04:37:33Z",
            "sha256": "0e68dac959a78eb255b1677a1bf5249b72193df9fcfb6c5c39fd033459bdfd73",
            "source": "amazon-inspector",
            "versions": [
                "0.0.14"
            ]
        },
        {
            "id": "IN-MAL-2026-022515",
            "import_time": "2026-11-03T05:12:07.583829594Z",
            "modified_time": "2026-11-03T04:36:25Z",
            "sha256": "1b106d796b5f8cfd8377a5005558c583f27f5211c26ffa8859cf9f830086396a",
            "source": "amazon-inspector",
            "versions": [
                "0.0.25"
            ]
        },
        {
            "id": "IN-MAL-2026-022519",
            "import_time": "2026-11-03T05:12:08.051288026Z",
            "modified_time": "2026-11-03T04:37:04Z",
            "sha256": "1c6aa08cde955fb3d855acd029084b1a4a3abf1db8ac18b38a34c09904b05d15",
            "source": "amazon-inspector",
            "versions": [
                "0.0.22"
            ]
        },
        {
            "id": "IN-MAL-2026-022522",
            "import_time": "2026-11-03T05:12:08.373009238Z",
            "modified_time": "2026-11-03T04:37:25Z",
            "sha256": "3ba610eb6aae692c2afbe810b9826377b804b845c477a7efdb4882c8737292ef",
            "source": "amazon-inspector",
            "versions": [
                "0.0.20"
            ]
        },
        {
            "id": "IN-MAL-2026-022524",
            "import_time": "2026-11-03T05:12:08.573738907Z",
            "modified_time": "2026-11-03T04:37:39Z",
            "sha256": "86e5be40b75afda5a03fe67b732b58bea64ffc1cd8ae4b57f21d903a84ad4e13",
            "source": "amazon-inspector",
            "versions": [
                "0.0.15"
            ]
        },
        {
            "id": "IN-MAL-2026-022526",
            "import_time": "2026-11-03T05:12:08.810021014Z",
            "modified_time": "2026-11-03T04:37:56Z",
            "sha256": "9c383c065025e070e8ea437b4cf012bc5656ebb840162a2d1e1f0577389ecaaf",
            "source": "amazon-inspector",
            "versions": [
                "0.0.19"
            ]
        },
        {
            "id": "IN-MAL-2026-022528",
            "import_time": "2026-11-03T05:12:09.061416175Z",
            "modified_time": "2026-11-03T04:38:13Z",
            "sha256": "9fc8d0491516fd7b80d4b8fdf9fe04e27e631ad5a173f0085525b3045888a336",
            "source": "amazon-inspector",
            "versions": [
                "0.0.13"
            ]
        },
        {
            "id": "IN-MAL-2026-022527",
            "import_time": "2026-11-03T05:12:08.934001431Z",
            "modified_time": "2026-11-03T04:38:04Z",
            "sha256": "c18d176322a9bff4abe6e40a8764addecc2406a1886d2bc8636fe41180a1e5cd",
            "source": "amazon-inspector",
            "versions": [
                "0.0.12"
            ]
        },
        {
            "id": "IN-MAL-2026-022521",
            "import_time": "2026-11-03T05:12:08.274106471Z",
            "modified_time": "2026-11-03T04:37:19Z",
            "sha256": "14b3d55c48466fcafc6ee9e77b0d919a15220d18c0611ab9ab80e90d5e137220",
            "source": "amazon-inspector",
            "versions": [
                "0.0.18"
            ]
        },
        {
            "id": "IN-MAL-2026-022520",
            "import_time": "2026-11-03T05:12:08.153195535Z",
            "modified_time": "2026-11-03T04:37:11Z",
            "sha256": "81f301a8047b722c690b1a1e543bddb7abc5ba9654f349a2f507bf0d5b64b884",
            "source": "amazon-inspector",
            "versions": [
                "0.0.21"
            ]
        },
        {
            "id": "IN-MAL-2026-022517",
            "import_time": "2026-11-03T05:12:07.794863328Z",
            "modified_time": "2026-11-03T04:36:46Z",
            "sha256": "831ecc7c41217227ee159b85e4510e3d58c956be016bd7582e94fefb011565fe",
            "source": "amazon-inspector",
            "versions": [
                "0.0.24"
            ]
        },
        {
            "id": "IN-MAL-2026-022525",
            "import_time": "2026-11-03T05:12:08.703826704Z",
            "modified_time": "2026-11-03T04:37:48Z",
            "sha256": "d89bc8fdfd1b2d5976773504bdd72fa4a2edf30861629c39d157359ec91ae2ab",
            "source": "amazon-inspector",
            "versions": [
                "0.0.16"
            ]
        },
        {
            "id": "IN-MAL-2026-022518",
            "import_time": "2026-11-03T05:12:07.948834553Z",
            "modified_time": "2026-11-03T04:36:55Z",
            "sha256": "f858d766ef2b672a0f9faac70bd7709a0a3a337cdb65a05862d81dd027d221ef",
            "source": "amazon-inspector",
            "versions": [
                "0.0.17"
            ]
        }
    ]
}
References
Credits

Affected packages

npm / @atedone/workspace-context

Package

Name
@atedone/workspace-context
View open source insights on deps.dev
Purl
pkg:npm/%40atedone/workspace-context

Affected ranges

Affected versions

0.*
0.0.12
0.0.13
0.0.14
0.0.15
0.0.16
0.0.17
0.0.18
0.0.19
0.0.20
0.0.21
0.0.22
0.0.23
0.0.24
0.0.25

Database specific

cwes
[
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    },
    {
        "cweId": "CWE-506",
        "description": "The product contains code that appears to be malicious in nature.",
        "name": "Embedded Malicious Code"
    }
]
indicators
{
    "evidence_files": [
        {
            "path": "lib/default-profile.json",
            "sha256": "cde3f3d9ee6938a393e2a9edd3f83b164aa2ac486c1ef5b2d493aa511ca47f80",
            "tlsh": "8dc02b6dc5841c1308dc7e4052e48c4050054c4340023c1257c34b0c8fdca77647080d"
        },
        {
            "path": "lib/state.js",
            "sha256": "e683a53424f9f5d39de6712865b11ce7296c3fa0ffb90f8be2862b9e44fd7486",
            "tlsh": "122297cbf4faa41a1e93fc1cd16b402571388527344e9598f5ad86282faf61873e35cb"
        },
        {
            "path": "index.js",
            "sha256": "7430c7be53898e9d9f68399ca79684b6e5a5b6fd59737b61d676e6b3e09faf48",
            "tlsh": "65118ecf94599cffed70e944f8fc447351a2242d64232524f8e943da392da5332ad5d2"
        }
    ],
    "package_integrity": [
        {
            "filename": "workspace-context-0.0.23.tgz",
            "hashes": {
                "sha1": "9fef2461da39e9f18ac226e70f743ccdc925a161",
                "sha512_sri": "sha512-PJv7S5EkvclkVhzqDDeN1uvqBTaZIXC09oz0tog5PZLfjrPzC8Bq1dHi8TwRrrpCi8jHziN+Cgp9qDSNklmgrg=="
            }
        }
    ]
}
source
"https://github.com/ossf/malicious-packages/blob/main/osv/malicious/npm/@atedone/workspace-context/MAL-2026-18517.json"