CVE-2026-34603

HIGH

@tinacms/graphql's Media Endpoints Can Escape the Media Root via Symlinks or Junctions

Title source: cna

Description

Tina is a headless content management system. Prior to version 2.2.2, @tinacms/cli recently added lexical path-traversal checks to the dev media routes, but the implementation still validates only the path string and does not resolve symlink or junction targets. If a link already exists under the media root, Tina accepts a path like pivot/written-from-media.txt as "inside" the media directory and then performs real filesystem operations through that link target. This allows out-of-root media listing and write access, and the same root cause also affects delete. This issue has been patched in version 2.2.2.

Scores

CVSS v3 7.1
EPSS 0.0008
EPSS Percentile 22.4%
Attack Vector NETWORK
CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:L

CISA SSVC

Vulnrichment
Exploitation poc
Automatable no
Technical Impact total

Details

CWE
CWE-22 CWE-59
Status published
Products (3)
ssw/tinacms\/cli < 2.2.1
tinacms/graphql 0 - 2.2.2npm
tinacms/tinacms < 2.2.2
Published Apr 01, 2026
Tracked Since Apr 01, 2026