CVE-2026-25544: @payloadcms/drizzle has SQL Injection in JSON/RichText Queries on PostgreSQL/SQLite Adapters
(updated )
When querying JSON or richText fields, user input was directly embedded into SQL without escaping, enabling blind SQL Injection attacks. An unauthenticated attacker could extract sensitive data (emails, password reset tokens) and achieve full account takeover without password cracking.
Users are affected if ALL of these are true:
- Payload version < v3.73.0
- Using a Drizzle-based database adapter (
@payloadcms/drizzleas dependency):
@payloadcms/db-postgres@payloadcms/db-vercel-postgres@payloadcms/db-sqlite@payloadcms/db-d1-sqlite
- At least one accessible collection that has a
type: 'json'ortype: 'richText'field whereaccess.readreturns anything other thanfalse(trueorWhereconstraint)
Users are NOT affected if:
- Using
@payloadcms/db-mongodb - No JSON or richText fields exist in any collection
- All JSON/richText fields have
access: { read: () => false }
References
Code Behaviors & Features
Detect and mitigate CVE-2026-25544 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Learn more about Dependency Scanning →