{"id":"CVE-2026-105862","aliases":["EUVD-2026-93508","GHSA-2pwp-2369-8fg3"],"status":"published","title":"Payload: Bypassed sanitization of user uploaded SVGs","description":"Payload is a free and open source headless content management system. In versions before 3.90.0 and canary versions before 4.0.0-canary.34, a collection that allows downloadable SVG uploads can store a malicious SVG that bypasses sanitization and executes attacker-controlled JavaScript when a user downloads and opens the SVG. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","severity":{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high","assessor":"cna","from":"cve"},"epss":{"day":"2026-11-12","score":0.00271,"percentile":0.19732,"model":"v2026.06.15"},"facts":{"in_kev":false,"known_exploited":false,"public_exploit":false,"fix_available":true},"cwes":["CWE-434","CWE-79"],"published":"2026-10-06T16:37:59Z","modified":"2026-10-28T02:30:39Z","fixes":[{"ecosystem":"npm","package":"payload","fixed_in":["3.90.0","4.0.0-canary.34"],"sources":["ghsa","osv"]}],"affected":[{"source":"ghsa","ecosystem":"npm","package":"payload","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"3.90.0"}]}]},{"source":"ghsa","ecosystem":"npm","package":"payload","ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"4.0.0-canary.0"},{"fixed":"4.0.0-canary.34"}]}]},{"source":"osv","ecosystem":"npm","package":"payload","ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"3.90.0"}]}]},{"source":"osv","ecosystem":"npm","package":"payload","ranges":[{"type":"SEMVER","events":[{"introduced":"4.0.0-canary.0"},{"fixed":"4.0.0-canary.34"}]}]}],"products":[{"vendor":"payloadcms","product":"payload"}],"references":[{"url":"https://github.com/payloadcms/payload/security/advisories/GHSA-2pwp-2369-8fg3","tags":["x_refsource_CONFIRM","Vendor Advisory","advisory","web"]},{"url":"https://github.com/payloadcms/payload/commit/a8c3a8e8e2680c96ec4f66f5b3854c5df6c35adf","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://nvd.nist.gov/vuln/detail/CVE-2026-105862","tags":["advisory"]},{"url":"https://github.com/advisories/GHSA-2pwp-2369-8fg3"},{"url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/105xxx/CVE-2026-105862.json","tags":["advisory"]},{"url":"https://github.com/payloadcms/payload","tags":["package"]}],"sources":{"cve":[{"id":"CVE-2026-105862","title":"Payload: Bypassed sanitization of user uploaded SVGs","description":"Payload is a free and open source headless content management system. In versions before 3.90.0 and canary versions before 4.0.0-canary.34, a collection that allows downloadable SVG uploads can store a malicious SVG that bypasses sanitization and executes attacker-controlled JavaScript when a user downloads and opens the SVG. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T16:37:59.487Z","modified":"2026-10-06T17:24:09.513Z","cvss":[{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high","assessor":"cna"}],"cwes":["CWE-79","CWE-434"],"updated_at":"2026-11-02T14:19:57.100857Z"}],"euvd":[{"id":"EUVD-2026-93508","description":"Payload is a free and open source headless content management system. In versions before 3.90.0 and canary versions before 4.0.0-canary.34, a collection that allows downloadable SVG uploads can store a malicious SVG that bypasses sanitization and executes attacker-controlled JavaScript when a user downloads and opens the SVG. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T16:37:59Z","modified":"2026-10-06T17:24:09Z","cvss":[{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high"}],"updated_at":"2026-11-02T17:27:37.140631Z"}],"ghsa":[{"id":"GHSA-2pwp-2369-8fg3","title":"Payload: Bypassed sanitization of user uploaded SVGs","description":"## Impact\n\nA malicious SVG file upload could bypass sanitization, be stored, and execute attacker-controlled JavaScript (XSS) after a user downloads it and opens it.\n\n**You are affected if:**\n\n- You have a collection configured to upload and allow SVG files which can then be downloaded by users.\n\n## Patches\n\nThe fix validates SVG content on every upload path and hardens SVG/XML delivery so stored SVGs cannot frame attacker content.\n\nUsers should upgrade Payload packages to `\u003e= 3.90.0` or `\u003e= 4.0.0-canary.34`.\n\n## Workarounds\n\nDisallow SVG uploads, or serve uploaded SVGs as downloads with Content-Disposition: attachment and a strict CSP. These mitigations reduce exposure but do not replace upgrading when the patched release is available.","status":"published","published":"2026-10-07T20:29:36Z","modified":"2026-10-07T20:29:37Z","cvss":[{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high"}],"cwes":["CWE-79","CWE-434"],"updated_at":"2026-11-02T14:41:29.107536Z"}],"nvd":[{"id":"CVE-2026-105862","description":"Payload is a free and open source headless content management system. In versions before 3.90.0 and canary versions before 4.0.0-canary.34, a collection that allows downloadable SVG uploads can store a malicious SVG that bypasses sanitization and executes attacker-controlled JavaScript when a user downloads and opens the SVG. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T17:17:22.423Z","modified":"2026-10-15T00:09:17.103Z","cvss":[{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high","assessor":"secondary"}],"cwes":["CWE-79","CWE-434"],"updated_at":"2026-11-02T14:12:54.486849Z"}],"osv":[{"id":"CVE-2026-105862","title":"Payload: Bypassed sanitization of user uploaded SVGs","description":"Payload is a free and open source headless content management system. In versions before 3.90.0 and canary versions before 4.0.0-canary.34, a collection that allows downloadable SVG uploads can store a malicious SVG that bypasses sanitization and executes attacker-controlled JavaScript when a user downloads and opens the SVG. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.","status":"published","published":"2026-10-06T16:37:59.487Z","modified":"2026-10-28T02:30:39.270552989Z","cvss":[{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high"}],"cwes":["CWE-434","CWE-79"],"updated_at":"2026-11-02T15:44:54.583213Z"},{"id":"GHSA-2pwp-2369-8fg3","title":"Payload: Bypassed sanitization of user uploaded SVGs","description":"## Impact\n\nA malicious SVG file upload could bypass sanitization, be stored, and execute attacker-controlled JavaScript (XSS) after a user downloads it and opens it.\n\n**You are affected if:**\n\n- You have a collection configured to upload and allow SVG files which can then be downloaded by users.\n\n## Patches\n\nThe fix validates SVG content on every upload path and hardens SVG/XML delivery so stored SVGs cannot frame attacker content.\n\nUsers should upgrade Payload packages to `\u003e= 3.90.0` or `\u003e= 4.0.0-canary.34`.\n\n## Workarounds\n\nDisallow SVG uploads, or serve uploaded SVGs as downloads with Content-Disposition: attachment and a strict CSP. These mitigations reduce exposure but do not replace upgrading when the patched release is available.","status":"published","published":"2026-10-07T20:29:36Z","modified":"2026-10-07T20:45:04.330367856Z","cvss":[{"version":"3.1","score":8.7,"vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N","level":"high"}],"cwes":["CWE-434","CWE-79"],"updated_at":"2026-11-02T15:46:34.700741Z"}]}}
