Skip to main content

Payload CMS CVE-2026-105805

| EUVDEUVD-2026-93464 MEDIUM
Information Exposure (CWE-200)
2026-10-06 GitHub_M GHSA-9g87-32v6-3c2r
6.9
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Identify readable collection with protected field
  2. Exploit
    Submit query sorting by protected field
  3. Execution
    Observe record ordering in response
  4. Impact
    Infer partial protected field values

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 a specific, concurrent set of conditions in the Payload deployment: (1) a collection whose read/query access is granted to the untrusted attacker, (2) the attacker able to control the sort parameter on that collection's query, and (3) at least one field on that collection protected by field-level read access control that the attacker selects as the sort key. The disclosure is limited - the attacker infers partial information about protected field values from result ordering, not the raw values. Limiting factors that reduce real-world risk: deployments that do not expose collections to untrusted/anonymous users, that restrict or fix the sort parameter, or that do not mix readable collections with field-level-protected fields are not exploitable. The vendor workaround (prevent untrusted users from controlling sort parameters, or restrict access to affected collections) directly removes conditions 1-2.

Impact

This is a genuine but modest-severity information-disclosure weakness (CWE-200) that should be treated as a routine, low-urgency patch rather than an emergency. The only quantitative signal provided is the vendor/NVD CVSS 4.0 vector (CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N, score 6.9), which describes a network-reachable, low-complexity attack with no privileges or user interaction but only LOW confidentiality impact and zero integrity/availability impact - the impact is explicitly limited to inferring partial information about protected field values via a sort-order side channel, not reading them directly. No EPSS score, no CISA KEV listing, and no public exploit were supplied, so this is 'no public exploit identified at time of analysis'; there is no evidence of active exploitation and these signals should not be invented. The PR:N rating in the vector is somewhat optimistic for the real world: the GHSA advisory states the attacker must be an 'untrusted user who can query a readable collection,' so exploitability hinges on the deployment exposing a collection to untrusted/anonymous users while simultaneously protecting individual fields on it - a specific access-control configuration, not a universal default. Net: real, confirmed by the vendor advisory and a fix commit, but a side-channel inference bug of limited value, appropriate to patch on a normal cycle rather than as a drop-everything priority.

Exploit ScenarioDerived

An application built on Payload exposes a collection that untrusted users may read, but with certain fields (e.g. an internal status, score, or flag) protected by field-level access control. The attacker repeatedly issues list/query requests sorting by the protected field and, by observing how records reorder across queries, infers limited information about those hidden field values they are not permitted to read. No public proof-of-concept was provided, and the attack yields only partial inference rather than direct field disclosure.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 06, 2026

Payload CMS versions prior to 3.88.0 and canary builds prior to 4.0.0-canary.27 allow unauthenticated remote attackers to infer limited information about field values they are not permitted to read, by supplying a protected field name as the sort parameter on a collection they can query. The disclosure is indirect - the attacker learns partial information from result ordering rather than reading raw values - and exploitation requires a specific alignment of conditions (readable collection, attacker-controlled sort, and a field-level-protected sort key), which is why the assessed severity is limited (CVSS 3.1 AV:N/AC:H/PR:N/UI:N/C:L/I:N/A:N) despite the vendor-published CVSS 4.0 score of 6.9. There is no public exploit code and no confirmed active exploitation (no CISA KEV listing) at time of analysis; vendor patches are available in 3.88.0 and 4.0.0-canary.27, making this a routine low-urgency update rather than an emergency.

RemediationAI

Upgrade the payload package to 3.88.0 or later, or to 4.0.0-canary.27 or later if tracking the canary channel - a vendor-released patch is available in both branches and applies field-level access checks to sort fields before query execution. If immediate upgrade is not possible, apply the vendor-documented workarounds: prevent untrusted users from controlling the sort parameter (for example by whitelisting or hard-coding permitted sort fields in the API layer that fronts Payload, at the cost of losing client-driven sorting), or restrict untrusted users' read/query access to any collection that mixes readable data with field-level-protected fields (at the cost of reduced functionality for those consumers). Both workarounds directly remove the prerequisites for exploitation and can be layered with the upgrade. Confirm the deployed version by inspecting the installed package metadata, and consult the advisory at https://github.com/payloadcms/payload/security/advisories/GHSA-9g87-32v6-3c2r and the release notes at https://github.com/payloadcms/payload/releases/tag/v3.88.0 for the authoritative fix details; deployments that never expose collections to untrusted or anonymous querying are not exploitable and can schedule the upgrade as routine maintenance.

