Description
A command injection vulnerability exists in nvm (Node Version Manager) versions 0.40.3 and below. The nvm_download() function uses eval to execute wget commands, and the NVM_AUTH_HEADER environment variable was not sanitized in the wget code path (though it was sanitized in the curl code path). An attacker who can set environment variables in a victim's shell environment (e.g., via malicious CI/CD configurations, compromised dotfiles, or Docker images) can inject arbitrary shell commands that execute when the victim runs nvm commands that trigger downloads, such as 'nvm install' or 'nvm ls-remote'.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| nvm-sh | nvm | 0.40.0 – ≤ 0.40.3 | 0.40.4 |
References
- Fix commit patch
- Release v0.40.4 release-notes
- nvm GitHub repository product
- https://github.com/nvm-sh/nvm/pull/3380