CVE-2026-34749
JavaScript vulnerability analysis and mitigation

Overview

CVE-2026-34749 is a Cross-Site Request Forgery (CSRF) protection bypass vulnerability in the authentication flow of Payload CMS, a free and open-source headless content management system. It affects all versions of the payload npm package prior to v3.79.1 when the serverURL configuration option is set. The vulnerability was published on March 30, 2026, by maintainer denolfe and added to the National Vulnerability Database on April 1, 2026. It carries a CVSS v3.1 base score of 5.4 (Medium) (GitHub Advisory, Payload Security Advisory).

Technical details

The vulnerability is classified as CWE-352 (Cross-Site Request Forgery) and stems from insufficient validation in the authentication flow that allows the built-in CSRF protection to be bypassed under certain conditions (GitHub Advisory). The fix in v3.79.1 includes using the Sec-Fetch-Site header for cookie authentication validation and improved request origin retrieval, indicating the root cause was inadequate origin/referrer checking during authenticated requests (Payload Release). Exploitation requires the victim to be an authenticated user who interacts with a malicious page or link, and the target instance must have serverURL configured — instances without this setting are not affected (Payload Security Advisory).

Impact

Successful exploitation allows an attacker to perform unauthorized actions on behalf of an authenticated Payload CMS user by forging cross-site requests. The primary impacts are low integrity loss (unauthorized data modification) and low availability impact (potential service disruption), with no confidentiality impact as session tokens or sensitive data are not directly exposed (GitHub Advisory). The scope is limited to the affected Payload instance, with no evidence of lateral movement potential beyond the CMS itself.

Exploitability

There is no public proof-of-concept exploit code and no evidence of in-the-wild exploitation at this time (GitHub Advisory). The EPSS score is approximately 0.013% (2nd percentile), indicating a very low probability of exploitation in the near term. The vulnerability is not listed in the CISA Known Exploited Vulnerabilities (KEV) catalog. No threat actor attribution has been reported.

Exploitation steps

  1. Reconnaissance: Identify a publicly accessible Payload CMS instance running a version prior to v3.79.1 with serverURL configured, using version fingerprinting or reviewing publicly exposed admin panels.
  2. Craft malicious page: Create a web page containing a hidden HTML form or JavaScript fetch request targeting an authenticated Payload CMS API endpoint (e.g., a content creation or user modification endpoint).
  3. Lure authenticated user: Deliver the malicious page link to an authenticated Payload CMS user via email, social engineering, or embedding in another site, inducing them to visit it while logged into the CMS.
  4. Trigger cross-site request: When the victim loads the malicious page, the browser automatically sends the forged request to the Payload CMS instance, including the victim's session cookie, bypassing the CSRF protection due to insufficient origin validation.
  5. Achieve objective: The forged request executes on the server with the victim's privileges, potentially modifying CMS content, altering user settings, or disrupting service (Payload Security Advisory).

Indicators of compromise

  • Logs: Unexpected state-changing requests (POST/PUT/DELETE) to Payload CMS API endpoints originating from unusual or external Referer or Origin headers in server access logs.
  • Logs: Authentication or session activity from IP addresses inconsistent with the legitimate user's known access patterns.
  • Network: Cross-origin requests to Payload CMS endpoints where the Sec-Fetch-Site header value is cross-site rather than same-origin or same-site.
  • Application: Unexpected content modifications, user account changes, or configuration alterations in the CMS that cannot be attributed to known administrator actions.

Mitigation and workarounds

Upgrade to Payload CMS v3.79.1 or later, which includes additional validation in the authentication flow using the Sec-Fetch-Site header and improved request origin retrieval (Payload Release, Payload Security Advisory). If an immediate upgrade is not possible, set cookies.sameSite to 'Strict' in the Payload configuration as a partial mitigation; note this will require users to re-authenticate when navigating to the application from external links such as emails or other websites. There is no complete workaround that fully addresses the vulnerability without upgrading.

Additional resources


SourceThis report was generated using AI

Related JavaScript vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-59160HIGH8.8
  • JavaScript logoJavaScript
  • @yeger/turbo-graph
NoYesSep 09, 2026
CVE-2026-59179HIGH8.3
  • JavaScript logoJavaScript
  • @openhop/server
NoYesSep 09, 2026
GHSA-x7m8-jrm8-hpvxHIGH8.1
  • JavaScript logoJavaScript
  • @eigenpal/docx-editor-core
NoYesSep 10, 2026
CVE-2026-59176HIGH7.8
  • JavaScript logoJavaScript
  • functype-mcp-server
NoYesSep 09, 2026
CVE-2026-59158HIGH7.5
  • JavaScript logoJavaScript
  • nuxt-ollama
NoYesSep 09, 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