OFFLINE
Awaiting data
Security intelligence
MajorCritical vulnerability

CVE-2026-105856: Payload: SQL injection in SQLite/Postgres

GitHub Advisories · officialPublished Oct 7, 2026Risk 37/100

### 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 `blocksAsJSON` fields. `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`.

Upgrade affected packages to a patched version: @payloadcms/db-sqlite 3.90.0, @payloadcms/db-d1-sqlite 3.90.0, @payloadcms/db-postgres 3.73.0, @payloadcms/db-vercel-postgres 3.73.0, @payloadcms/db-sqlite 4.0.0-canary.34, @payloadcms/db-d1-sqlite 4.0.0-canary.34.

Vendor
Not specified
Product
@payloadcms/db-sqlite, @payloadcms/db-d1-sqlite, @payloadcms/db-postgres, @payloadcms/db-vercel-postgres
Exploitation
none known
Evidence
official

This record is attributed to GitHub Advisories. Exploitation status and remediation guidance are kept separate from the vulnerability's technical severity.

Open primary source