Vulnerability · Published Aug 21, 2026 · Assigned by GitHub_M
CVE-2026-63421Keystone: `graphql.maxTake` bypass with negative `take`
High 7.5
In plain English
A high-severity improper input validation in keystone from keystonejs. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.7% (higher than 52% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Keystone is a content management system for Node.js. Prior to 6.5.3, the findMany resolver in packages/core/src/lib/core/queries/resolvers.ts compares the signed take argument directly with graphql.maxTake, allowing a remote unauthenticated GraphQL client to provide a negative take value whose magnitude exceeds the configured bound. The bypass also applies to relationship queries and can return more records than the developer intended, potentially exhausting service resources. This issue is fixed in version 6.5.3.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | @keystone-6/core | 6.5.3 | GHSA-cqmq-8755-7xvh |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| keystonejs | keystone | < 6.5.3 |
Weakness: CWE-20, CWE-480 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://github.com/keystonejs/keystone/security/advisories/GHSA-cqmq-8755-7xvh x_refsource_CONFIRM
- https://github.com/keystonejs/keystone/pull/9859 x_refsource_MISC
- https://github.com/keystonejs/keystone/commit/9fb88b246950ce4de754a43fe6416f20403577b1 x_refsource_MISC
- https://github.com/keystonejs/keystone/releases/tag/@keystone-6/core@6.5.3 x_refsource_MISC