{"cve":"CVE-2026-59965","nvd":{"published":"2026-09-15T16:17:17.110","modified":"2026-09-30T17:51:56.193","status":"Deferred","description":"Payload Plugins is a collection of plugins designed to enhance Payload CMS. In 0.7.0, @jhb.software/payload-alt-text-plugin exposes POST /api/alt-text-plugin/generate and POST /api/alt-text-plugin/bulk with a default guard that accepts any authenticated user, while alt-text/src/endpoints/generateAltText.ts and alt-text/src/endpoints/bulkGenerateAltTexts.ts call req.payload.findByID and req.payload.update without overrideAccess: false. Payload therefore defaults overrideAccess to true and skips the target collection's read and update access functions. An authenticated low-privilege user can supply id, collection, locale, and update values to read arbitrary protected upload documents and overwrite their alt and keywords fields, even when the collection permits those operations only to administrators. A control Local API call with overrideAccess: false is denied, confirming that the plugin endpoint bypasses otherwise effective collection rules. This vulnerability is fixed in 0.8.0.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N","score":7.1},"cwes":["CWE-863"],"references":["https://github.com/jhb-software/payload-plugins/commit/e39634868ce13a414e2981e219befc58101654d3","https://github.com/jhb-software/payload-plugins/pull/159","https://github.com/jhb-software/payload-plugins/releases/tag/alt-text@0.8.0","https://github.com/jhb-software/payload-plugins/security/advisories/GHSA-4qpv-39hg-f7fx","https://github.com/jhb-software/payload-plugins/security/advisories/GHSA-4qpv-39hg-f7fx"],"products":[],"source":"nvd","synced_at":"2026-10-19T22:53:43.293028046+00:00"},"epss":{"cve":"CVE-2026-59965","score":0.00377,"percentile":0.31436,"date":"2026-10-25"},"kev":null,"osv":[{"id":"GHSA-4qpv-39hg-f7fx","url":"https://osv.dev/vulnerability/GHSA-4qpv-39hg-f7fx","summary":"@jhb.software/payload-alt-text-plugin: Alt Text Endpoint Authorization Bypass via Payload Local API `overrideAccess` Omission","modified":"2026-09-16T19:00:05.203549577Z","packages":[{"ecosystem":"npm","name":"@jhb.software/payload-alt-text-plugin","purl":"pkg:npm/%40jhb.software/payload-alt-text-plugin","ranges":["<0.8.0"],"fixed":["0.8.0"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}