GitHub Advisoryadvisory · npm

GHSA-3qcw-2rhx-2726 Turbo: Unexpected local code execution during Yarn Berry detection

LOW Published 2026-05-19 Modified 2026-05-19 Official page ↗
Aliases
CVE-2026-45772
Ecosystem
npm
Packages
turbo, @turbo/codemod, @turbo/workspaces
Severity
Low
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Weaknesses
CWE-426
Reviewed
2026-05-19

Affected packages

• npm turbo: >= 1.1.0, < 2.9.14 → fixed in 2.9.14 • npm @turbo/codemod: >= 2.3.4, < 2.9.14 → fixed in 2.9.14 • npm @turbo/workspaces: >= 2.3.4, < 2.9.14 → fixed in 2.9.14

Description

Impact Turborepo can be vulnerable to arbitrary code execution when run in untrusted repositories that contain malicious Yarn configuration. In affected versions, package manager detection executed `yarn --version` from the project directory, which could cause Yarn to load and execute a project-controlled `yarnPath` from `.yarnrc.yml`. An attacker who controls repository contents could cause code execution when a user or CI system runs affected `turbo`, `@turbo/codemod`, or `@turbo/workspace` conversion commands. Fix Turbo now avoids executing project-local Yarn during package manager detection. Yarn versions and paths are inferred from metadata such as `package.json`, parsing the value of `yarnPath` in `.yarnrc.yml` rather than executing it, and `yarn.lock`, and unrecognized Yarn lockfile formats are rejected instead of falling back to executing `yarn`. Workarounds If you cannot upgrade immediately, do not run Turborepo commands in untrusted repositories. Review or remove `.yarnrc.yml` files that define `yarnPath` before running Turborepo, especially in CI or automated tooling that processes external projects.

Related

Alias · CVE (1)

  • CVE-2026-45772 Turborepo is a high-performance build system for JavaScript and TypeScript codebases. vulnerability

Weakness · CWE (1)

  • CWE-426 Untrusted Search Path weakness

References