PatchSiren cyber security CVE debrief
CVE-2026-108259 tinacms CVE debrief
A code injection vulnerability exists in `@tinacms/cli` where an attacker can inject arbitrary JavaScript code via an unescaped Git branch name. This occurs when the raw branch name is inserted into the generated `client.ts` source without proper escaping or encoding. The vulnerability allows an attacker to inject arbitrary JavaScript code via an unescaped Git branch name, potentially leading to code execution and security breaches. Developers using `@tinacms/cli` should assess their exposure and verify the version being used. They should also review the generated client source code for any suspicious or unexpected changes. The codegen template at `index.ts:376` uses `url: '${api}'
- Vendor
- tinacms
- Product
- @tinacms/cli
- CVSS
- HIGH 8.2
- CISA KEV
- Not listed in stored evidence
- Original CVE published
- 2026-10-09
- Original CVE updated
- 2026-10-09
- Advisory published
- 2026-10-09
- Advisory updated
- 2026-10-09
Who should care
Developers using `@tinacms/cli` should assess their exposure and verify the version being used. They should also review the generated client source code for any suspicious or unexpected changes.
Why it matters
The vulnerability allows an attacker to inject arbitrary JavaScript code via an unescaped Git branch name, potentially leading to code execution and security breaches. Developers using `@tinacms/cli` should assess their exposure and verify the version being used.
- Code injection can lead to arbitrary code execution, potentially allowing an attacker to compromise the system.
- The vulnerability can be exploited by an attacker with access to the Git repository, potentially allowing them to inject malicious code.
- The injected code can be executed when the consumer build imports the generated client module, potentially leading to security breaches.
Technical summary
The `@tinacms/cli` package inserts the raw Git branch value into the generated `client.ts` source without escaping or encoding. A Git-valid branch name can close the string literal and inject an arbitrary JavaScript expression that executes when the consumer build imports the generated client module. The vulnerability can be exploited by an attacker with access to the Git repository, potentially allowing them to inject malicious code. The injected code can be executed when the consumer build imports the generated client module, potentially leading to security breaches.
Defensive priority
High
Recommended defensive actions
- Verify the version of `@tinacms/cli` being used and update to version 3.0.0 or later if necessary.
- Review the generated client source code for any suspicious or unexpected changes.
- Implement additional security measures such as input validation and sanitization for Git branch names.
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up.
- Review compensating controls for exposed systems while remediation is scheduled and verified.
- Check relevant monitoring, detection, and logs for exposed assets that need extra review.
- Track exceptions, retest remediated assets, and close the item only after evidence is documented.
Evidence notes
The vulnerability is caused by the lack of escaping or encoding of the Git branch name when it is inserted into the generated client source code. This can allow an attacker to inject arbitrary JavaScript code.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-108259 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-108259
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-108259 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-108259
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
Tina: Code injection via unescaped Git branch name in generated client source
Unverified legacy reference
URL: https://storage.googleapis.com/osv-vulnerabilities/npm/GHSA-pwhx-cvv3-qj5c.json
osv_dev
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/security/advisories/GHSA-pwhx-cvv3-qj5c
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/pull/7526
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/commit/d030d414d39e15de79bf36e4c728d57205e71dde
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/releases/tag/@tinacms/[email protected]
Supplemental source
Methodology and review provenance
AI-assisted synthesis based on stored public vulnerability evidence. System validation, approval state, and publication status do not by themselves establish human review of this revision. PatchSiren helps prioritize defensive review and does not prove exposure or remediation on any system.