{"id":"CVE-2026-94185","summary":"nvm alias resolution follows `..` and discloses files outside $NVM_DIR/alias","details":"nvm resolves a requested version or alias by treating it as a filename under $NVM_DIR/alias. Before 0.40.8, nvm_alias() concatenated the requested name onto that directory and read the result with no containment check, so a name containing a `..` component escaped the alias directory; under the default layout an alias such as `../../.npmrc` resolves to a file in the user's home directory. nvm_print_alias_file() then emits every non-comment, non-empty line of whatever was opened. A version string taken from an untrusted .nvmrc reaches this path, so a developer who runs `nvm use`, `nvm install`, or `nvm which` inside an attacker-supplied repository discloses the first non-comment line of an arbitrary file readable by that user, in the resulting \"is not yet installed\" error message. A user-supplied `nvm alias \u003ctraversing-name\u003e` discloses every non-comment line of the target file. There is no integrity or availability impact, and no command execution on this path.","aliases":["GHSA-8grh-q73j-ffrc"],"modified":"2026-09-25T03:48:57.427177264Z","published":"2026-09-21T02:27:00.752Z","database_specific":{"cna_assigner":"harborist","cwe_ids":["CWE-200","CWE-22"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/94xxx/CVE-2026-94185.json"},"references":[{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/94xxx/CVE-2026-94185.json"},{"type":"ADVISORY","url":"https://github.com/nvm-sh/nvm/security/advisories/GHSA-8grh-q73j-ffrc"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-94185"},{"type":"PACKAGE","url":"https://github.com/nvm-sh/nvm"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/nvm-sh/nvm","events":[{"introduced":"0"},{"fixed":"a885b885fef16fac4bc544188fb25e9e37ae83e8"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"last_affected":"0.40.7"},{"fixed":"0.40.8"}],"source":["AFFECTED_FIELD","DESCRIPTION"]}}],"versions":["v0.40.7","v0.40.6","v0.40.5","v0.40.4","v0.40.3","v0.40.2","v0.40.1","v0.40.0","v0.39.7","v0.39.6","v0.39.5","v0.39.4","v0.39.3","v0.39.2","v0.39.1","v0.39.0","v0.38.0","v0.37.2","v0.37.1","v0.37.0","v0.36.0","v0.35.3","v0.35.2","v0.35.1","v0.35.0","v0.34.0","v0.33.9","v0.33.8","v0.33.7","v0.33.6","v0.33.5","v0.33.4","v0.33.3","v0.33.2","v0.33.1","v0.33.0","v0.32.1","v0.32.0","v0.31.7","v0.31.6","v0.31.5","v0.31.4","v0.31.3","v0.31.2","v0.31.1","v0.31.0","v0.30.2","v0.30.1","v0.30.0","v0.29.0","v0.28.0","v0.27.1","v0.27.0","v0.26.1","v0.26.0","v0.25.4","v0.25.3","v0.24.1","v0.25.2","v0.25.1","v0.25.0","v0.24.0","v0.23.3","v0.23.2","v0.23.1","v0.23.0","v0.22.2","v0.22.1","v0.22.0","v0.21.0","v0.20.0","v0.19.0","v0.18.0","v0.17.2","v0.17.1","v0.17.0","v0.16.1","v0.16.0","v0.15.0","v0.14.0","v0.13.1","v0.13.0","v0.12.2","v0.12.1","v0.12.0","v0.11.2","v0.11.1","v0.11.0","v0.10.0","v0.9.0","v0.8.0","v0.7.0","v0.6.1","v0.6.0","v0.5.1","v0.5.0","v0.4.0","v0.3.0","v0.2.0","v0.1.0","v0.0.6","v0.0.1"],"database_specific":{"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-94185.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N"}]}