Affected VersionsENISA

payload 4.0.0-canary.0, < 4.0.0-canary.27
payload < 3.88.0

Affected Packages

npm payload fix: 3.88.0, 4.0.0-canary.27
euvd payload_4_0_0_canary_0 fix: 4.0.0-canary.27

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

The root cause is an information-disclosure weakness (CWE-200) in Payload's query pipeline: collection find, findDistinct, findVersions, and update operations passed the client-supplied sort field into the database query without first running field-level read access control against that sort path. Because sorting causes the database to order rows by the protected field's value, an attacker who can query a readable collection, control the sort parameter, and name a field they cannot read can observe the relative ordering of returned documents and thereby deduce partial information about those hidden values - an oracle-style side channel rather than a direct disclosure. The fix introduces a validateSortQuery helper (packages/payload/src/database/queryValidation/validateSortQuery.js) that applies field-level access checks to sort fields, including version fields, before query execution; the corresponding commit wires it into find.ts, findDistinct.ts, findVersions.ts, and update.ts. The affected artifact is the npm-distributed payload package, reflected by CPE cpe:2.3:a:payloadcms:payload and the tag 'Information Disclosure'. Note that the referenced commit also contains unrelated changes to the example auth app (getSafeRedirect usage in login/create-account forms), which are not part of this vulnerability.

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

Vendor (GitHub_M) PRIMARY 6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N
vuln.today AI 3.7 LOW

Network side channel yielding only inferred partial data, so C:L with no I/A; AC:H because it needs the specific readable-collection-plus-protected-field configuration and iterative inference; PR:N since the target collection is readable by untrusted users.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N
4.0 AV:N/AC:H/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
None
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Oct 06, 2026 - 17:04 EUVD

DescriptionCVE.org

Payload is a free and open source headless content management system. In versions before 3.88.0 and canary versions before 4.0.0-canary.27, an untrusted user who can query a readable collection, control its sorting, and select a protected field as the sort parameter can infer limited information about field values the user cannot read. This issue is fixed in versions 3.88.0 and 4.0.0-canary.27.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 2 npm packages depend on payload (2 direct, 0 indirect)

Ecosystem-wide dependent count for version 4.0.0-canary.0.

Threat Intelligence Overview

EPSS Score
0.3%
Top 82% exploitable
Prevalence
Medium
popular open-source Node.js headless CMS, moderate but not universal adoption
Threat Intel
1
1 sources
Exploit
POC
Public exploit code exists
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub VulDB

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
Yes
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

54
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +34
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2022-27952 CRITICAL POC
9.8 Apr 12

An arbitrary file upload vulnerability in the file upload module of PayloadCMS v0.15.0 allows attackers to execute arbit

CVE-2026-105844 CRITICAL POC
9.3 Oct 06

Prototype pollution in Payload CMS's @payloadcms/plugin-import-export module lets an unauthenticated remote attacker sub

CVE-2026-105851 CRITICAL POC
9.3 Oct 06

Field-level access control can be bypassed in Payload CMS's document duplicate operation, letting a caller with access t

CVE-2026-105850 HIGH POC
8.8 Oct 06

Duplicate order processing in @payloadcms/plugin-ecommerce allows remote, unauthenticated attackers to have a single Str

CVE-2026-105854 HIGH POC
8.7 Oct 06

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

CVE-2026-105849 HIGH POC
7.7 Oct 06

API key disclosure in Payload CMS lets an authenticated user with ordinary read access to other users' authentication do

CVE-2026-105855 HIGH POC
7.6 Oct 06

Authenticated users who can update an auth collection document in Payload CMS can change the password field on that docu

CVE-2026-105852 MEDIUM POC
6.9 Oct 06

Payload CMS versions before 3.90.0 and canary versions before 4.0.0-canary.34 contain an authorization bypass in relatio

CVE-2026-105857 CRITICAL
10.0 Oct 06

Unauthorized read access to stored form submissions and form email configuration in Payload CMS deployments running the

CVE-2026-105859 CRITICAL
9.8 Oct 06

Payload CMS releases before 3.90.0 (and canary builds before 4.0.0-canary.34) expose an orderable reorder endpoint that

CVE-2026-25544 CRITICAL POC
9.8 Feb 06

Payload CMS prior to 3.73.0 has a SQL injection vulnerability when querying structured data, enabling database compromis

CVE-2026-105845 CRITICAL POC
9.8 Oct 06

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

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy