Payload: Client uploads could overwrite S3 objects
漏洞描述
### 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. Source Code Location: https://github.com/payloadcms/payload Affected Packages: - npm:@payloadcms/storage-s3, affected < 3.90.0, patched in 3.90.0 - npm:@payloadcms/storage-s3, affected >= 4.0.0-canary.0, < 4.0.0-canary.34, patched in 4.0.0-canary.34 CWEs: - CWE-639: Authorization Bypass Through User-Controlled Key CVSS: - CVSS_V4: score 7.1, CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N References: - https://github.com/payloadcms/payload/security/advisories/GHSA-7vg8-29qx-jgj8 - https://nvd.nist.gov/vuln/detail/CVE-2026-105867 - https://github.com/payloadcms/payload/commit/2df8238fbf17edfce335c399b90bf524ba9906a2 - https://github.com/payloadcms/payload/releases/tag/v3.90.0 - https://github.com/advisories/GHSA-7vg8-29qx-jgj8