pnpm — менеджер пакетов. До версий 10.34.4 и 11.8.0 pnpm принимает имена пакетов из раздела configDependities файла блокировки env и использует эти имена непосредственно при создании символических ссылок зависимостей конфигурации в node_modules/.pnpm-config. Вредоносный репозиторий может зафиксировать созданный файл pnpm-lock.yaml, документ env-lockfile которого содержит имя зависимости конфигурации в форме обхода.
Во время установки pnpm pnpm устанавливает зависимость конфигурации и создает символическую ссылку по пути, полученному из этого имени. Эта уязвимость исправлена в версиях 10.34.4 и 11.8.0.
Показать оригинальное описание (EN)
pnpm is a package manager. Prior to 10.34.4 and 11.8.0, pnpm accepts package names from the env lockfile configDependencies section and uses those names directly when creating config dependency symlinks under node_modules/.pnpm-config. A malicious repository can commit a crafted pnpm-lock.yaml whose env-lockfile document contains a traversal-shaped config dependency name. During pnpm install, pnpm installs the config dependency and creates a symlink at a path derived from that name. This vulnerability is fixed in 10.34.4 and 11.8.0.
Характеристики атаки
Последствия
Строка CVSS v3.1
Тип уязвимости (CWE)
Уязвимые продукты 2
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Pnpm Pnpm
cpe:2.3:a:pnpm:pnpm:*:*:*:*:*:node.js:*:*
|
— |
10.34.4
|
|
Pnpm Pnpm
cpe:2.3:a:pnpm:pnpm:*:*:*:*:*:node.js:*:*
|
11.0.0
|
11.8.0
|