CVE-2026-105856
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.
- CVSS 4.0
- 8.6
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 - CVSS 3.1
- 8.3
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L - EPSS
- 0.3% chance of exploitation in the next 30 days; higher than 21% of CVEs (scores of 2026-10-25)
- CWE
- CWE-89
- Published
- Modified
- Record from
- the NVD, synced
Affected
- payloadcms:payload
Packages (OSV)
| Advisory | Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|---|
| GHSA-pj7x-6wpf-pgvp | npm | @payloadcms/db-sqlite | >=3.0.0 <3.90.0 | 3.90.0 |
| GHSA-pj7x-6wpf-pgvp | npm | @payloadcms/db-d1-sqlite | >=3.0.0 <3.90.0 | 3.90.0 |
| GHSA-pj7x-6wpf-pgvp | npm | @payloadcms/db-postgres | >=3.0.0 <3.73.0 | 3.73.0 |
| GHSA-pj7x-6wpf-pgvp | npm | @payloadcms/db-vercel-postgres | >=3.0.0 <3.73.0 | 3.73.0 |
| GHSA-pj7x-6wpf-pgvp | npm | @payloadcms/db-sqlite | >=4.0.0-canary.0 <4.0.0-canary.34 | 4.0.0-canary.34 |
| GHSA-pj7x-6wpf-pgvp | npm | @payloadcms/db-d1-sqlite | >=4.0.0-canary.0 <4.0.0-canary.34 | 4.0.0-canary.34 |