{"items":[{"id":"NVI-00015299","kind":"vulnerability","title":"Shescape: Shell injection via unescaped parentheses on Windows with CMD","revision":2,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected.","NVD lastModified does not establish freshness of every associated CPE record."],"lifecycle":"active","identifiers":["GHSA-w4hw-qcx7-56pr","CVE-2026-73414"],"plain_summary":"GitHub lists this reviewed advisory for shescape, shescape. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-15b22cc1f338b20bfe0bc8f90f38c68e"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[{"kind":"CVSS","as_of":"2026-10-24T15:10:00.190Z","value":"9.2 CRITICAL (4.0)","meaning":"security-advisories@github.com severity; no combined Null risk score.","source_id":"sr-15b22cc1f338b20bfe0bc8f90f38c68e"}],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-5679d1b387a59eb721e1d42d02c77a4d","url":"https://github.com/advisories/GHSA-w4hw-qcx7-56pr","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-w4hw-qcx7-56pr","publisher":"GitHub Advisory Database","observed_at":"2026-11-02T20:17:12.848Z"},{"id":"sr-15b22cc1f338b20bfe0bc8f90f38c68e","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-73414","basis":"official_catalog","notes":"This product uses data from the NVD API but is not endorsed or certified by the NVD.","title":"CVE-2026-73414","publisher":"NIST National Vulnerability Database","observed_at":"2026-11-08T19:45:24.870Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-5679d1b387a59eb721e1d42d02c77a4d"],"technology":"shescape","known_exclusions":[],"conditions_summary":"### Impact\n\nThis impacts users of Shescape on Windows that explicitly configure `shell` to CMD, or `true` with the default shell being CMD, using the `escape` and `escapeAll` APIs.\n\nAn attacker may be able to achieve shell injection depending on the original command.\n\n```javascript\nimport * as cp from \"node:child_process\";\nimport { Shescape } from \"shescape\";\n\n// 1. Prerequisites\nconst options = {\n    shell: \"cmd.exe\",\n    // Or\n    shell: true, // Only if the default shell is CMD\n};\n\n// 2. Payload\nconst payload = \"x) else if a==a (echo y\";\n\n// 3. Usage\nconst shescape = new Shescape(options);\nlet escapedPayload;\n\nescapedPayload = shescape.escape(payload);\n// Or\nescapedPayload = shescape.escapeAll([payload]);\n\n// And (example)\nconst result = cp.execSync(`if defined FALSY (echo ${escapedPayload})`, options);\n\n// 4. Impact\nconsole.log(result.toString());\n// Outputs \"y\" instead of \"\"\n\n```\n\n### Patches\n\nThis bug has been patched in [v2.1.14] and [v3.0.1] which you can upgrade to now.\n\nIf you are already using v3 of Shescape, no further changes are required. If you are using v2 of Shescape is recommended to upgrade as this version reaches end-of-life status on 2026-09-28, follow the [mig","public_affected_ranges":["< 2.1.14"]},{"certainty":"source_listed","source_ids":["sr-5679d1b387a59eb721e1d42d02c77a4d"],"technology":"shescape","known_exclusions":[],"conditions_summary":"### Impact\n\nThis impacts users of Shescape on Windows that explicitly configure `shell` to CMD, or `true` with the default shell being CMD, using the `escape` and `escapeAll` APIs.\n\nAn attacker may be able to achieve shell injection depending on the original command.\n\n```javascript\nimport * as cp from \"node:child_process\";\nimport { Shescape } from \"shescape\";\n\n// 1. Prerequisites\nconst options = {\n    shell: \"cmd.exe\",\n    // Or\n    shell: true, // Only if the default shell is CMD\n};\n\n// 2. Payload\nconst payload = \"x) else if a==a (echo y\";\n\n// 3. Usage\nconst shescape = new Shescape(options);\nlet escapedPayload;\n\nescapedPayload = shescape.escape(payload);\n// Or\nescapedPayload = shescape.escapeAll([payload]);\n\n// And (example)\nconst result = cp.execSync(`if defined FALSY (echo ${escapedPayload})`, options);\n\n// 4. Impact\nconsole.log(result.toString());\n// Outputs \"y\" instead of \"\"\n\n```\n\n### Patches\n\nThis bug has been patched in [v2.1.14] and [v3.0.1] which you can upgrade to now.\n\nIf you are already using v3 of Shescape, no further changes are required. If you are using v2 of Shescape is recommended to upgrade as this version reaches end-of-life status on 2026-09-28, follow the [mig","public_affected_ranges":[">= 3.0.0, < 3.0.1"]}],"null_published_at":"2026-11-08T19:53:44.028Z","source_updated_at":"2026-08-12T19:43:06.000Z","source_disclosed_at":"2026-07-24T22:34:23.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"Source facts changed; compare the preserved prior revision.","null_first_observed_at":"2026-11-02T20:17:12.848Z"},{"id":"NVI-00015299","kind":"vulnerability","title":"Shescape: Shell injection via unescaped parentheses on Windows with CMD","revision":1,"unknowns":["Customer inventory, deployment, reachability and exploitation have not been inspected."],"lifecycle":"active","identifiers":["GHSA-w4hw-qcx7-56pr","CVE-2026-73414"],"plain_summary":"GitHub lists this reviewed advisory for shescape, shescape. Published version ranges and source prerequisites are shown below; this is not an inspection of a visitor’s application.","review_status":"source_listed","control_topics":[],"public_actions":[{"summary":"Identify the exact component and deployed version, examine the linked publisher’s conditions, and retain evidence of any mitigation.","source_ids":["sr-5679d1b387a59eb721e1d42d02c77a4d"],"action_type":"investigate","limitations":"Confirm current vendor support, compatibility and deployment evidence. This report has not tested a fix in your system.","current_supported_target":null}],"schema_version":"1.1.0","source_metrics":[],"why_it_matters":"Published affected context helps an owner decide what evidence to gather. This report has not examined your application.","related_sources":[{"id":"sr-5679d1b387a59eb721e1d42d02c77a4d","url":"https://github.com/advisories/GHSA-w4hw-qcx7-56pr","basis":"vendor_advisory","notes":"GitHub Advisory Database; CC-BY-4.0. Each advisory links its original attribution. Null normalizes fields.","title":"GHSA-w4hw-qcx7-56pr","publisher":"GitHub Advisory Database","observed_at":"2026-11-02T20:17:12.848Z"}],"affected_context":[{"certainty":"source_listed","source_ids":["sr-5679d1b387a59eb721e1d42d02c77a4d"],"technology":"shescape","known_exclusions":[],"conditions_summary":"### Impact\n\nThis impacts users of Shescape on Windows that explicitly configure `shell` to CMD, or `true` with the default shell being CMD, using the `escape` and `escapeAll` APIs.\n\nAn attacker may be able to achieve shell injection depending on the original command.\n\n```javascript\nimport * as cp from \"node:child_process\";\nimport { Shescape } from \"shescape\";\n\n// 1. Prerequisites\nconst options = {\n    shell: \"cmd.exe\",\n    // Or\n    shell: true, // Only if the default shell is CMD\n};\n\n// 2. Payload\nconst payload = \"x) else if a==a (echo y\";\n\n// 3. Usage\nconst shescape = new Shescape(options);\nlet escapedPayload;\n\nescapedPayload = shescape.escape(payload);\n// Or\nescapedPayload = shescape.escapeAll([payload]);\n\n// And (example)\nconst result = cp.execSync(`if defined FALSY (echo ${escapedPayload})`, options);\n\n// 4. Impact\nconsole.log(result.toString());\n// Outputs \"y\" instead of \"\"\n\n```\n\n### Patches\n\nThis bug has been patched in [v2.1.14] and [v3.0.1] which you can upgrade to now.\n\nIf you are already using v3 of Shescape, no further changes are required. If you are using v2 of Shescape is recommended to upgrade as this version reaches end-of-life status on 2026-09-28, follow the [mig","public_affected_ranges":["< 2.1.14"]},{"certainty":"source_listed","source_ids":["sr-5679d1b387a59eb721e1d42d02c77a4d"],"technology":"shescape","known_exclusions":[],"conditions_summary":"### Impact\n\nThis impacts users of Shescape on Windows that explicitly configure `shell` to CMD, or `true` with the default shell being CMD, using the `escape` and `escapeAll` APIs.\n\nAn attacker may be able to achieve shell injection depending on the original command.\n\n```javascript\nimport * as cp from \"node:child_process\";\nimport { Shescape } from \"shescape\";\n\n// 1. Prerequisites\nconst options = {\n    shell: \"cmd.exe\",\n    // Or\n    shell: true, // Only if the default shell is CMD\n};\n\n// 2. Payload\nconst payload = \"x) else if a==a (echo y\";\n\n// 3. Usage\nconst shescape = new Shescape(options);\nlet escapedPayload;\n\nescapedPayload = shescape.escape(payload);\n// Or\nescapedPayload = shescape.escapeAll([payload]);\n\n// And (example)\nconst result = cp.execSync(`if defined FALSY (echo ${escapedPayload})`, options);\n\n// 4. Impact\nconsole.log(result.toString());\n// Outputs \"y\" instead of \"\"\n\n```\n\n### Patches\n\nThis bug has been patched in [v2.1.14] and [v3.0.1] which you can upgrade to now.\n\nIf you are already using v3 of Shescape, no further changes are required. If you are using v2 of Shescape is recommended to upgrade as this version reaches end-of-life status on 2026-09-28, follow the [mig","public_affected_ranges":[">= 3.0.0, < 3.0.1"]}],"null_published_at":"2026-11-03T10:03:26.568Z","source_updated_at":"2026-08-12T19:43:06.000Z","source_disclosed_at":"2026-07-24T22:34:23.000Z","is_synthetic_fixture":false,"null_last_reviewed_at":null,"public_change_summary":"First indexed by Null; source disclosure date is shown separately.","null_first_observed_at":"2026-11-02T20:17:12.848Z"}],"next_cursor":null,"snapshot_revision":"42594"}