Skip to content

Strapi

Bug bounty on Sorona strapi.io

Accepting reports open-source
Top reward
$1,500
Top severity paid
Critical
Assets in scope
12
Public CVEs
40
Last change
No changes yet

At a glance

What to know before you start testing.

Pays from $1,500
for critical bugs.
Partial safe harbor
Some legal protection; read the terms.
Publish after a fix
Coordinate the timing with the company.

Rewards

What Sorona lists as the payout for each severity.

Severity Reward
Critical $1,500+
High $700+
Medium $300+
Low $100 $100 / 1 month Claude Max
Safe harbor
Partial Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf.

Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original

Scope

12 assets you may test, 6 excluded.

Web 1

  • https://strapi.io

Products and areas 11

  • API tokens and transfer tokens, including their scoping, storage and revocation
  • Authentication for both admin users and API consumers: JWT issuance and verification, refresh, registration, password reset, email confirmation and the SSO providers
  • The admin RBAC model, covering custom roles, field-level and condition-based permissions, and the admin API behind the panel
  • The content API in both its REST and GraphQL forms, generated from a project's content types and reachable by every front end the project serves
  • The content-type builder and the schema files it writes to disk, which change the shape of the API at runtime
  • The database query layer across every supported engine, particularly how filter, sort and populate parameters become a query
  • The data transfer tooling and the import and export routines, which move whole datasets between environments
  • The media library, the upload provider interface and the image processing that runs over uploaded files
  • The plugin loader, the lifecycle hooks and the middleware chain every request passes through
  • The policy declares scope by version: v5.x GA and stable releases plus every @strapi/* package in the monorepo, with EOL v3.x and v4.x, non-GA tags, marketplace plugins and forks named out
  • The users-permissions layer, which decides which role reaches which route and which field on the public-facing API
Out of scope (6)
  • Anything reproducing only under strapi develop, excluded by name; the policy accepts findings against strapi start with a hardened production configuration
  • A role or permission an operator configured deliberately, rather than a check the framework failed to apply
  • EOL v3.x and v4.x releases, non-GA tags, marketplace plugins and forks, all named out by the policy's scope statement
  • Reports routed through huntr or any other platform the policy states it does not support, and reports sent to the security address by researchers who could have used GitHub
  • Strapi Cloud tenants, which the policy places out of scope for testing and which carry no bounty
  • Upstream Node, framework and database defects, unless Strapi's own use of them is what makes the issue reachable

Rules

What the policy asks of you, and the bug types it won't reward, quoted from Sorona's policy.

While testing

  • Submit through a GitHub Security Advisory on strapi/strapi
  • GHSA is the only accepted intake channel for security reports
  • AI usage must be disclosed, attachments are not accepted, reports must be in English
  • Development mode is excluded outright
  • Strapi Cloud has no bounty either and its tenants are out of scope for testing

Not accepted

  • A role or permission an operator configured deliberately, rather than a check the framework failed to apply
  • Upstream Node, framework and database defects, unless Strapi's own use of them is what makes the issue reachable
  • Anything that reproduces under strapi develop and not under strapi start with a hardened production configuration

Summarised with AI from the program policy on Sorona, read 12 Nov 2026, and checked word for word against it. Read the original

Changes

Tracked since 11 Nov 2026. Last checked 1 hour ago.

No changes yet. When the rewards or scope move, you will see it here and in the RSS feed.

Public CVEs

Published vulnerabilities in this vendor's products, from the NVD.

Search NVD
CVESeverityPublished
CVE-2026-57997 Medium 6.3 29 Jun 2026
CVE-2026-27886 Critical 9.2 14 May 2026
CVE-2026-22706 Low 2.1 14 May 2026
CVE-2026-22707 Medium 5.3 14 May 2026
CVE-2026-22599 Critical 9.3 14 May 2026
CVE-2025-64526 Medium 6.9 14 May 2026
CVE-2025-53092 Medium 6.5 16 Oct 2025
CVE-2025-25298 Medium 6.3 16 Oct 2025
CVE-2024-56143 High 8.2 16 Oct 2025
CVE-2024-52588 Medium 4.9 29 May 2025
CVE-2024-37818 High 8.6 20 Jun 2024
CVE-2024-29181 Low 2.3 12 Jun 2024
CVE-2024-31217 Medium 5.3 12 Jun 2024
CVE-2024-34065 High 7.1 12 Jun 2024
CVE-2023-48218 Medium 5.3 20 Nov 2023
CVE-2023-39345 High 7.6 6 Nov 2023
CVE-2023-38507 High 7.3 15 Sep 2023
CVE-2023-37263 Medium 6.8 15 Sep 2023
CVE-2023-36472 Medium 5.8 15 Sep 2023
CVE-2023-34235 High 8.6 25 Jul 2023
CVE-2023-34093 Medium 4.8 25 Jul 2023
CVE-2023-22621 High 7.2 19 Apr 2023
CVE-2023-22893 High 7.5 19 Apr 2023
CVE-2023-22894 Medium 4.9 19 Apr 2023
CVE-2022-31367 High 8.8 27 Sep 2022
CVE-2022-32114 High 8.8 13 Jul 2022
CVE-2022-29894 Medium 4.8 13 Jun 2022
CVE-2022-30617 High 8.8 19 May 2022
CVE-2022-30618 High 7.5 19 May 2022
CVE-2021-46440 High 7.5 3 May 2022
CVE-2022-27263 Critical 9.8 12 Apr 2022
CVE-2022-0764 Medium 6.7 26 Feb 2022
CVE-2021-28128 High 8.1 6 May 2021
CVE-2020-27664 Critical 9.8 22 Oct 2020
CVE-2020-27665 High 7.5 22 Oct 2020
CVE-2020-27666 Medium 5.4 22 Oct 2020
CVE-2020-13961 Medium 6.5 19 Jun 2020
CVE-2020-8123 Medium 4.9 4 Feb 2020
CVE-2019-19609 High 7.2 5 Dec 2019
CVE-2019-18818 Critical 9.8 7 Nov 2019

Original policy

Copied from sorona.xyz on 12 Nov 2026. The summaries on this page are made from it; the live page may have changed since.

Skip to content What this pays This project runs no bounty of its own. sorona.xyz pays you directly on qualified, reproduced findings. Severity │ sorona.xyz pays Critical │ $1,500+ High │ $700+ Medium │ $300+ Low │ $100 / 1 month Claude Max Submit a vulnerability CVE history 8 Last 12 months Access control 40 % Auth bypass 25 % Injection 20 % Info disclosure 15 % Latest advisories Loading the feed Overview Strapi is the Node headless CMS teams put in front of their own database and then expose to a public front end, at roughly 851,000 npm installs a month. The permission layer is the product: every REST and GraphQL route is gated by a role configuration an operator clicks together in the admin panel, so a defect there publishes a customer table rather than a blog post. Eight advisories landed in the last twelve months, two of them critical in a single batch in May. The policy is unusually blunt about money, ruling out bounties or any other reward and refusing to negotiate compensation at all. sorona.xyz pays you directly on qualified, reproduced findings. In scope The policy declares scope by version: v5.x GA and stable releases plus every @strapi/* package in the monorepo, with EOL v3.x and v4.x, non-GA tags, marketplace plugins and forks named out The content API in both its REST and GraphQL forms, generated from a project's content types and reachable by every front end the project serves The users-permissions layer, which decides which role reaches which route and which field on the public-facing API The admin RBAC model, covering custom roles, field-level and condition-based permissions, and the admin API behind the panel Authentication for both admin users and API consumers: JWT issuance and verification, refresh, registration, password reset, email confirmation and the SSO providers API tokens and transfer tokens, including their scoping, storage and revocation The media library, the upload provider interface and the image processing that runs over uploaded files The content-type builder and the schema files it writes to disk, which change the shape of the API at runtime The plugin loader, the lifecycle hooks and the middleware chain every request passes through The data transfer tooling and the import and export routines, which move whole datasets between environments The database query layer across every supported engine, particularly how filter, sort and populate parameters become a query Out of scope EOL v3.x and v4.x releases, non-GA tags, marketplace plugins and forks, all named out by the policy's scope statement Anything reproducing only under strapi develop , excluded by name; the policy accepts findings against strapi start with a hardened production configuration Strapi Cloud tenants, which the policy places out of scope for testing and which carry no bounty Reports routed through huntr or any other platform the policy states it does not support, and reports sent to the security address by researchers who could have used GitHub Upstream Node, framework and database defects, unless Strapi's own use of them is what makes the issue reachable A role or permission an operator configured deliberately, rather than a check the framework failed to apply Most-valued findings Anything the public role reaches that it should not. The default public role is the first thing every Strapi install exposes and the most misconfigured surface in the product, so a core defect there is exploitable across the whole install base at once Admin RBAC bypass, custom role upward to super admin, on a panel that also writes schema files and can change the API's shape Authentication defects in JWT issuance, verification or password reset on either the admin or the API consumer path. Two criticals landed in a single batch in May 2026 API token and transfer token handling, where a scoped token reaches unscoped data or a token minted for one environment works against another Injection through the query layer, particularly filter, sort and populate parameters that pass request input into a database query Field-level permission leaks through GraphQL or through a populated relation, where a field denied on a direct read returns via another route Upload handling and the provider interface, where a file lands somewhere it is served from or executed Anything reproducible under strapi start with a hardened production config, since that is the only configuration the policy will accept a report against Program rules Submit through sorona.xyz. This project runs no bounty of its own; we validate, coordinate disclosure with the maintainers, and pay you directly. Submit through a GitHub Security Advisory on strapi/strapi . The policy states in capitals that GHSA is the only accepted intake channel for security reports [email protected] exists only for researchers in jurisdictions where GitHub is blocked or restricted, and the policy states it is not an escalation channel In scope: v5.x GA and stable releases plus every @strapi/* package in the monorepo. Out: v3.x and v4.x, non-GA tags, marketplace plugins and forks Development mode is excluded outright. Anything that reproduces under strapi develop and not under strapi start with a hardened production configuration will be closed AI usage must be disclosed, attachments are not accepted, reports must be in English, and the project publishes no response SLA Strapi Cloud has no bounty either and its tenants are out of scope for testing. The policy also names huntr.dev among platforms it does not support Disclosure Coordinated through the GitHub advisory flow and published as a GHSA on strapi/strapi alongside a patched release, in batches tied to those releases: five advisories landed together on 13 May 2026. Paid Strapi tiers receive pre-disclosure notification, so the practical embargo runs at least as long as that notice period. No day count and no response time are published anywhere, so expect to wait and agree a date in the advisory thread. Safe harbor Sorona will not pursue legal action against you for good-faith research submitted to us in line with this policy. We cannot speak for the upstream project, its vendor, or any third party, and we do not grant authorization on their behalf. You are responsible for understanding and following the laws that apply to you, wherever you are, and for staying within any scope the project has defined. Submit a vulnerability