GitHub Advisoryadvisory · npm

GHSA-9cvc-v7wm-992c When `ui.isAccessAllowed` is `undefined`, the `adminMeta` GraphQL query is publicly accessible

MEDIUM Published 2023-08-15 Modified 2023-08-15 Official page ↗
Aliases
CVE-2023-40027
Ecosystem
npm
Packages
@keystone-6/core
Severity
Moderate
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N
Weaknesses
CWE-862
Reviewed
2023-08-15

Affected packages

• npm @keystone-6/core: < 5.5.1 → fixed in 5.5.1

Description

Summary When `ui.isAccessAllowed` is `undefined`, the `adminMeta` GraphQL query is publicly accessible, that is to say, no session is required for the query. This is different to the behaviour of the default AdminUI middleware, which by default will only be publicly accessible if a `session` strategy is not defined. Impact This vulnerability does not affect developers using the `@keystone-6/auth` package, or any users that have written their own `ui.isAccessAllowed` (that is to say, you are unaffected if `ui.isAccessAllowed` is defined). This vulnerability does affect developers who thought that their `session` strategy will, by default, enforce that `adminMeta` is inaccessible by the public in accordance with that strategy; akin to the behaviour of the AdminUI middleware. Patches This vulnerability has been patched in `@keystone-6/core` version `5.5.1`. Workarounds You can opt to write your own `isAccessAllowed` to work-around this vulnerability. References Pull request https://github.com/keystonejs/keystone/pull/8771

Related

Alias · CVE (1)

  • CVE-2023-40027 Keystone is an open source headless CMS for Node.js — built with GraphQL and React. vulnerability

Weakness · CWE (1)

  • CWE-862 Missing Authorization weakness

References