Skip to content

Payload CMS bug bounty programs

payloadcms.com Updated

Payload CMS runs one public program: a Sorona bug bounty paying up to $1,500.

Top reward
$1,500
Sorona
Programs
1
1 pays cash
Targets in scope
12
2 types
Last change
None yet
Tracked since Nov 2026

Where to report

The one public program Payload CMS runs.

Amounts are the top reward per severity in the currency each program pays. First response is the platform's measured average when it publishes one, else what the policy promises.

What is in scope

12 targets. 6 excluded.

  • https://payloadcms.com

    Web

  • Authentication end to end: the auth-enabled collection, JWT issuance and verification, refresh, logout, password reset, email verification and API keys

    Products and areas

  • Drafts, versions and scheduled publishing, which hold unpublished content behind an access rule

    Products and areas

  • Hooks and the lifecycle they run in, where a hook observes or mutates a document with more authority than the request that triggered it

    Products and areas

  • The access-control functions themselves: the per-collection and per-field read, create, update and delete rules, and the query constraints they return

    Products and areas

  • The admin panel and the Next.js routes it mounts into the host application, along with the components that render user-supplied field data

    Products and areas

  • The database adapters and the query layer, covering how a where clause supplied by a request becomes a database query

    Products and areas

  • The Local API, which runs in-process inside the host Next.js application and can bypass HTTP-layer assumptions entirely

    Products and areas

  • The plugin interface and the first-party plugins built on it

    Products and areas

  • The published policy is three lines naming a security address and the GitHub advisory flow. It declares no scope boundary at all, so the whole of the Payload codebase and the @payloadcms/* packages are the target

    Products and areas

  • The REST API and the GraphQL API, both generated from a project's collections and both gated by the same access functions

    Products and areas

  • Upload-enabled collections, image resizing and the storage adapters that put files somewhere the app serves them from

    Products and areas

No target matches. Try part of a host name, such as the company name.

Out of scope 6

Don't test these. A program can exclude a host another program covers; the program you report to decides.

  • Access-control functions an application developer wrote incorrectly in their own project, rather than a defect in how Payload evaluates them

  • Deployment configuration, including a secret committed to a repository or an admin panel exposed without a network boundary

  • Figma's own properties, which belong to Figma's paid HackerOne program and are not this codebase

  • The policy publishes no exclusions of its own, so nothing else is carved out by name. What follows are genuine out-of-scope classes

  • Third-party community plugins and storage adapters that are not part of the Payload monorepo

  • Upstream Next.js, Node and database dependencies, unless Payload's own use of them is what makes the issue reachable

Recent changes

Reward and scope changes across every Payload CMS program, newest first.

No changes recorded yet. New targets and reward moves show up here and in the RSS feed.

Recent CVEs

Published vulnerabilities in Payload CMS products, from the NVD.

Search NVD
  • Payload is a free and open source headless content management system. In @payloadcms/db-mongodb versions before 3.87.0 and canary versions before 4.0.0-canary.20, an authenticated user who can update a document can modify fields that field-level write access control does not permit that user to change. The Postgres and SQLite adapters are not affected. This issue is fixed in versions 3.87.0 and 4.

  • CVE-2026-105863 Critical

    Payload is a free and open source headless content management system. In versions after 3.0.0 and before 3.90.0, a custom field option that maps a field to a reserved authentication claim name can place unintended values in the authentication token issued at login. This issue is fixed in version 3.90.0.

  • Payload is a free and open source headless content management system. In @payloadcms/plugin-multi-tenant versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user limited to one tenant can create a record in another tenant when at least one tenant-enabled collection exists. Reads and direct edits of existing documents in the target tenant are not bypassed. This issue

  • 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, an authenticated user who can update or delete uploads stored locally can cause file cleanup to remove unintended files outside the configured upload directory, resulting in data loss or service disruption. Deployments that restrict upload management to truste

  • 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, an unauthenticated attacker who knows an account email address or username can abuse the account lockout mechanism of a local-authentication collection to prevent that account from signing in. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.

  • Payload is a free and open source headless content management system. In @payloadcms/storage-s3 versions before 3.90.0 and canary versions before 4.0.0-canary.34, an authenticated user can overwrite an existing S3 object belonging to another upload collection when client uploads are enabled for multiple collections sharing a bucket and useCompositePrefixes is false or unset. This bypasses the targ

  • 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, local upload configurations that accept XML files can store an XML file and stylesheet that execute JavaScript in the Payload origin when a logged-in user opens the file. This issue is fixed in versions 3.90.0 and 4.0.0-canary.34.

  • Payload is a free and open source headless content management system. Prior to 3.90.0 and 4.0.0-canary.34, an attacker with read and create or update access to a collection containing a json field or a blocks field with blocksAsJSON enabled can inject SQL through a crafted field path and operators. Collections without those fields are not affected, and richText fields are not affected. The SQLite

About this page

This page gathers every public program listed under payloadcms.com: platform programs, self-hosted policies and security.txt contacts. Each program's own policy decides what is in scope and what it pays; check it before you test.

Something wrong or missing? Report a correction.