CVE-2026-19869
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.
How to fix
- neo4j graphql7.6.0, 5.12.15 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| neo4j graphql | 7.0.0 ≤ v < 7.6.0, 5.2.0 ≤ v < 5.12.15, 6.0.0 ≤ v ≤ 6.6.4 | 7.6.0, 5.12.15 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.