Description
Incorrect authorization in the @authentication directive JWT where filter evaluation in Neo4j @neo4j/graphql versions 7.0.0 before 7.6.7 allows an attacker holding an otherwise-valid JWT to bypass all but the first filter condition via a multi-condition jwt where filter written in generic operator syntax.
Published: 2026-11-09
Score: 8.6 High
EPSS: n/a
KEV: No
Impact: Privilege Escalation
Action: Apply Patch
AI Analysis

Impact

The vulnerability arises from an incorrect evaluation of multi‑condition JSON Web Token (JWT) filters in the @authentication directive of the Neo4j @neo4j/graphql library. When a filter is expressed in generic operator syntax, only the first condition is evaluated, allowing an authorized JWT bearer to bypass the remaining conditions and gain improper access to data or operations. This flaw results in unauthorized data exposure or modification and can be exploited by any party with a valid JWT, potentially enabling a full compromise of the GraphQL API.

Affected Systems

Neo4j’s @neo4j/graphql component for all versions from 7.0.0 through 7.6.6 is affected. The fix is available in version 7.6.7 and later, which correctly evaluates all filter conditions in the JWT.

Risk and Exploitability

The CVSS score of 8.6 indicates a high‑severity flaw. The EPSS score is not available, but the lack of a KEV listing does not reduce the risk; an attacker with a legitimate JWT can readily construct a multi‑condition filter that only partially enforces authorization. The vulnerability is exploitable without requiring any user interaction, making it a significant threat in environments that rely on default JWT handling in the @neo4j/graphql package.

Generated by OpenCVE AI on November 9, 2026 at 11:40 UTC.

Remediation

Vendor Solution

Upgrade @neo4j/graphql to version 7.6.7 or later.


Vendor Workaround

For versions prior to 7.6.7, express multi-condition jwt where filters either with an explicit AND array (for example jwt: { AND: [{ iss: { eq: "https://idp.example.com" } }, { roles: { includes: "admin" } }] }) or with the inline operator syntax (for example roles_INCLUDES: "admin"). Both forms evaluate all conditions.


OpenCVE Recommended Actions

  • Upgrade @neo4j/graphql to version 7.6.7 or later
  • Use a workaround for earlier versions that rewrites multi‑condition JWT filters to use either an explicit AND array or the inline operator syntax so that all conditions are evaluated
  • Verify that the GraphQL schema and authentication logic are consistent with the library’s updated behavior to prevent future misconfigurations

Generated by OpenCVE AI on November 9, 2026 at 11:40 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 09 Nov 2026 10:00:00 +0000

Type Values Removed Values Added
Description Incorrect authorization in the @authentication directive JWT where filter evaluation in Neo4j @neo4j/graphql versions 7.0.0 before 7.6.7 allows an attacker holding an otherwise-valid JWT to bypass all but the first filter condition via a multi-condition jwt where filter written in generic operator syntax.
Title Incomplete evaluation of multi-condition JWT where filter in @authentication in @neo4j/graphql
Weaknesses CWE-863
References
Metrics cvssV4_0

{'score': 8.6, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: Neo4j

Published:

Updated: 2026-11-09T09:43:18.366Z

Reserved: 2026-09-16T16:17:17.929Z

Link: CVE-2026-92683

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-11-09T10:17:15.673

Modified: 2026-11-09T10:17:15.673

Link: CVE-2026-92683

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-11-09T11:45:09Z

Weaknesses