Payload CMS: SQL injection in SQLite and Postgres adapters via dynamic filters and joins
Summary
Payload is a headless content management system. Versions 3.0.0 before 3.88.0 and 4.0.0-canary before 4.0.0-canary.27 contain an SQL injection flaw in the SQLite and Postgres database adapters. An untrusted user who can query readable collections through dynamic filters or joins can craft a request that injects SQL, which may allow reading, changing or deleting database content. MongoDB installations are not affected.
Affected
- Payload (npm package payload) 3.0.0 up to but excluding 3.88.0
- Payload 4.0.0-canary.0 up to but excluding 4.0.0-canary.27
- Only SQLite and PostgreSQL adapters; MongoDB is not affected
Fixed in
- Payload 3.88.0
- Payload 4.0.0-canary.27
Workaround
- No vendor workaround. The vendor advises upgrading.
- Temporary only: restrict access to affected API paths and review database logs for unusual query errors.
Exploitation
- CVSS 3.1 score 9.8 (critical), network attack vector, low complexity, no privileges and no user interaction required.
- CISA SSVC: automatable yes, technical impact total, exploitation none.
- Not marked as known exploited at the time of research. Public proof of concept: unknown.
Our recommendation
- Inventory all Payload instances and check the payload and @payloadcms/* package versions in lockfiles.
- Check whether the instance uses SQLite or PostgreSQL and whether any collection is publicly readable with filter or join support.
- Upgrade to 3.88.0, 4.0.0-canary.27 or later.
- If patching is delayed, restrict affected API paths and monitor database logs.
Public exploits
PoC-in-GitHub, Metasploit and Exploit-DB list nothing for this CVE.
Research sources
- Vendor advisory GHSA-v49j-62m6-pgrr github.com
- Fix commit a742140 github.com
- Release v3.88.0 github.com
- GitHub Advisory Database GHSA-v49j-62m6-pgrr github.com
- OSV CVE-2026-105845 osv.dev
Researched and written up in English and German by an AI (Claude by Anthropic) based on NVD, CISA, EPSS and the sources listed. The vendor information is authoritative. Researched on 30 Oct 2026, 21:06.
Original description (NVD)
Payload is a free and open source headless content management system. In versions from 3.0.0 before 3.88.0 and canary versions before 4.0.0-canary.27, an untrusted user who can query readable collections through dynamic filters or joins can submit a request that causes SQL injection in the SQLite and Postgres adapters. This issue is fixed in versions 3.88.0 and 4.0.0-canary.27.
Sources
The tracker combines official, freely usable data sources – updated continuously:
- NVD (NIST) – CVEs, rating (CVSS), affected products
- CISA KEV – vulnerabilities confirmed by CISA as actively exploited
- CISA Vulnrichment – CISA assessment (SSVC) in the official CVE record
- FIRST EPSS – probability of exploitation
- Microsoft MSRC – Patch Tuesday: vulnerabilities, severity, updates
- PoC-in-GitHub – public proof-of-concept repositories
- Metasploit (Rapid7) – modules of the Metasploit Framework
- Exploit-DB (OffSec) – archive of public exploits (links only)
- Patch days: official vendor pages (linked per vendor) (Vendor patch days)
This product uses data from the NVD API but is not endorsed or certified by the NVD. EPSS data © FIRST.org.
Affected? We can help.
We check whether your systems are affected, install updates and close the gap – continuously with the System Health Checker if you wish.
