CVE-2026-63506: Tina: [Broken Access Control] letting any TinaCloud user authorize against any self-hosted site
Tina is a headless content management system. Prior to @tinacms/auth 1.1.4 and next-tinacms-azure 15.0.1, isAuthorized accepts a request-controlled clientID and asks isUserAuthorized to validate the bearer token against that selected TinaCloud app instead of the self-hosted site's configured app. An attacker with any TinaCloud account can submit the attacker's own app ID and valid token to a victim endpoint, causing TinaCloudBackendAuthProvider or an affected media authorized callback to accept the attacker's verified status across the tenant boundary. The vulnerable logic is present in packages/@tinacms/auth/src/index.ts and packages/next-tinacms-azure/src/auth.ts. Successful exploitation permits media listing, reading, upload, or deletion and, when TinaCloudBackendAuthProvider is used, GraphQL read, create, update, and delete operations on the victim's content without a victim account or victim interaction. This vulnerability is fixed in @tinacms/auth 1.1.4 and next-tinacms-azure 15.0.1.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
packages/@tinacms/authto a version that resolves this vulnerability.Fixed in 1.1.4 - Upgrade
Upgrade
packages/next-tinacms-azureto a version that resolves this vulnerability.Fixed in 15.0.1
Event History
Frequently Asked Questions
Who can exploit this issue?
Any user with a TinaCloud account can exploit an affected self-hosted site. The attacker does not need an account for the victim site or any interaction from a victim user.
What does an attacker need to submit?
The attacker needs their own TinaCloud app ID and a valid bearer token for that app. They can provide the app ID through the request-controlled clientID field so authorization is checked against their app rather than the victim site's configured app.
Which site capabilities can be exposed?
Affected media authorization callbacks can permit media listing, reading, upload, or deletion. Sites using TinaCloudBackendAuthProvider can additionally permit GraphQL read, create, update, and delete operations against victim content.
Which versions contain the fix?
Update @tinacms/auth to 1.1.4 or later and next-tinacms-azure to 15.0.1 or later. The issue affects versions prior to those releases.