CVE-2026-105860: Payload multi-tenant plugin privilege escalation in tenant assignment

CVE-2026-105860 · Severity: high · CVSS 4 · Published 2026-10-06

Payload is a headless content management system. The multi-tenant plugin allows authenticated users to assign their own accounts to additional tenants they should not have access to, potentially granting unauthorized access to data and functionality across multiple organizational contexts. This affects deployments using default tenant field validation.

Vendors: npm, Payload CMS.

Quick answers

Is CVE-2026-105860 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-105860 being exploited in the wild.
How severe is CVE-2026-105860?
High severity, with a CVSS score of 4, published 6 October 2026.
Which products and versions are affected?
@payloadcms/plugin-multi-tenant (npm) SEMVER:introduced=0,fixed=3.90.0; Payload CMS Plugin-Multi-Tenant before 3.90.0 and canary versions before 4.0.0-canary.34.
Is there a fix for CVE-2026-105860?
Yes. @payloadcms/plugin-multi-tenant (npm): upgrade to 3.90.0 or later. Until then: Deployments not yet updated should override the default tenants arrayFieldAccess.create and arrayFieldAccess.update handlers with custom access control functions that validate the user is a member of the assigned tenant. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-105860 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-105860?
Check whether you run @payloadcms/plugin-multi-tenant (npm) or Payload CMS Plugin-Multi-Tenant at an affected version. Junglewise does that check for you around the clock: connect your code, cloud and domains, and it matches new vulnerabilities like this one against what you actually run and tells you when one reaches you.

How to fix

  • @payloadcms/plugin-multi-tenant (npm): upgrade to 3.90.0 or later
    npm install @payloadcms/plugin-multi-tenant@3.90.0

Deployments not yet updated should override the default tenants arrayFieldAccess.create and arrayFieldAccess.update handlers with custom access control functions that validate the user is a member of the assigned tenant.

Technical details

An authorization bypass in the @payloadcms/plugin-multi-tenant default arrayFieldAccess.create and arrayFieldAccess.update handlers allows authenticated users to write arbitrary tenant assignments. An attacker with a valid account can modify the tenants array field to assign themselves to other tenants without membership validation. Deployments that override these handlers with custom access control are not affected.

Affected products

  • Payload CMS plugin-multi-tenant before 3.90.0 and canary versions before 4.0.0-canary.34

Identifiers

  • CVE-2026-105860
  • GHSA-p96c-xwx8-3cqj

Timeline

  • 2026-10-06: disclosed

References

This page as Markdown. Free to reuse under CC BY 4.0 with a link back.