BaselineWatch
Desk

CVE-2026-105867

7.1 high SSVC exploitation: none Analyzed

Payload is a free and open source headless content management system. In @payloadcms/storage-s3 versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user can overwrite an existing S3 object belonging to another upload collection when client uploads are enabled for multiple collections sharing a bucket and useCompositePrefixes is false or unset. This bypasses the target collection's access controls and prior file validation. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.

Fix

Patch, vendor advisory and mitigation references on NVD 3

Every line above is quoted from NVD, CISA, Microsoft, the vendor's own advisory or DISA; nothing is generated.

Change history 1

  1. First seenCVSS 7.1 · payloadcmsNVD modified 2026-10-15 00:07

Affected (CPE criteria) 35

  • cpe:2.3:a:payloadcms:payload:*:*:*:*:*:node.js:*:*
  • cpe: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:*:*

References 3