CVE-2026-121749: nvm passes the version pattern to grep without -e, letting a .nvmrc inject grep options and read local files
- Is it exploited?
Not on CISA's list. CISA has not added it to the Known Exploited Vulnerabilities catalog as of . If CISA adds it, this page shows it as known exploited.
- How likely is exploitation in the next 30 days?
- 0.2%
EPSS score, percentile 5.5 of all scored records. A probability estimated by FIRST, not a report of exploitation.
- How severe?
- 4.6 Medium
CVSS v4.0 base score, given by the CNA
- What should I do?
Upgrade to nvm 0.41.0 or later.Solution from the CVE record.
CISA has set no required action, because the vulnerability is not in KEV.
- Which versions are affected?
Affected
- from 0.5.0 to before 0.41.0
Source: CISA KEV 2026.11.10, as of ; FIRST EPSS, as of ; CVE List, as of . About the data.
Description
nvm passes the version pattern to grep without -e, letting a .nvmrc inject grep options and read local files
Node Version Manager (nvm) is a POSIX-compliant shell function for managing multiple node.js versions. In versions 0.5.0 through 0.40.8, the requested version pattern is passed to `grep` as a bare argument, without `-e`, in `nvm_ls_remote_index_tab`, `nvm_remote_version`, and `nvm_ls_cached`. A `.nvmrc` whose first line starts with `-`, such as `-Rohenpm_[A-Za-z0-9]*`, is parsed as grep options; with GNU grep, `-R` searches the current directory recursively (following symlinks) instead of the version list. On a bare `nvm install`, nvm then treats a matched string from those files as the version, prints it, and requests it from the configured mirror inside download URLs, so for example a repository containing a symlink to `../../.npmrc` can leak the user's npm token to the terminal and to the mirror's and any proxy's logs. The disclosure is read-only and limited to the characters `0-9A-Za-z._+-`. Version 0.41.0 passes every version pattern to grep with `-e`.
Source: CVE List, as of . About the data.
What to do
Advisories and patches
Workaround (from the CVE record)
Until upgrading, check that `.nvmrc` does not start with `-` before running nvm in an untrusted project directory.
This summary is based on the CVE record as of . Check the vendor's advisory before you act: affected versions and fixes can change.
Affected products and versions
Versions by product, as listed in the CVE record (1 product)
| Status | Versions |
|---|---|
| Affected | from 0.5.0 to before 0.41.0 |
Versions not listed are: unaffected.
Source: CVE List, as of . About the data.
Weakness
CWE-88
- CWE-88: Improper Neutralization of Argument Delimiters in a Command ('Argument Injection')
CWE and CAPEC are maintained by MITRE; the entries are those named in the CVE record.
Timeline
| Date | Event |
|---|---|
| CVE record published | |
| CVE record last updated |