Payload external upload trust validation issue
What fixes it
- 3.90.0payload, npmGitHub
npm install payload@3.90.0 - 4.0.0-canary.34payload, npmGitHub
npm install payload@4.0.0-canary.34
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
Impact
Under certain external upload configurations, Payload could send authentication data to a destination that was not verified as trusted. If the affected request contained a valid session, this could expose that session to an unintended recipient.
You are affected if:
- You have enabled external URL-based upload retrieval, where authenticated requests can trigger it.
Patches
Payload now validates the destination before forwarding authentication data and reapplies that validation when a request changes destination.
Users should upgrade Payload packages to >= 3.90.0 or >= 4.0.0-canary.34.
Workarounds
It is recommended to update all Payload packages to >= 3.90.0 or >= 4.0.0-canary.34.
If you cannot, a valid workaround exists:
- Disable external URL-based upload retrieval where practical.
- If you cannot disable it, configure the upload header filter to remove authentication data from outbound file requests.
- Restrict access to the affected upload functionality.
Text from GitHub Advisory Database
Affected versions 6
- payload, npm>= 3.0.0, < 3.90.0GitHub
- payload, npm>= 4.0.0-canary.0, < 4.0.0-canary.34GitHub
- payloadaffected: > 3.0.0, < 3.90.0CVE List
- payloadaffected: > 4.0.0-canary.0, < 4.0.0-canary-34CVE List
- payload, npmfrom 3.0.0, fixed in 3.90.0OSV
- payload, npmfrom 4.0.0-canary.0, fixed in 4.0.0-canary.34OSV
References 5
- github.com/payloadcms/payload/commit/ba5cf6ae20d27a2c15106cb37466419031f86e6dFixvia CVE List
- github.com/payloadcms/payload/releases/tag/v3.90.0Fixvia CVE List
- github.com/payloadcms/payload/security/advisories/GHSA-pj5h-5q6c-3pfxAdvisoryvia CVE List
- github.com/advisories/GHSA-pj5h-5q6c-3pfxAdvisoryvia GitHub
- nvd.nist.gov/vuln/detail/CVE-2026-105861Referencevia GitHub