All vulnerabilities
CVE-2026-105867GHSA-7vg8-29qx-jgj8

@payloadcms/storage-s3: Payload: Client uploads could overwrite S3 objects

payloadcms @payloadcms/storage-s3npmLibraries & packages
CVSS
7.1High
ExploitationNo known exploitationNot in CISA KEV, which does not prove it is unexploitedCISA KEV
Exploit odds (EPSS)0.22%Chance of exploitation activity in the next 30 days, higher than 11% of CVEs. Scored 23 Oct 2026FIRST EPSS
Fixed in3.90.0Also 4.0.0-canary.34GitHub
Published6 Oct 2026Updated 7 Oct 2026CVE List

What fixes it

  • 3.90.0@payloadcms/storage-s3, npmGitHubnpm install @payloadcms/storage-s3@3.90.0
  • 4.0.0-canary.34@payloadcms/storage-s3, npmGitHubnpm install @payloadcms/storage-s3@4.0.0-canary.34

A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.

Description

Impact

An authenticated user could overwrite an existing S3 object belonging to another upload collection, bypassing that collection’s access controls and prior file validation.

You are affected if ALL of these are true:

  • Client uploads are enabled for multiple collections that share an S3 bucket.
  • useCompositePrefixes is not configured or is set to false.

Patches

Users should upgrade Payload packages to >= 3.90.0 or >= 4.0.0-canary.34.

Workarounds

Disable client uploads until you can upgrade.

Text from GitHub Advisory Database

Affected versions 8

  • @payloadcms/storage-s3, npm< 3.90.0GitHub
  • @payloadcms/storage-s3, npm>= 4.0.0-canary.0, < 4.0.0-canary.34GitHub
  • payloadaffected: < 3.90.0CVE List
  • payloadaffected: >= 4.0.0-canary.0, < 4.0.0-canary.34CVE List
  • storage-s3affected: < 3.90.0CVE List
  • storage-s3affected: >= 4.0.0-canary.0, < 4.0.0-canary.34CVE List
  • @payloadcms/storage-s3, npmfrom first release, fixed in 3.90.0OSV
  • @payloadcms/storage-s3, npmfrom 4.0.0-canary.0, fixed in 4.0.0-canary.34OSV

References 5