Critical, CVSS 9.8npmAmendedPublished
@payloadcms/drizzle has SQL Injection in JSON/RichText Queries on PostgreSQL/SQLite Adapters
CVE-2026-25544 · GHSA-xx6w-jxg9-2wh8
- Affected
- npm @payloadcms/drizzle < 3.73.0
- Fixed in
- 3.73.0· Vendor fix available
- Issue
- Impact 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: 1. Payload version < v3.73.0 2. Using a Drizzle-based database adapter (@payloadcms/drizzle as dependency): - @payloadcms/db-postgres - @payloadcms/db-vercel-postgres - @payloadcms/db-sqlite - @payloadcms/db-d1-sqlite 3. At least one accessible collection that has a type: 'json' or type: 'richText' field where access.read returns anything other than false (true or Where constraint) 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 } Patches Upgrade to Payload v3.73.0 or later. Workarounds If a project cannot upgrade immediately, add…
Recommended action: Upgrade to 3.73.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.