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.
The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data.
| Name | Vendor | Start Version | End Version |
|---|---|---|---|
| Payload | Payloadcms | * | 3.90.0 (excluding) |
| Payload | Payloadcms | 4.0.0-canary0 (including) | 4.0.0-canary0 (including) |
| Payload | Payloadcms | 4.0.0-canary1 (including) | 4.0.0-canary1 (including) |
| Payload | Payloadcms | 4.0.0-canary10 (including) | 4.0.0-canary10 (including) |
| Payload | Payloadcms | 4.0.0-canary11 (including) | 4.0.0-canary11 (including) |
| Payload | Payloadcms | 4.0.0-canary12 (including) | 4.0.0-canary12 (including) |
| Payload | Payloadcms | 4.0.0-canary13 (including) | 4.0.0-canary13 (including) |
| Payload | Payloadcms | 4.0.0-canary14 (including) | 4.0.0-canary14 (including) |
| Payload | Payloadcms | 4.0.0-canary15 (including) | 4.0.0-canary15 (including) |
| Payload | Payloadcms | 4.0.0-canary16 (including) | 4.0.0-canary16 (including) |
| Payload | Payloadcms | 4.0.0-canary17 (including) | 4.0.0-canary17 (including) |
| Payload | Payloadcms | 4.0.0-canary18 (including) | 4.0.0-canary18 (including) |
| Payload | Payloadcms | 4.0.0-canary19 (including) | 4.0.0-canary19 (including) |
| Payload | Payloadcms | 4.0.0-canary2 (including) | 4.0.0-canary2 (including) |
| Payload | Payloadcms | 4.0.0-canary20 (including) | 4.0.0-canary20 (including) |
| Payload | Payloadcms | 4.0.0-canary21 (including) | 4.0.0-canary21 (including) |
| Payload | Payloadcms | 4.0.0-canary22 (including) | 4.0.0-canary22 (including) |
| Payload | Payloadcms | 4.0.0-canary23 (including) | 4.0.0-canary23 (including) |
| Payload | Payloadcms | 4.0.0-canary24 (including) | 4.0.0-canary24 (including) |
| Payload | Payloadcms | 4.0.0-canary25 (including) | 4.0.0-canary25 (including) |
| Payload | Payloadcms | 4.0.0-canary26 (including) | 4.0.0-canary26 (including) |
| Payload | Payloadcms | 4.0.0-canary27 (including) | 4.0.0-canary27 (including) |
| Payload | Payloadcms | 4.0.0-canary28 (including) | 4.0.0-canary28 (including) |
| Payload | Payloadcms | 4.0.0-canary29 (including) | 4.0.0-canary29 (including) |
| Payload | Payloadcms | 4.0.0-canary3 (including) | 4.0.0-canary3 (including) |
| Payload | Payloadcms | 4.0.0-canary30 (including) | 4.0.0-canary30 (including) |
| Payload | Payloadcms | 4.0.0-canary31 (including) | 4.0.0-canary31 (including) |
| Payload | Payloadcms | 4.0.0-canary32 (including) | 4.0.0-canary32 (including) |
| Payload | Payloadcms | 4.0.0-canary33 (including) | 4.0.0-canary33 (including) |
| Payload | Payloadcms | 4.0.0-canary4 (including) | 4.0.0-canary4 (including) |
| Payload | Payloadcms | 4.0.0-canary5 (including) | 4.0.0-canary5 (including) |
| Payload | Payloadcms | 4.0.0-canary6 (including) | 4.0.0-canary6 (including) |
| Payload | Payloadcms | 4.0.0-canary7 (including) | 4.0.0-canary7 (including) |
| Payload | Payloadcms | 4.0.0-canary8 (including) | 4.0.0-canary8 (including) |
| Payload | Payloadcms | 4.0.0-canary9 (including) | 4.0.0-canary9 (including) |