Vulnerability · Published Oct 9, 2026 · Assigned by GitHub_M
CVE-2026-108259Tina: Code injection via unescaped Git branch name in generated client source
High 8.2
In plain English
A high-severity code injection in cli from @tinacms. Proof-of-concept exploit code is public. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 26% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Tina is a headless content management system. Prior to 3.0.0, @tinacms/cli reads Git branch values from VERCEL_GIT_COMMIT_REF, GITHUB_BRANCH, or HEAD, incorporates the raw value into the API URL, and interpolates that URL into JavaScript string literals in packages/@tinacms/cli/src/next/codegen/index.ts and packages/@tinacms/cli/src/next/codegen/codegen/plugin.ts. A crafted Git-valid branch name containing a quote can terminate the generated string and inject an expression that executes when the generated client module is imported during a preview build. The injected code runs with the build process privileges and can read environment credentials, modify deployment artifacts, or make network requests. This issue is fixed in version 3.0.0.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | @tinacms/cli | 3.0.0 | GHSA-pwhx-cvv3-qj5c |
Affected products (as reported)
Weakness: CWE-94 · Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N
References
- https://github.com/tinacms/tinacms/security/advisories/GHSA-pwhx-cvv3-qj5c x_refsource_CONFIRM
- https://github.com/tinacms/tinacms/pull/7526 x_refsource_MISC
- https://github.com/tinacms/tinacms/commit/d030d414d39e15de79bf36e4c728d57205e71dde x_refsource_MISC
- https://github.com/tinacms/tinacms/releases/tag/@tinacms/cli@3.0.0 x_refsource_MISC