Мониторинг Карточка CVE
Открытые данные
К списку уязвимостей
Средний
PoCПатч
Опубликована

CVE-2026-15921

nvm path traversal via a malicious mirror's LTS codename writes outside the alias directory

Публикация: 16.07.2026·Обновлена: 16.07.2026, 15:53·Europe/Moscow

Что произошло

Перевод ещё не доступен · оригинальное описание

Node Version Manager (nvm) is a POSIX-compliant shell function for managing multiple node.js versions. In versions 0.32.1 through 0.40.5, `nvm ls-remote` (and other commands that refresh remote LTS aliases, such as `nvm install --lts`) parse the node.js mirror's `index.tab` and use each release's LTS codename field as an alias filename without validating it. A malicious, compromised, or man-in-the-middled mirror can return an LTS codename containing path-traversal sequences such as `../../../.bashrc`, causing nvm to write the associated version string to a path outside `$NVM_DIR/alias`. With the default layout (`$NVM_DIR` is `~/.nvm`), this can create or overwrite files in the user's home directory, including shell startup files, which can lead to code execution in a later shell session. Exploitation requires the victim to use a hostile mirror -- via a compromised mirror or CDN, a network man-in-the-middle, or a maliciously configured `NVM_NODEJS_ORG_MIRROR`/`NVM_IOJS_ORG_MIRROR` -- and to run an affected command. Version 0.40.6 validates remote LTS codenames as safe alias filenames and rejects `..` path components when writing alias files.

Что это значит

В источнике описана ошибка безопасности в перечисленных продуктах. Фактический риск зависит от установленной версии, конфигурации и доступности компонента; проверьте условия в первичном бюллетене.

Что делать

Сформировано автоматически из полей источников и общих шаблонов
Устранить в течение 30 дней

1. Проверьте, затронуты ли вы

Соберите инвентаризацию и сравните с таблицей затронутых версий. Эти команды только показывают установленные компоненты и сами по себе не доказывают наличие CVE.

Debian / Ubuntu
dpkg-query -W -f='${Package}	${Version}\n'
RHEL / AlmaLinux
rpm -qa --qf '%{NAME}\t%{VERSION}-%{RELEASE}\n'
Windows PowerShell
Get-HotFix | Select-Object HotFixID, InstalledOn
Общая рекомендация, не из бюллетеня вендора

2. Установите исправление

Upgrade to nvm 0.40.6 or later, which validates remote LTS codenames and rejects `..` path components when writing alias files. (Only needed if using a non-default mirror whose metadata contents you do not trust).

3. Временные меры

Until upgrading, only run `nvm ls-remote` and LTS-refreshing commands against trusted mirrors over TLS, and ensure `NVM_NODEJS_ORG_MIRROR` and `NVM_IOJS_ORG_MIRROR` point only at trusted endpoints.

4. Проверьте следы эксплуатации

Проверьте аномальные входы, новые учётные записи, ошибки и необычные дочерние процессы в затронутом сервисе. Публичные проверенные правила обнаружения не включены в запись; отсутствие сигналов не доказывает отсутствие компрометации.

Общая рекомендация, не из бюллетеня вендора

5. После исправления

  • Проверьте фактическую версию и результат установки по бюллетеню.
  • При необходимости перезапустите сервисы в согласованное окно.
  • Повторите проверку сканером и функциональные проверки.
  • Зафиксируйте результат, дату, владельца и оставшийся риск.

Продукты и затронутые версии

nvm-sh / nvm

{
  "status": "affected",
  "version": "0.32.1",
  "lessThan": "0.40.6",
  "versionType": "semver"
}

CVSS: оценки и векторы

CVSS 4.0 · cve2.1
CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:A/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N
AV · Вектор атакисеть
AC · Сложность атакинизкая
AT · Условия атакинужны условия
PR · Привилегиине нужны
UI · Участие пользователяактивное
VC · Конфиденциальность уязвимой системынет
VI · Целостность уязвимой системынизкое
VA · Доступность уязвимой системынет
SC · Конфиденциальность связанной системынет
SI · Целостность связанной системынет
SA · Доступность связанной системынет
CVSS 3.1 · cve3.1
CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:U/C:N/I:L/A:N
AV · Вектор атакисеть
AC · Сложность атакивысокая
PR · Привилегиине нужны
UI · Участие пользователятребуется
S · Область воздействияне меняется
C · Конфиденциальностьнет
I · Целостностьнизкое
A · Доступностьнет

Классы CWE

Источники и ссылки

Происхождение полей
{
  "cwes": [
    "cve"
  ],
  "epss": {
    "source": "epss",
    "received_at": "2026-10-31T08:57:23.167202+00:00"
  },
  "title": {
    "source": "cve",
    "received_at": "2026-10-28T18:30:32.230218+00:00"
  },
  "scores": [
    "cve"
  ],
  "status": {
    "source": "cve",
    "received_at": "2026-10-28T18:30:32.230218+00:00"
  },
  "affected": [
    "cve"
  ],
  "published": {
    "source": "cve",
    "received_at": "2026-10-28T18:30:32.230218+00:00"
  },
  "solutions": [
    "cve"
  ],
  "percentile": {
    "source": "epss",
    "received_at": "2026-10-31T08:57:23.167202+00:00"
  },
  "references": [
    "cve"
  ],
  "description": {
    "source": "cve",
    "received_at": "2026-10-28T18:30:32.230218+00:00"
  },
  "workarounds": [
    "cve"
  ],
  "configurations": []
}

Хронология записи

  1. Данные обновлены31.10.2026, 11:57
  2. Данные обновлены30.10.2026, 18:08
  3. Данные обновлены29.10.2026, 11:33
  4. Появилась ссылка на PoC28.10.2026, 21:30

Личная заметка и статус

Другие CVE того же продукта

УЯЗВИМОСТЬ / ПРОДУКТПРИОРИТЕТCVSSEPSSСИГНАЛЫОПУБЛИКОВАНАКарточка
CVE-2026-118905
nvm_ls lets an untrusted version string inject sed commands, executing arbitrary commands with GNU sed
nvm-sh / nvm
Высокий7.1
0,14 %
Патч
29.10.2026
CVE-2026-94185
nvm alias resolution follows `..` and discloses files outside $NVM_DIR/alias
nvm-sh / nvm
Средний6.7
0,22 %
21.09.2026
CVE-2026-10796
nvm executes commands from a malicious Node.js mirror's version strings
nvm-sh / nvm
Критический7.5
5 %
PoCПатч
04.06.2026
CVE-2026-1665
Command Injection in nvm via NVM_AUTH_HEADER in wget code path
nvm-sh / nvm
Средний5.4
0,78 %
Патч
30.01.2026