ghsa-w87r-vg9q-crqm
Vulnerability from github
Published
2025-11-20 18:31
Modified
2025-11-21 18:01
Severity ?
VLAI Severity ?
Summary
zx Uses Incorrectly-Resolved Name or Reference
Details
When zx is invoked with --prefer-local=, the CLI creates a symlink named ./node_modules pointing to /node_modules. Due to a logic error in src/cli.ts (linkNodeModules / cleanup), the function returns the target path instead of the alias (symlink path). The later cleanup routine removes what it received, which deletes the target directory itself. Result: zx can delete an external /node_modules outside the current working directory.
{
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "zx"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "8.8.5"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-13437"
],
"database_specific": {
"cwe_ids": [
"CWE-706"
],
"github_reviewed": true,
"github_reviewed_at": "2025-11-21T18:01:32Z",
"nvd_published_at": "2025-11-20T17:15:49Z",
"severity": "MODERATE"
},
"details": "When zx is invoked with --prefer-local=\u003cpath\u003e, the CLI creates a symlink named ./node_modules pointing to \u003cpath\u003e/node_modules. Due to a logic error in src/cli.ts (linkNodeModules / cleanup), the function returns the target path instead of the alias (symlink path). The later cleanup routine removes what it received, which deletes the target directory itself. Result: zx can delete an external \u003cpath\u003e/node_modules outside the current working directory.",
"id": "GHSA-w87r-vg9q-crqm",
"modified": "2025-11-21T18:01:32Z",
"published": "2025-11-20T18:31:01Z",
"references": [
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-13437"
},
{
"type": "WEB",
"url": "https://github.com/google/zx/issues/1348"
},
{
"type": "WEB",
"url": "https://github.com/google/zx/pull/1349"
},
{
"type": "WEB",
"url": "https://github.com/google/zx/pull/1355"
},
{
"type": "WEB",
"url": "https://github.com/google/zx/commit/9ef6d3c9962c4ba01e3fb8075855570c192b4681"
},
{
"type": "WEB",
"url": "https://github.com/google/zx/commit/a4d1bc2467f305f1c91d62506e215f307dc1fbeb"
},
{
"type": "PACKAGE",
"url": "https://github.com/google/zx"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:N/VI:H/VA:H/SC:N/SI:H/SA:H/E:U",
"type": "CVSS_V4"
}
],
"summary": "zx Uses Incorrectly-Resolved Name or Reference"
}
Loading…
Loading…
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.
Loading…
Loading…