Логотип exploitDog
Консоль
Логотип exploitDog

exploitDog

fstec логотип

BDU:2026-01028

Опубликовано: 21 янв. 2026
Источник: fstec
CVSS3: 5.5
CVSS2: 4.9
EPSS Низкий

Описание

Уязвимость функции path.join() менеджера пакетов pnpm связана с неверным ограничением имени пути к каталогу с ограниченным доступом при обработке поля directories.bin. Эксплуатация уязвимости может позволить нарушителю получить несанкционированный доступ к защищаемой информации и повысить свои привилегии

Вендор

Сообщество свободного программного обеспечения

Наименование ПО

pnpm

Версия ПО

до 10.28.2 (pnpm)

Тип ПО

Прикладное ПО информационных систем

Операционные системы и аппаратные платформы

-

Уровень опасности уязвимости

Средний уровень опасности (базовая оценка CVSS 2.0 составляет 4,9)
Средний уровень опасности (базовая оценка CVSS 3.1 составляет 5,5)
Средний уровень опасности (оценка CVSS 4.0 составляет 6,7)

Возможные меры по устранению уязвимости

Использование рекомендаций:
https://github.com/pnpm/pnpm/commit/17432ad5bbed5c2e77255ca6d56a1449bbcfd943
https://github.com/pnpm/pnpm/releases/tag/v10.28.2
Компенсирующие меры:
Добавьте функцию проверки путей isSubdir() поля directories.bin в файле pkg-manager/package-bins/src/index.ts, аналогичную существующей проверке в commandsFromBin():
if (manifest.directories?.bin) {
const binDir = path.join(pkgPath, manifest.directories.bin)
if (!isSubdir(pkgPath, binDir)) {
return [] // Reject paths outside package
}
// ...
}

Статус уязвимости

Подтверждена производителем

Наличие эксплойта

Существует в открытом доступе

Информация об устранении

Уязвимость устранена

Идентификаторы других систем описаний уязвимостей

EPSS

Процентиль: 2%
0.00015
Низкий

5.5 Medium

CVSS3

4.9 Medium

CVSS2

Связанные уязвимости

CVSS3: 5.5
nvd
8 дней назад

pnpm is a package manager. Prior to version 10.28.2, when pnpm processes a package's `directories.bin` field, it uses `path.join()` without validating the result stays within the package root. A malicious npm package can specify `"directories": {"bin": "../../../../tmp"}` to escape the package directory, causing pnpm to chmod 755 files at arbitrary locations. This issue only affects Unix/Linux/macOS. Windows is not affected (`fixBin` gated by `EXECUTABLE_SHEBANG_SUPPORTED`). Version 10.28.2 contains a patch.

CVSS3: 5.5
debian
8 дней назад

pnpm is a package manager. Prior to version 10.28.2, when pnpm process ...

github
8 дней назад

pnpm has Path Traversal via arbitrary file permission modification

EPSS

Процентиль: 2%
0.00015
Низкий

5.5 Medium

CVSS3

4.9 Medium

CVSS2