CVE-2022-39322
criticalpriority · track · 40OT risk · elevatedEPSS 0.015 · 73 %ileEUUSEPSS · scored 2026-10-27
@keystone-6/core is a core package for Keystone 6, a content management system for Node.js. Starting with version 2.2.0 and prior to version 2.3.1, users who expected their `multiselect` fields to use the field-level access control - if configured - are vulnerable to their field-level access control not being used. List-level access control is not affected. Field-level access control for fields other than `multiselect` are not affected. Version 2.3.1 contains a fix for this issue. As a workaround, stop using the `multiselect` field.
cvss
Technical severity, 0–10. One row per scoring source.
base score 0–10 · higher = more severe · hover a vector to decode
ssvc
A stakeholder decision — act, attend, or track — from exploitation and impact.
weaknesses
The CWE weakness classes this flaw belongs to.
affected products (3)
Products and version ranges known to be affected.
advisories (1)
Vendor and ecosystem advisories describing this.
- GHSA-6mhr-52mv-6v6fField-level access-control bypass for multiselect field2022-10-18ghsa · osvUS
#### Impact `@keystone-6/core@2.2.0 || 2.3.0` users who are using the `multiselect` field, and provided field-level access control - are vulnerable to their field-level access control not being used. List-level access control is **NOT** affected. Field-level access control for fields other than `multiselect` are **NOT** affected. Example, **you are vulnerable if** you are using field-level access control on a `multiselect` like the following: ```ts const yourList = list({ access: { // this is list-level access control, this is NOT impacted }, fields: { yourFieldName: multiselect({ // this is field-level access control, for multiselect fields // this is vulnerable access: { create: ({ session }) => session?.data.isAdmin, update: ({ session }) => session?.data.isAdmin, }, options: [ { value: 'apples', label: 'Apples' }, { value: 'oranges', label: 'Oranges' }, ], // ... }), // ... }, // ... }); ``` #### Mitigation Please upgrade to `@keystone-6/core >= 2.3.1`, where this vulnerability has been closed. #### Workarounds If for some reason you cannot upgrade your dependencies, you should stop using the `multiselect` field. #### Credits Thanks to [Marek R](https://github.com/marekryb) for reporting and submitting the pull request to fix this problem. If you have any questions around this security advisory, please don't hesitate to contact us at [security@keystonejs.com](mailto:security@keystonejs.com), or [open an issue on GitHub](https://github.com/keystonejs/keystone/issues/new/choose). If you have a security flaw to report for any software in this repository, please see our [SECURITY policy](https://github.com/keystonejs/keystone/blob/main/SECURITY.md).
also known as (3)
Other names and identifiers for this entity.
sources
Which sources assert this record, and when.
references (7)
External citations — patches, advisories, analysis.
- https://cxsecurity.com/cveshow/CVE-2022-39322/cnnvd
- https://github.com/keystonejs/keystone/commit/65c6ee3deef23605fc72b80230908696a7a65e7ccnnvd
- https://github.com/keystonejs/keystone/security/advisories/GHSA-6mhr-52mv-6v6fcnnvd
- https://github.com/keystonejs/keystone/commit/65c6ee3deef23605fc72b80230908696a7a65e7cenisa_euvd
- https://github.com/keystonejs/keystone/security/advisories/GHSA-6mhr-52mv-6v6fenisa_euvd
- https://github.com/keystonejs/keystone/commit/65c6ee3deef23605fc72b80230908696a7a65e7cPatchThird Party Advisorynvd
- https://github.com/keystonejs/keystone/security/advisories/GHSA-6mhr-52mv-6v6fExploitThird Party Advisorynvd
Attackers weaponise vulnerabilities like this against internet-exposed services. See what is exposed on your perimeter with a free passive scan.
Free scan