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.

Severity (CVSS 3.1)8.2High
Exploit odds (30 days)0.3%top 73.5% of all CVEs
Exploited in the wildNo reportsCISA SSVC: poc
Attack toolingNoneno public tooling known

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

EcosystemPackageFixed inAdvisory
npm@tinacms/cli3.0.0GHSA-pwhx-cvv3-qj5c

Affected products (as reported)

VendorProductVersions
tinacms tinacms < 3.0.0
@tinacms cli < 3.0.0

Weakness: CWE-94 · Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:C/C:H/I:H/A:N

References