CVE-2026-34750 Payload has Insufficient Filename Validation in Client-Upload Signed-URL Endpoints
Attackers can escape intended storage locations via crafted filenames in client-upload signed-URL endpoints of Payload CMS storage plugins.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-34750?
CVE-2026-34750 is a medium-severity path traversal vulnerability in payloadcms payload, published on 1 Apr 2026. Any signed-in user can exploit it over the network, with no action from the victim.
Official description
Payload is a free and open source headless content management system. Prior to version 3.78.0 in @payloadcms/storage-azure, @payloadcms/storage-gcs, @payloadcms/storage-r2, and @payloadcms/storage-s3, the client-upload signed-URL endpoints for S3, GCS, Azure, and R2 did not properly sanitize filenames. An attacker could craft filenames to escape the intended storage location. This issue has been patched in version 3.78.0 for @payloadcms/storage-azure, @payloadcms/storage-gcs, @payloadcms/storage-r2, and @payloadcms/storage-s3.
Weakness: CWE-22
Which versions are affected by CVE-2026-34750?
8 open source packages ship an affected version, including @payloadcms/storage-azure, @payloadcms/storage-gcs and @payloadcms/storage-r2. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
@payloadcms/storage-azure npm | All versions | 3.78.0 |
@payloadcms/storage-azure npm | All versions | 3.78.0 |
@payloadcms/storage-gcs npm | All versions | 3.78.0 |
@payloadcms/storage-gcs npm | All versions | 3.78.0 |
@payloadcms/storage-r2 npm | All versions | 3.78.0 |
@payloadcms/storage-r2 npm | All versions | 3.78.0 |
2 more packages
@payloadcms/storage-s3 npm | All versions | 3.78.0 |
@payloadcms/storage-s3 npm | All versions | 3.78.0 |
Products include Payloadcms Payload.
How do I fix CVE-2026-34750?
Upgrade @payloadcms/storage-azure to 3.78.0 or later.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2026-34750 being exploited?
There is no known exploitation of CVE-2026-34750 in the wild and no public exploit code.
Other vulnerabilities in payloadcms payload
- CVE-2026-105857 Payload: RCE in Payload Form Builder
- CVE-2026-105859 Payload: Unauthorized update to collection documents
- CVE-2026-25544 Payload has an SQL Injection in JSON/RichText Queries on PostgreSQL/SQLite Adapters
- CVE-2022-27952 Unrestricted Upload of File with Dangerous Type in Payload
- CVE-2026-105851 Payload: Field access control bypass on auth collections
Sources
Also known as GHSA-frq9-7j6g-v74x.