CVE-2026-22599: Strapi SQL injection in Content-Type Builder API

CVE-2026-22599 · Severity: critical · CVSS 7.2 · Published 2026-05-14

Strapi is a popular open-source headless CMS used to manage and deliver content via APIs. The Content Type Builder, an admin interface component, contained a SQL injection vulnerability that allowed authenticated administrators to inject arbitrary database commands. An attacker with admin credentials could read sensitive files from the database server, cause service outages, or potentially execute arbitrary code on the database host depending on the database engine capabilities.

Vendors: npm, Strapi.

Quick answers

Is CVE-2026-22599 exploited in the wild?
No. Junglewise Threat Intelligence has no report of CVE-2026-22599 being exploited in the wild.
How severe is CVE-2026-22599?
Critical severity, with a CVSS score of 7.2, published 14 May 2026.
Which products and versions are affected?
@strapi/content-type-builder (npm) >= 5.0.0, < 5.33.2, SEMVER:introduced=5.0.0,fixed=5.33.2; @strapi/plugin-content-type-builder (npm) >= 4.0.0, < 4.26.1, SEMVER:introduced=4.0.0,fixed=4.26.1; Strapi Content-Type Builder (v5) >= 5.0.0, < 5.33.2; Strapi Content-Type Builder Plugin (v4) >= 4.0.0, < 4.26.1; and 2 more.
Is there a fix for CVE-2026-22599?
Yes. @strapi/content-type-builder (npm): upgrade to 5.33.2 or later; @strapi/plugin-content-type-builder (npm): upgrade to 4.26.1 or later. Junglewise finds every place you run it, drafts the upgrade and applies it once you approve.
How is CVE-2026-22599 attacked?
It is attacked over the network, in a software library.
Am I affected by CVE-2026-22599?
Check whether you run @strapi/content-type-builder (npm), @strapi/plugin-content-type-builder (npm), Strapi Content-Type Builder (v5) or one of the others listed 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

  • @strapi/content-type-builder (npm): upgrade to 5.33.2 or later
    npm install @strapi/content-type-builder@5.33.2
  • @strapi/plugin-content-type-builder (npm): upgrade to 4.26.1 or later
    npm install @strapi/plugin-content-type-builder@4.26.1

Technical details

A database-query injection vulnerability existed in the Strapi Content-Type Builder write API (CWE-89: SQL injection). An authenticated administrator could inject arbitrary database statements through the column.defaultTo attribute when creating or modifying a content type. When the defaultTo attribute was set as a tuple [value, { isRaw: true }], the value was passed directly to Knex's db.connection.raw() without sanitization during schema migration, allowing arbitrary SQL execution at the database layer. This required high privileges (admin authentication) and network access to the /content-type-builder/content-types API endpoints. Depending on the database engine, exploitation could enable arbitrary file read via database utility functions, denial of service via forced server crash, or remote code execution on the database server. The patch restricts Content-Type Builder write APIs to development mode only; in production, v5.33.2+ returns 404 for these endpoints, removing the attack surface entirely.

Affected products

  • Strapi @strapi/content-type-builder 5.0.0 to 5.33.1
  • Strapi @strapi/plugin-content-type-builder 4.0.0 to 4.26.0

Identifiers

  • CVE-2026-22599
  • GHSA-3xcq-8mjw-h6mx

Timeline

  • 2026-05-13: disclosed: Vulnerability advisory published
  • 2026-01-08: patched: Patches released: v5.33.2 and v4.26.1

References

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