Description
Keystone is a content management system for Node.js. Prior to version 6.5.2, {field}.isFilterable access control can be bypassed in findMany queries by passing a cursor. This can be used to confirm the existence of records by protected field values. The fix for CVE-2025-46720 (field-level isFilterable bypass for update and delete mutations) added checks to the where parameter in update and delete mutations however the cursor parameter in findMany was not patched and accepts the same UniqueWhere input type. This issue has been patched in version 6.5.2.
Published: 2026-03-24
Score: 4.3 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Authorization bypass enabling record enumeration via protected fields
Action: Apply Patch
AI Analysis

Analysis and contextual insights are available on OpenCVE Cloud.

Remediation

No vendor fix or workaround currently provided.

Additional remediation guidance may be available on OpenCVE Cloud.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-cgcg-q9jh-5pr2 @keystone-6/core: `isFilterable` bypass via `cursor` parameter in findMany (CVE-2025-46720 incomplete fix)
History

Mon, 04 May 2026 15:30:00 +0000

Type Values Removed Values Added
CPEs cpe:2.3:a:keystonejs:keystone:*:*:*:*:*:node.js:*:*

Wed, 25 Mar 2026 14:15:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 25 Mar 2026 12:00:00 +0000

Type Values Removed Values Added
First Time appeared Keystonejs
Keystonejs keystone
Vendors & Products Keystonejs
Keystonejs keystone

Tue, 24 Mar 2026 19:30:00 +0000

Type Values Removed Values Added
Description Keystone is a content management system for Node.js. Prior to version 6.5.2, {field}.isFilterable access control can be bypassed in findMany queries by passing a cursor. This can be used to confirm the existence of records by protected field values. The fix for CVE-2025-46720 (field-level isFilterable bypass for update and delete mutations) added checks to the where parameter in update and delete mutations however the cursor parameter in findMany was not patched and accepts the same UniqueWhere input type. This issue has been patched in version 6.5.2.
Title @keystone-6/core: `isFilterable` bypass via `cursor` parameter in findMany
Weaknesses CWE-863
References
Metrics cvssV3_1

{'score': 4.3, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N'}


Subscriptions

Keystonejs Keystone
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-03-25T13:37:10.313Z

Reserved: 2026-03-18T21:23:36.678Z

Link: CVE-2026-33326

cve-icon Vulnrichment

Updated: 2026-03-25T13:37:04.561Z

cve-icon NVD

Status : Analyzed

Published: 2026-03-24T20:16:28.043

Modified: 2026-05-04T15:26:15.500

Link: CVE-2026-33326

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-03-25T20:57:47Z

Weaknesses