Read the docs
TI-2026-40184 Aliases CVE-2026-55661GHSA-2vcc-5v34-9jc8

TinaCMS rich-text (slatejson) rendering does not sanitize link/image URLs, allowing stored XSS via dangerous URL schemes

Priority LOW 22CWE-79Published · Updated

Key facts

Attack vector
Network
Privileges required
Low
User interaction
Active
Attack complexity
Low
Attack requirements
None
Impact type
Cross-site scripting
Confidentiality · integrity · availability
None · None · None
Fix status
Fixed

Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub. Impact type from CWE-79.

Summary

Tina is a headless content management system. In versions prior to @tinacms/mdx 2.1.7 and tinacms 3.9.3, rich-text parsing and the default link/image renderers did not sanitize the url field on Slate link/image nodes. Content containing javascript: or data:text/html URLs — including case-variant, whitespace-padded, and control-character-obfuscated forms — is rendered into href/src and executes when the content is viewed. Any actor able to author rich-text content (for example a lower-privileged editor, or imported/external content) can achieve stored XSS against editors and site viewers. This issue is fixed in versions @tinacms/mdx 2.1.7 and tinacms 3.9.3.

Why it matters now

Exploitation None reported CISA SSVC · not in CISA KEV
EPSS 0.00405 34th percentileScored 2026-11-07
Fix Fixed tinacms (tinacms): 3.9.3@tinacms/mdx (tinacms): 2.1.7+2 more products

SSVC decision points

CISA ADP · SSVC 2.0.3

Exploitation
None
Automatable
No
Technical impact
Partial

The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.

Affected products

VendorProductAffected versionsFixed inStatusSource
tinacmstinacmsbefore 3.9.33.9.3Patch availableCNA
tinacms@tinacms/mdxbefore 2.1.72.1.7Patch availableCNA
—tinacms (npm)before 3.9.33.9.3Patch availableGHSA-2vcc-5v34-9jc8
—@tinacms/mdx (npm)before 2.1.72.1.7Patch availableGHSA-2vcc-5v34-9jc8
  • tinacms Vendortinacms Affected before 3.9.3 Fixed in 3.9.3 Patch available CNA
  • @tinacms/mdx Vendortinacms Affected before 2.1.7 Fixed in 2.1.7 Patch available CNA
  • tinacms (npm) Vendor— Affected before 3.9.3 Fixed in 3.9.3 Patch available GHSA-2vcc-5v34-9jc8
  • @tinacms/mdx (npm) Vendor— Affected before 2.1.7 Fixed in 2.1.7 Patch available GHSA-2vcc-5v34-9jc8

Remediation

  • Fix · CNA tinacms (tinacms) Fixed in 3.9.3
  • Fix · CNA @tinacms/mdx (tinacms) Fixed in 2.1.7
  • Fix · GHSA-2vcc-5v34-9jc8 tinacms (npm) Fixed in 3.9.3 Advisory →
  • Fix · GHSA-2vcc-5v34-9jc8 @tinacms/mdx (npm) Fixed in 2.1.7 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2026-55661
  2. 2026-10-03 Alias added: GHSA-2vcc-5v34-9jc8

References

  • TI-2026-22987 Cross-Origin File Exfiltration via CORS Misconfiguration + Path Traversal in TinaCMS CVSS 3.1CRITICAL 9.7
  • TI-2026-70295 TinaCMS admin preview frames attacker-controlled origin CVSS 3.1CRITICAL 9.3
  • TI-2026-45239 Tina: [Broken Access Control] letting any TinaCloud user authorize against any self-hosted site CVSS 3.1HIGH 8.8
  • TI-2026-26851 @tinacms/graphql's `FilesystemBridge` Path Validation Can Be Bypassed via Symlinks or Junctions CVSS 3.1HIGH 8.8
  • TI-2026-22988 Path Traversal Leading to Arbitrary File Read, Write and Delete in TinaCMS CVSS 3.1HIGH 8.4
  • TI-2026-70293 Code injection in Tina CLI via unescaped Git branch name CVSS 3.1HIGH 8.2
See all 19 →

Sources