CVE-2026-105845 Payload: SQL Injection in SQLite and Postgres
An untrusted user can exploit dynamic filters or joins to perform SQL injection in SQLite and Postgres adapters, potentially reading or modifying data.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-105845?
CVE-2026-105845 is a critical SQL injection vulnerability in payloadcms payload, published on 6 Oct 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
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.
Weakness: CWE-89
Which versions are affected by CVE-2026-105845?
4 open source packages ship an affected version, including payload.
| Package | Affected | Fixed in |
|---|---|---|
payload npm | From 3.0.0 | 3.88.0 |
payload npm | From 3.0.0 | 3.88.0 |
payload npm | From 4.0.0-canary.0 | 4.0.0-canary.27 |
payload npm | From 4.0.0-canary.0 | 4.0.0-canary.27 |
How do I fix CVE-2026-105845?
Upgrade payload to a fixed version for your release line: 3.88.0 or 4.0.0-canary.27.
Use parameterised queries everywhere and never build SQL by joining strings. Upgrade affected software first; a web application firewall only buys time. More about SQL injection.
Is CVE-2026-105845 being exploited?
There is no known exploitation of CVE-2026-105845 in the wild and no public exploit code.
Sources
Also known as GHSA-v49j-62m6-pgrr.