CVE-2026-63421
published 2026-08-21CVE-2026-63421: 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…
PriorityP344high7.5CVSS 3.1
AVNACLPRNUINSUCNINAH
EPSS
0.47%
38.8th percentile
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
2 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| keystone-6 | core | >= 0 < 6.5.3 | 6.5.3 |
| keystonejs | keystone | < 6.5.3 | 6.5.3 |
Stop checking back — get the weekly exploitation signal.
Every Monday: what got weaponized or added to CISA KEV in the last seven days — each CVE cross-linked to its PoC, Nuclei template, and detection rule. Free, one email a week, unsubscribe in one click.
GHSA
Keystone vulnerable to `graphql.maxTake` bypass with negative `take`
ghsa·2026-08-21
CVE-2026-63421 [HIGH] CWE-20 Keystone vulnerable to `graphql.maxTake` bypass with negative `take`
Keystone vulnerable to `graphql.maxTake` bypass with negative `take`
# Summary
The value of `graphql.maxTake` can be bypassed by providing a negative input.
This can be used to exceed the developer's intended `graphql.maxTake` value, allowing queries to return results in excess of the `graphql.maxTake` value set.
# Impact
This affects any project relying on `graphql.maxTake` to bound the number of items returned per query.
# Patches
This issue has been patched in `@keystone-6/core` version `6.5.3`.
If you cannot patch, you can workaround this by restricting `take` input values in your GraphQL queries to the bounded value, or by blocking negative values.
# Credit
This issue was found by [Haxset's](https://haxset.com) Security Scanner and validated by their team.
VulDB
KeystoneJS Keystone up to 6.5.2 FindMany Resolver resolvers.ts findMany resolver take input validation
vuldb·2026-08-21·CVSS 7.5
CVE-2026-63421 [HIGH] KeystoneJS Keystone up to 6.5.2 FindMany Resolver resolvers.ts findMany resolver take input validation
A vulnerability, which was classified as critical, was found in KeystoneJS Keystone up to 6.5.2. This issue affects the function findMany resolver of the file packages/core/src/lib/core/queries/resolvers.ts of the component FindMany Resolver. The manipulation of the argument take results in improper input validation.
This vulnerability is known as CVE-2026-63421. It is possible to launch the attack remotely. No exploit is available.
You should upgrade the affected component.
No detection rules found.
No public exploits indexed.
No writeups or analysis indexed.
2026-08-21
Published