CVE-2026-105856

Payload: SQL injection in SQLite/Postgres

Published Oct 6, 2026 CVSS 4.0 · 8.6 High EPSS < 1% KEV · Not listed
Description
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.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

Source ID Title
Github GHSA Github GHSA GHSA-pj7x-6wpf-pgvp Payload: SQL injection in SQLite/Postgres
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
CPEs cpe:2.3:a:payloadcms:payload:*:*:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary0:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary10:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary11:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary12:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary13:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary14:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary15:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary16:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary17:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary18:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary19:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary1:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary20:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary21:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary22:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary23:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary24:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary25:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary26:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary27:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary28:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary29:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary2:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary30:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary31:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary32:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary33:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary3:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary4:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary5:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary6:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary7:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary8:*:*:*:node.js:*:*
cpe:2.3:a:payloadcms:payload:4.0.0:canary9:*:*:*:node.js:*:*
Metrics cvssV3_1

{'score': 8.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L'}

Type Values Removed Values Added
First Time appeared Payloadcms
Payloadcms db-d1-sqlite
Payloadcms db-postgres
Payloadcms db-sqlite
Payloadcms db-vercel-postgres
Payloadcms payload
Vendors & Products Payloadcms
Payloadcms db-d1-sqlite
Payloadcms db-postgres
Payloadcms db-sqlite
Payloadcms db-vercel-postgres
Payloadcms payload
Type Values Removed Values Added
Description 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.
Title Payload: SQL injection in SQLite/Postgres
Weaknesses CWE-89
References
Metrics cvssV4_0

{'score': 8.6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}

Weaknesses

Sources

Status
PUBLISHED
Assigner
GitHub_M
Published
Updated
Oct 6, 2026, 5:39 PM
Reserved
Oct 5, 2026, 11:06 PM
Status
Analyzed
Published
Oct 6, 2026, 5:17 PM
Modified
Oct 15, 2026, 12:11 AM