CVE-2026-19869

Privilege Escalation via Dropped Field-Level @authentication

State
Published
Severity
7.6 High
Published
Aug 18, 2026
Updated
Aug 19, 2026
Reserved
Aug 14, 2026

Read the record on cve.org

Description

@neo4j/graphql from 5.2.0 until the patched versions fails to enforce field-level @authentication rules on root custom-resolver fields when a type-level @authentication rule is also present on the same operation type. When both a type-level @authentication (on Query/Mutation) and a field-level @authentication (on a root custom-resolver field within that type) are declared, only the type-level rule is evaluated and the field-level rule is silently discarded. As a result a stricter per-field requirement — such as an admin-role JWT claim (jwt: { roles_INCLUDES: "admin" }) — is never checked, and any client that satisfies the coarser type-level requirement can invoke the more-restricted field. No token forgery is involved: a legitimately issued, correctly signed non-admin token (e.g. roles: ["user"]) is sufficient.

Scores

CVSSScoreVectorSource
4.07.6 HighCVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:NNeo4j

Weaknesses

  • CWE-639 Authorization bypass through User-Controlled key

Affected Products

ProductVersions
graphqlneo4j
  • 7.0.0 to before 7.6.0Affected
  • 5.2.0 to before 5.12.15Affected
  • 6.0.0 through 6.6.4Affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.