GHSA-3qcw-2rhx-2726LowCVSS 9.8
Turbo: Unexpected local code execution during Yarn Berry detection
🔗 CVE IDs covered (1)
📋 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.
🎯 Affected products3
- npm/turbo:>= 1.1.0, < 2.9.14
- npm/@turbo/codemod:>= 2.3.4, < 2.9.14
- npm/@turbo/workspaces:>= 2.3.4, < 2.9.14