{"id":"CVE-2026-105848","aliases":["EUVD-2026-93490","GHSA-r9v2-gg2j-22q5"],"status":"published","title":"Payload: Insufficient Access Control in Stripe REST Proxy","description":"Payload is a free and open source headless content management system. In @payloadcms/plugin-stripe versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user who can reach the enabled optional Stripe REST proxy can perform unintended Stripe operations. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","severity":{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","level":"medium","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00244,"percentile":0.15742,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-749","CWE-862"],"published":"2026-10-06T16:07:53Z","modified":"2026-10-28T02:30:25Z","fixes":[{"ecosystem":"npm","package":"@payloadcms/plugin-stripe","fixed_in":["3.90.0","4.0.0-canary.34"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"@payloadcms/plugin-stripe","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.90.0"}]}]},{"source":"ghsa","ecosystem":"npm","package":"@payloadcms/plugin-stripe","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.0.0-canary.0"},{"fixed":"4.0.0-canary.34"}]}]},{"source":"osv","ecosystem":"npm","package":"@payloadcms/plugin-stripe","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.90.0"}]}]},{"source":"osv","ecosystem":"npm","package":"@payloadcms/plugin-stripe","ranges":[{"type":"SEMVER","events":[{"introduced":"4.0.0-canary.0"},{"fixed":"4.0.0-canary.34"}]}]}],"products":[{"vendor":"@payloadcms","product":"plugin-stripe"},{"vendor":"payloadcms","product":"payload"}],"references":[{"url":"https://github.com/payloadcms/payload/security/advisories/GHSA-r9v2-gg2j-22q5","tags":["x_refsource_CONFIRM","Vendor Advisory","advisory","web"]},{"url":"https://github.com/payloadcms/payload/commit/2f94a4205e5ba3ec0e91c92ed54f24f429826dd0","tags":["x_refsource_MISC","Patch","fix","web"]},{"url":"https://github.com/payloadcms/payload/releases/tag/v3.90.0","tags":["x_refsource_MISC","Patch","Release Notes","web"]},{"url":"https://github.com/advisories/GHSA-r9v2-gg2j-22q5"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105848.json","tags":["advisory"]},{"url":"https://nvd.nist.gov/vuln/detail/CVE-2026-105848","tags":["advisory"]},{"url":"https://github.com/payloadcms/payload","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-105848","title":"Payload: Insufficient Access Control in Stripe REST Proxy","description":"Payload is a free and open source headless content management system. In @payloadcms/plugin-stripe versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user who can reach the enabled optional Stripe REST proxy can perform unintended Stripe operations. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T16:07:53.896Z","modified":"2026-10-09T01:10:22.727Z","cvss":[{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","level":"medium","assessor":"cna"}],"cwes":["CWE-749","CWE-862"],"updated_at":"2026-11-02T14:19:56.755658Z"}],"euvd":[{"id":"EUVD-2026-93490","description":"Payload is a free and open source headless content management system. In @payloadcms/plugin-stripe versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user who can reach the enabled optional Stripe REST proxy can perform unintended Stripe operations. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T16:07:53Z","modified":"2026-10-09T01:10:22Z","cvss":[{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","level":"medium"}],"updated_at":"2026-11-02T17:27:25.942984Z"}],"ghsa":[{"id":"GHSA-r9v2-gg2j-22q5","title":"Payload: Insufficient Access Control in Stripe REST Proxy","description":"## Impact\n\nAn authenticated user could perform unintended Stripe operations through the optional Stripe REST proxy.\n\n**You are affected if ALL of these are true:**\n\n- Your application uses `@payloadcms/plugin-stripe`.\n- The optional Stripe REST proxy is enabled.\n- An authenticated user can reach the proxy.\n\nDeployments that do not enable the Stripe REST proxy are not affected.\n\n## Patches\n\nUsers should upgrade Payload packages to `\u003e= 3.90.0` or `\u003e= 4.0.0-canary.34`.\n\n## Workarounds\n\nUpgrading to a patched version is recommended. \n\nIf you cannot upgrade immediately, disable the Stripe REST proxy. If it must remain enabled, restrict access to trusted users and only the required Stripe operations.","status":"published","published":"2026-10-06T16:09:46Z","modified":"2026-10-06T16:09:48Z","cvss":[{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","level":"medium"}],"cwes":["CWE-749","CWE-862"],"updated_at":"2026-11-02T14:41:27.036917Z"}],"nvd":[{"id":"CVE-2026-105848","description":"Payload is a free and open source headless content management system. In @payloadcms/plugin-stripe versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user who can reach the enabled optional Stripe REST proxy can perform unintended Stripe operations. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T17:17:20.28Z","modified":"2026-10-15T00:13:23.133Z","cvss":[{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X","level":"medium","assessor":"secondary"},{"version":"3.1","score":9.6,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:N","level":"critical","assessor":"primary"}],"cwes":["CWE-749","CWE-862"],"updated_at":"2026-11-02T14:12:54.486849Z"}],"osv":[{"id":"CVE-2026-105848","title":"Payload: Insufficient Access Control in Stripe REST Proxy","description":"Payload is a free and open source headless content management system. In @payloadcms/plugin-stripe versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user who can reach the enabled optional Stripe REST proxy can perform unintended Stripe operations. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T16:07:53.896Z","modified":"2026-10-28T02:30:25.908295618Z","cvss":[{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","level":"medium"}],"cwes":["CWE-749","CWE-862"],"updated_at":"2026-11-02T15:44:54.583213Z"},{"id":"GHSA-r9v2-gg2j-22q5","title":"Payload: Insufficient Access Control in Stripe REST Proxy","description":"## Impact\n\nAn authenticated user could perform unintended Stripe operations through the optional Stripe REST proxy.\n\n**You are affected if ALL of these are true:**\n\n- Your application uses `@payloadcms/plugin-stripe`.\n- The optional Stripe REST proxy is enabled.\n- An authenticated user can reach the proxy.\n\nDeployments that do not enable the Stripe REST proxy are not affected.\n\n## Patches\n\nUsers should upgrade Payload packages to `\u003e= 3.90.0` or `\u003e= 4.0.0-canary.34`.\n\n## Workarounds\n\nUpgrading to a patched version is recommended. \n\nIf you cannot upgrade immediately, disable the Stripe REST proxy. If it must remain enabled, restrict access to trusted users and only the required Stripe operations.","status":"published","published":"2026-10-06T16:09:46Z","modified":"2026-10-06T16:15:05.075463625Z","cvss":[{"version":"4.0","score":6.4,"vector":"CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:H/SA:N","level":"medium"}],"cwes":["CWE-749","CWE-862"],"updated_at":"2026-11-02T15:46:55.480549Z"}]}}
