Every CVE Search/ Get API key

CVE-2026-105856

Payload: SQL injection in SQLite/Postgres

8.6 HighFix available

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 packages are fixed in versions 3.90.0 and 4.0.0-canary.34, and the Postgres packages are fixed in version 3.73.0.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
Low
User interaction
None

What an attacker can affect

Confidentiality
High
Integrity
High
Availability
None

Exploit likelihood

0.29%Unchanged since Oct 7, 2026
90%50%10%1%

What each source reports

CVE List Score used 8.6

Payload: SQL injection in SQLite/Postgres

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 packages are fixed in versions 3.90.0 and 4.0.0-canary.34, and the Postgres packages are fixed in version 3.73.0.

Record
CVE-2026-105856
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-89
Updated
2026-11-02
EUVDEUVD-2026-93500 8.6

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 packages are fixed in versions 3.90.0 and 4.0.0-canary.34, and the Postgres packages are fixed in version 3.73.0.

Record
EUVD-2026-93500
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-pj7x-6wpf-pgvp 8.6

Payload: SQL injection in SQLite/Postgres

Impact

An attacker who has read plus create or update access to a collection can submit a request that includes a SQL injection targeting a specific field path shape and operators in Payload's SQLite and Postgres.

You are affected if:

  • You use @payloadcms/db-sqlite or @payloadcms/db-d1-sqlite.
  • You use @payloadcms/db-postgres or @payloadcms/db-vercel-postgres < 3.73.0.
  • A readable collection has a json field, or a blocks field with blocksAsJSON: true.
  • The attacker has read plus create or update access on it.

You are not affected if:

  • You have no json or blocksAsJSONfields.richText` is not affected.
  • You run a patched version.

Patches

The patched version sanitizes the query input to prevent injection.

Users should upgrade Payload packages to >= 3.90.0 or >= 4.0.0-canary.34.

Record
GHSA-pj7x-6wpf-pgvp
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-89
Updated
2026-11-02
NVD 8.6

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 packages are fixed in versions 3.90.0 and 4.0.0-canary.34, and the Postgres packages are fixed in version 3.73.0.

Record
CVE-2026-105856
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
CVSS 3.1
8.3 HighCVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Weakness
CWE-89
Updated
2026-11-02
OSV 8.6

Payload: SQL injection in SQLite/Postgres

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 packages are fixed in versions 3.90.0 and 4.0.0-canary.34, and the Postgres packages are fixed in version 3.73.0.

Record
CVE-2026-105856
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-89
Updated
2026-11-02
OSVCVE-2026-63316 8.7

SQL Injection in Payload CMS

A SQL injection vulnerability has been identified in Payload CMS. Improper neutralization of input provided by user into "in" and "not_in" query paramethers allows an authenticated attacker to perform SQL Injection attacks.

This issue was fixed in version 3.90.0 and 4.0.0-canary.34.

Record
CVE-2026-63316
CVSS 4.0
8.7 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N
Weakness
CWE-89
Updated
2026-11-02
OSVGHSA-pj7x-6wpf-pgvp 8.6

Payload: SQL injection in SQLite/Postgres

Impact

An attacker who has read plus create or update access to a collection can submit a request that includes a SQL injection targeting a specific field path shape and operators in Payload's SQLite and Postgres.

You are affected if:

  • You use @payloadcms/db-sqlite or @payloadcms/db-d1-sqlite.
  • You use @payloadcms/db-postgres or @payloadcms/db-vercel-postgres < 3.73.0.
  • A readable collection has a json field, or a blocks field with blocksAsJSON: true.
  • The attacker has read plus create or update access on it.

You are not affected if:

  • You have no json or blocksAsJSONfields.richText` is not affected.
  • You run a patched version.

Patches

The patched version sanitizes the query input to prevent injection.

Users should upgrade Payload packages to >= 3.90.0 or >= 4.0.0-canary.34.

Record
GHSA-pj7x-6wpf-pgvp
CVSS 4.0
8.6 HighCVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Weakness
CWE-89
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
@payloadcms/db-sqlite
npm
3.0.0 up to 3.90.0
3.90.0
@payloadcms/db-d1-sqlite
npm
3.0.0 up to 3.90.0
3.90.0
@payloadcms/db-postgres
npm
3.0.0 up to 3.73.0
3.73.0
@payloadcms/db-vercel-postgres
npm
3.0.0 up to 3.73.0
3.73.0
@payloadcms/db-sqlite
npm
4.0.0-canary.0 up to 4.0.0-canary.34
4.0.0-canary.34
@payloadcms/db-d1-sqlite
npm
4.0.0-canary.0 up to 4.0.0-canary.34
4.0.0-canary.34
@payloadcms/db-sqlite
npm
From an advisory covering 2 CVEs
3.0.0 up to 3.90.0
3.90.0
@payloadcms/db-d1-sqlite
npm
From an advisory covering 2 CVEs
3.0.0 up to 3.90.0
3.90.0
@payloadcms/db-postgres
npm
From an advisory covering 2 CVEs
3.0.0 up to 3.73.0
3.73.0
@payloadcms/db-vercel-postgres
npm
From an advisory covering 2 CVEs
3.0.0 up to 3.73.0
3.73.0
@payloadcms/db-sqlite
npm
From an advisory covering 2 CVEs
4.0.0-canary.0 up to 4.0.0-canary.34
4.0.0-canary.34
@payloadcms/db-d1-sqlite
npm
From an advisory covering 2 CVEs
4.0.0-canary.0 up to 4.0.0-canary.34
4.0.0-canary.34

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-105856 is a high vulnerability (CVSS 8.6) in Payloadcms Payload, published October 6, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.29%, the 22nd percentile. Fixed in @payloadcms/db-sqlite 3.90.0.

References

Show 4 moreShow less
MoveEnter Open