PatchSiren cyber security CVE debrief
CVE-2026-108260 tinacms CVE debrief
The `@tinacms/web-components` package, specifically the `tina-markdown` component, is vulnerable to stored cross-site scripting (XSS). The component does not validate the scheme of URLs in rich-text links, allowing an attacker to inject malicious JavaScript code. This code can be executed when a user clicks on the link, potentially leading to unauthorized actions or data theft.
- Vendor
- tinacms
- Product
- @tinacms/web-components
- CVSS
- HIGH 7.6
- 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
Defenders responsible for securing web applications that use the `@tinacms/web-components` package, especially those that allow user-inputted content in rich-text fields, should be aware of this vulnerability and take steps to mitigate it.
Why it matters
The `@tinacms/web-components` package, specifically the `tina-markdown` component, is vulnerable to stored cross-site scripting (XSS). Defenders should prioritize updating the package and reviewing user-inputted content to prevent similar vulnerabilities.
- Potential unauthorized actions or data theft due to malicious JavaScript code execution
- Increased risk of XSS attacks due to lack of scheme validation for URLs in rich-text links
- Need for additional security measures, such as Content Security Policy (CSP), to prevent XSS attacks
Technical summary
The `tina-markdown` component in `@tinacms/web-components` does not validate the scheme of URLs in rich-text links, allowing an attacker to inject malicious JavaScript code. The component uses DOMPurify to sanitize HTML node values but does not inspect the `node.url` attribute, which is populated from the TinaCMS content API. This vulnerability can be mitigated by updating the `@tinacms/web-components` package to version 0.2.1 or later and reviewing and sanitizing user-inputted content in rich-text fields. Additionally, defenders should consider implementing additional security measures, such as Content Security Policy (CSP), to prevent XSS attacks.
Defensive priority
Defenders should prioritize updating the `@tinacms/web-components` package to version 0.2.1 or later to mitigate this vulnerability. Additionally, reviewing and sanitizing user-inputted content, especially in rich-text fields, is crucial to prevent similar vulnerabilities.
Recommended defensive actions
- Update the `@tinacms/web-components` package to version 0.2.1 or later
- Review and sanitize user-inputted content in rich-text fields
- Implement additional security measures to prevent XSS attacks, such as Content Security Policy (CSP)
- Confirm whether affected product deployments exist in managed environments and assign an owner for follow-up
- Review the supplied official advisory or CVE record to validate affected scope, severity, and vendor guidance
- Plan vendor-supported updates or mitigations through normal change control where exposure is confirmed
- Check relevant monitoring, detection, and logs for exposed assets that need extra review
Evidence notes
The vulnerability is caused by the lack of scheme validation for URLs in the `tina-markdown` component. The component uses DOMPurify to sanitize HTML node values but does not inspect the `node.url` attribute, which is populated from the TinaCMS content API.
Sources and references
Verified primary and authoritative sources
-
CVE-2026-108260 CVE Program record
Publisher, destination, and source semantics verified
URL: https://www.cve.org/CVERecord?id=CVE-2026-108260
CVE Program - Official CVE Program record with source-provided CVE metadata.
-
CVE-2026-108260 NVD vulnerability detail
Publisher, destination, and source semantics verified
URL: https://nvd.nist.gov/vuln/detail/CVE-2026-108260
NIST National Vulnerability Database - Official NIST NVD detail page and source-specific vulnerability assessment.
Supplemental references
-
@tinacms/web-components: `tina-markdown` writes rich-text link URLs into `href` without scheme v
Unverified legacy reference
URL: https://storage.googleapis.com/osv-vulnerabilities/npm/GHSA-c42q-qvc3-j6vg.json
osv_dev
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/security/advisories/GHSA-c42q-qvc3-j6vg
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/pull/7523
Supplemental source
-
Source reference
Unverified legacy reference
URL: https://github.com/tinacms/tinacms/commit/5295e077f0d279c35686a0e481a15e33a4877e3b
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.