Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to affected auth collection
-
ExploitCall token refresh or password reset endpoint
-
ExecutionReceive unfiltered user document
-
ImpactHarvest hidden/read-restricted fields
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V14 - Data Protection Data exposure prevention
MITRE ATT&CK
2 techniques across 2 tactics: Collection, Discovery The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires (1) a valid authenticated session/token for an affected Payload authentication collection (PR:L), and (2) that collection to define hidden or read-restricted fields - per the GHSA advisory, 'You are affected if an authentication collection contains hidden or read-restricted fields.' The attacker triggers the leak via the token refresh or password reset responses, which failed to apply field access and hidden-field filtering before the fix. LIMITING FACTORS: credentials are mandatory (no unauthenticated path), the affected collection must actually contain protected fields (default configurations with only visible fields are not exposed), and only Payload npm versions >= 3.0.0 < 3.90.0 and >= 4.0.0-canary.0 < 4.0.0-canary.34 are vulnerable. Note also that custom authentication strategies remain responsible for their own filtering even after upgrade. |
| Impact | This is a moderate-severity information disclosure flaw (CWE-200) with a vendor-supplied CVSS 4.0 vector of CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N (7.1). All signals point to a real but bounded risk rather than an urgent emergency. The network vector (AV:N) and low attack complexity (AC:L) favor exploitability, but PR:L confirms the attacker must already hold valid credentials for an affected authentication collection - this is not an unauthenticated breach. Impact is confined to confidentiality (VC:H with VI:N/VA:N), consistent with the description: refresh and password-reset responses leaking hidden or read-restricted user fields. No EPSS score, CISA KEV listing, POC, or SSVC decision data was supplied; absence of these means there is no public exploit identified at time of analysis and no evidence of active exploitation. The primary limiting factor is that the issue only matters when an auth collection actually contains hidden or read-restricted fields (per the GHSA advisory), so environments using only default/visible user fields are not exposed. Overall this is a legitimate patch-worthy issue for affected Payload deployments but, lacking any exploitation-probability or KEV signal and requiring prior authentication plus a specific collection configuration, it does not rise to drop-everything priority. |
| Exploit ScenarioDerived | An authenticated low-privilege user of a Payload-based application whose user/auth collection defines hidden or read-access-restricted fields (e.g., internal flags, PII, role metadata) calls the token refresh or password reset endpoint. The response returns the full user document without applying field-level access or hidden-field filtering, disclosing data the caller was never authorized to read. No public exploit code was identified; exploitation requires only standard authenticated API calls over the network (AV:N/AC:L). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 06, 2026
Information disclosure in Payload CMS allows an authenticated user to read hidden or read-restricted fields from an authentication collection through the token refresh and password reset responses, which returned user documents before applying field-level access control and hidden-field filtering. Affected deployments are npm 'payload' versions >= 3.0.0 and < 3.90.0, plus canary releases >= 4.0.0-canary.0 and < 4.0.0-canary.34; exposure only materializes when an authentication collection actually defines hidden or read-restricted fields, and a valid session/token for that collection is mandatory (CVSS 4.0 PR:L, vendor score 7.1). No public exploit identified at time of analysis; the vendor fixed the flaw in 3.90.0 and 4.0.0-canary.34.
RemediationAI
Vendor-released patch: upgrade the 'payload' package to 3.90.0 or later on the 3.x line, or to 4.0.0-canary.34 or later on the canary line, per advisory GHSA-xgv3-crq2-6f69 and the fix commit f5f1283d275c58b30e2faa6be7cdc4d49451ea91. The advisory explicitly states there is no complete workaround, so if upgrading is temporarily impossible, apply compensating controls and accept their trade-offs: (1) move any sensitive data out of authentication collection user documents into a separate collection with its own field-level access rules, so the leak has nothing valuable to return - this requires application changes and data migration; (2) wrap or block the refresh-token, password-reset and reset-confirmation endpoints at a reverse proxy or API gateway for all but trusted clients - this breaks normal session refresh and password recovery for legitimate users; (3) temporarily mark sensitive fields as neither hidden nor access-restricted is NOT a fix and only makes them openly readable, so do not take that route. Note that the built-in fix filters documents returned through Payload's own authentication operations, but custom authentication strategies remain the developer's responsibility to filter, and after upgrading you should verify that any custom refresh/reset handlers likewise strip hidden and read-restricted fields. Also note the patch adds a collection-identity check that returns 403 when a token for one auth collection is used against another collection's refresh endpoint; clients that (incorrectly) refreshed across collections will now fail and must be corrected.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in npm, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Payload is a free and open source headless CMS built on Node.js/TypeScript that auto-generates REST and GraphQL APIs from collection configuration. Its authentication collections support field-level access control and 'hidden' fields, which are meant to be stripped from any document returned to a client while remaining available server-side for access-control decisions. The refresh and password-reset operations (packages/payload/src/auth/operations/refresh.ts and the reset flow) failed to run that field access and hidden-field filtering before serializing the user document, so a response could carry fields the requester is not permitted to read - a CWE-200 exposure of sensitive information. The fix commit f5f1283d275c58b30e2faa6be7cdc4d49451ea91 applies hidden-field and access filtering to authentication responses and additionally hardens the refresh endpoint by verifying that the authenticated user's collection slug matches the collection being refreshed, returning HTTP 403 otherwise (tested for both REST /refresh-token and GraphQL refreshToken mutations). The advisory notes that custom authentication strategies, which bypass these built-in operations, remain responsible for filtering user documents they return.
Know when Payload gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:N/SI:N/SA:N
Authenticated API call over the network drives AV:N/AC:L/PR:L/UI:N; impact is confidentiality-only disclosure of restricted fields, so C:H with I:N/A:N and unchanged scope.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
Payload is a free and open source headless content management system. In versions from 3.0.0 before 3.90.0 and canary versions before 4.0.0-canary.34, token refresh responses and password reset responses can independently return hidden or read-restricted fields that the requesting user cannot access. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.
Technical POC Analysis
CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
A high-severity information disclosure flaw in Payload CMS (npm 'payload' >=3.0.0 and <3.90.0, plus canary releases >=4.0.0-canary.0 and <4.0.0-canary.34) lets an authenticated user read fields that administrators deliberately hid or read-restricted on authentication collections, because token refresh and password reset responses returned full user documents before field-level access control and hidden-field filtering were applied. Any organization on an affected version whose authentication collection defines hidden or read-restricted fields should assume those fields are reachable by any holder of a valid session for that collection, which can include internal identifiers, secrets, or administrative data. Leadership should care because the flaw breaks the access-control guarantee the platform is relied upon to enforce, and remediation is version-dependent and must be validated against the vendor advisory.
Apply vendor patch (advisory-referenced fixed versions: payload 3.90.0 / 4.0.0-canary.34). If the upgrade cannot be completed immediately, remove hidden and read-restricted field definitions from authentication collections, restrict token refresh and password reset exposure to trusted accounts, and monitor/alert on those responses until patched.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
An arbitrary file upload vulnerability in the file upload module of PayloadCMS v0.15.0 allows attackers to execute arbit
Prototype pollution in Payload CMS's @payloadcms/plugin-import-export module lets an unauthenticated remote attacker sub
Field-level access control can be bypassed in Payload CMS's document duplicate operation, letting a caller with access t
Duplicate order processing in @payloadcms/plugin-ecommerce allows remote, unauthenticated attackers to have a single Str
Malformed multipart request bodies sent to Payload CMS versions 3.0.0 through 3.89.x and 4.0.0-canary.0 through 4.0.0-ca
API key disclosure in Payload CMS lets an authenticated user with ordinary read access to other users' authentication do
Authenticated users who can update an auth collection document in Payload CMS can change the password field on that docu
Payload CMS versions before 3.90.0 and canary versions before 4.0.0-canary.34 contain an authorization bypass in relatio
Unauthorized read access to stored form submissions and form email configuration in Payload CMS deployments running the
Payload CMS releases before 3.90.0 (and canary builds before 4.0.0-canary.34) expose an orderable reorder endpoint that
Payload CMS prior to 3.73.0 has a SQL injection vulnerability when querying structured data, enabling database compromis
SQL injection in Payload CMS 3.0.0 through before 3.88.0 (and 4.0.0-canary builds before 4.0.0-canary.27) allows remote
EUVD-2026-93497
GHSA-xgv3-crq2-6f69
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB