CVE-2026-105859
Payload: Unauthorized update to collection documents
CRITICAL 9.8
At a glance
- Source
- NVD
- EPSS
- EPSS 0.35 % · percentile 28 ()
- State
- PUBLISHED
- Published
- Updated
- Assigner
- GitHub_M
- NVD status
- Analyzed
Description
Payload is a free and open source headless content management system. In versions before 3.90.0 and canary versions before 4.0.0-canary.34, an attacker can submit a request to a specific update endpoint that modifies collection documents without enforcing collection or field-level access control when orderable is enabled on a collection or join field. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.
Weaknesses (CWE)
References
Scores
| Version | Score | Vector | Scored by |
|---|---|---|---|
| CVSS 3.1 | CRITICAL 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | GitHub_M |
| CVSS 3.1 | CRITICAL 9.8 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H | NVD · security-advisories@github.com (Secondary) |
Advisories
- GHSA-f7hx-52q9-hcrf — Payload: Unauthorized update to collection documents
European references
- ENISA EUVD · EUVD-2026-93503
- GCVE · GCVE-0-2026-105859
Affected configurations (NVD CPE)
cpe:2.3:a:payloadcms:payload:*:*:*:*:*:node.js:*:*< 3.90.0cpe:2.3:a:payloadcms:payload:4.0.0:canary0:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary1:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary10:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary11:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary12:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary13:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary14:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary15:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary16:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary17:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary18:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary19:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary2:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary20:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary21:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary22:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary23:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary24:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary25:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary26:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary27:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary28:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary29:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary3:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary30:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary31:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary32:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary33:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary4:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary5:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary6:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary7:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary8:*:*:*:node.js:*:*cpe:2.3:a:payloadcms:payload:4.0.0:canary9:*:*:*:node.js:*:*
Affected products
| Product | Versions |
|---|---|
| payloadcms · payload | affected < 3.90.0 ; affected >= 4.0.0-canary.0, < 4.0.0-canary.34 |
Sources
| Source | Licence |
|---|---|
| CVE List (CVEProject cvelistV5) | CVE Program Terms of Use |
| EPSS (FIRST.org) | FIRST — attribution requested |
| ENISA EUVD | ENISA — reproduction authorised, source acknowledged |
| NVD (NIST) via fkie-cad/nvd-json-data-feeds | Public domain — this product uses data from the NVD API but is not endorsed or certified by the NVD |