Wiz Agents & Workflows are here

CVE-2026-33949
JavaScript vulnerability analysis and mitigation

Summary

A Path Traversal vulnerability in @tinacms/graphql allows unauthenticated users to write and overwrite arbitrary files within the project root. This is achieved by manipulating the relativePath parameter in GraphQL mutations. The impact includes the ability to replace critical server configuration files and potentially execute arbitrary commands by sabotaging build scripts.

Details

The vulnerability exists in the path validation logic within @tinacms/graphql. Specifically, the regex-based validation in getValidatedPath fails to recognize backslashes (\) as directory separators on non-Windows platforms (Mac/Linux). An attacker can provide a path like x\..\..\..\package.json, which bypasses the validation check but is subsequently treated as a traversal path during file I/O operations by the underlying fs modules and path normalization utilities. Incriminated code areas:

PoC

  1. Start the TinaCMS development server.
  2. Send a malicious GraphQL mutation to overwrite a project file (e.g., package.json):
curl -X POST http://localhost:4001/graphql \
  -H "Content-Type: application/json" \
  -d '{"query": "mutation { updateDocument(collection: \"global\", relativePath: \"x\\\\..\\\\..\\\\..\\\\package.json\", params: { global: { header: { name: \"OVERWRITTEN\" } } }) { __typename } }"}'
  1. Observe that the root package.json has been replaced with the provided payload.

2026-03-15_12-24-05 PM 2026-03-15_12-27-33 PM

Impact

This is an Arbitrary File Write vulnerability. Any unauthenticated user with network access to the GraphQL API can:

  • Overwrite critical server configuration files (e.g., package.json, tsconfig.json).
  • Host malicious scripts in the public/ directory for client-side attacks.
  • Perform Arbitrary Code Execution by modifying build scripts or server-side logic files that are subsequently executed by the environment.

Weaknesses:

  • CWE-22: Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
  • CWE-73: External Control of File Name or Path

SourceNVD

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-34156CRITICAL9.9
  • JavaScriptJavaScript
  • @nocobase/plugin-workflow-javascript
NoYesMar 30, 2026
CVE-2026-34363HIGH8.2
  • JavaScriptJavaScript
  • parse-server
NoYesMar 30, 2026
CVE-2026-33949HIGH8.1
  • JavaScriptJavaScript
  • @tinacms/graphql
NoYesMar 30, 2026
CVE-2026-34043MEDIUM5.9
  • JavaScriptJavaScript
  • serialize-javascript
NoYesMar 31, 2026
CVE-2026-34373MEDIUM5.3
  • JavaScriptJavaScript
  • parse-server
NoYesMar 30, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management