Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as low-privilege Payload user
-
ExploitSend POST directly to client-upload route
-
ExecutionRoute skips collection permission check
-
ImpactUpload files to unauthorized collection
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires (1) a Payload deployment using the @payloadcms/storage-vercel-blob storage adapter with its client-upload feature/route reachable, and (2) the attacker holding a valid authenticated Payload account (PR:L) that lacks the target collection's access permissions. Exploitation consists of calling the client-upload endpoint directly rather than the guarded upload flow. Limiting factors: it is not exploitable by fully unauthenticated attackers, it only affects installations that use this specific Vercel Blob adapter, and impact is limited to unauthorized file uploads (integrity), with no confidentiality or availability consequence. |
| Impact | This is a genuine but bounded authorization flaw, not a high-impact priority. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:L/VA:N/SC:N) scores 5.3 (Medium) and is internally consistent: network-reachable and low-complexity, but requires an existing authenticated account (PR:L) and yields integrity-only impact (VI:L) with no confidentiality or availability effect. The CWE-862 (Missing Authorization) classification matches the described behavior of bypassing collection-level permissions. No EPSS score, no CISA KEV listing, and no public exploit code were provided, so there is no signal of active exploitation - no public exploit identified at time of analysis. The signals are consistent rather than conflicting; the main caveat is that the CVSS vector describes AV:N/PR:L (authenticated remote), which aligns with the description's 'authenticated users.' Real-world risk is limited by the need for a valid low-privilege account and by the fact that impact is confined to unauthorized file uploads into collections the user should not access, not code execution or data theft. |
| Exploit ScenarioDerived | An attacker who already holds a low-privilege Payload account (e.g., a self-registered or limited editor user) sends an HTTP request directly to the storage adapter's client-upload route, skipping the normal collection-permission check performed on standard upload paths. Because the route fails to re-enforce collection-level access control, the attacker uploads files into a collection they were never granted access to. No public proof-of-concept exploit was reported. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 25, 2026
Authenticated users who lack a collection's access permissions can still push files into that collection in Payload CMS deployments using the @payloadcms/storage-vercel-blob storage adapter, because the adapter's client-upload route is reachable directly and does not re-enforce collection-level authorization. Exploitation requires a valid Payload account (CVSS PR:L) on an installation where the client-upload feature is enabled and reachable, and the resulting impact is limited to unauthorized file uploads (integrity only - no confidentiality or availability loss, assessed CVSS:3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N, medium severity). This is a genuine but bounded authorization flaw rather than a high-priority emergency: there is no confirmed active exploitation (not in CISA KEV) and no public exploit code identified at time of analysis, and the vendor has published advisory GHSA-mc8m-rr6c-r5qr.
RemediationAI
The supplied intelligence does not include an exact fixed version, so treat the vendor advisory GHSA-mc8m-rr6c-r5qr (https://github.com/payloadcms/payload/security/advisories/GHSA-mc8m-rr6c-r5qr) as the authoritative source for the patched @payloadcms/storage-vercel-blob release and upgrade the adapter and the Payload package to it as the primary fix; verify the release notes confirm the client-upload route now enforces collection access control. If immediate upgrade is not possible, the most direct mitigation is to disable client uploads in the adapter configuration (set the client-upload option to false) so browser-direct uploads to Vercel Blob are not negotiated - the trade-off is that all uploads then flow through your Payload server, which increases serverless function execution time and can hit request body-size limits on platforms such as Vercel. Alternatively, gate the client-upload endpoint behind middleware or an edge/WAF rule that requires a session already authorized for the target collection, accepting that this adds a per-request authorization hop and must be kept in sync with payload access rules to avoid false negatives. Because exploitation requires a valid authenticated account (PR:L), also review Payload user provisioning and disable or tightly scope any low-privilege accounts that can reach the client-upload route, and monitor upload logs for files written to collections by users who should not have create access; this is a detective control only and does not remove the underlying bypass. Deployments not using this adapter require no action.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a missing-authorization issue (CWE-862) in the @payloadcms/storage-vercel-blob storage adapter for Payload CMS, the Node.js/TypeScript headless CMS. Payload normally gates every upload through collection access-control functions (for example the create/read access rules configured per collection), which the standard upload flow evaluates server-side. When the adapter's client-upload capability is enabled, the browser is meant to negotiate a direct upload to Vercel Blob storage; the route that handles that negotiation can be invoked directly by a caller who never went through the guarded upload flow, so the collection-level permission check is skipped and an under-privileged but authenticated account can write files into a collection it should not be able to write to. The supplied CPE, cpe:2.3:a:payloadcms:payload:*:*:*:*:*:*:*:*, carries no version boundaries, so the affected version range is not bounded by the available intelligence - applicability is determined by whether the deployment uses this specific adapter with client uploads enabled, not by a fixed version window. Note that the underlying primitive is authorization bypass on a storage negotiation endpoint, not arbitrary code execution or data disclosure.
Know when Payloadcms 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:N/VI:L/VA:N/SC:N/SI:N/SA:N
Remote and low-complexity but needs a low-privilege authenticated account (PR:L); impact is unauthorized uploads only, so integrity-low with no confidentiality or availability effect.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
The @payloadcms/storage-vercel-blob storage adapter for Payload contains an improper access control vulnerability that allows authenticated users to bypass collection-level permissions by accessing the client-upload route directly. Attackers can upload files through the client-upload endpoint without possessing the required collection access permissions, circumventing the intended access control enforcement.
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
More in Payloadcms
View allAn 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-87206
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB