Vulnerability · Published Aug 19, 2026 · Assigned by GitHub_M

CVE-2026-63123Tina: Cross-origin `POST /media/upload/*` requests can write arbitrary files into the Tina dev server media root

Medium 6.5

In plain English

A medium-severity cross-site request forgery in tinacms 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 18% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 3.1)6.5Medium
Exploit odds (30 days)0.3%top 81.6% 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 2.5.2, the TinaCMS CLI package's Vite dev server packages/@tinacms/cli/src/next/vite/cors.ts origin callback returns false for a disallowed origin but does not reject the request, and packages/@tinacms/cli/src/next/vite/plugins.ts still routes POST /media/upload/* to mediaRouter.handlePost. The upload code in packages/@tinacms/cli/src/next/commands/dev-command/server/media.ts writes attacker-controlled multipart contents inside the configured media root. A remote attacker can cause a developer's browser to submit this state-changing request by inducing the developer to visit an attacker-controlled page while tinacms dev is running. This issue is fixed in version 2.5.2.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npm@tinacms/cli2.5.2GHSA-rgr9-r7mj-mf6x

Affected products (as reported)

VendorProductVersions
tinacms tinacms < 2.5.2

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

References