{
  "affected": [
    {
      "ranges": [
        {
          "database_specific": {
            "extracted_events": [
              {
                "introduced": "7.0.0"
              },
              {
                "fixed": "7.6.0"
              },
              {
                "introduced": "5.2.0"
              },
              {
                "fixed": "5.12.15"
              },
              {
                "introduced": "6.0.0"
              },
              {
                "last_affected": "6.6.4"
              }
            ],
            "source": "AFFECTED_FIELD"
          },
          "events": [
            {
              "introduced": "16bb032f8a6ffa1d3348a228c6f2b89eeefdb4a5"
            },
            {
              "fixed": "7f434467ffc60321bf9fa5500a012b7897153971"
            },
            {
              "introduced": "663f1cd08fcfbbb8b2373453feb86ec9390e1e64"
            },
            {
              "fixed": "40dbc3eb080d28a94a9493452ecc9cc8130460ea"
            },
            {
              "introduced": "2d8a04046d6735b5abd8510a68f1a90ef585675d"
            },
            {
              "last_affected": "02c5a802f5d2f689bf4751cd6109513479518bd4"
            }
          ],
          "repo": "https://github.com/neo4j/graphql",
          "type": "GIT"
        }
      ]
    }
  ],
  "aliases": [
    "GHSA-82m8-p9px-c3x5"
  ],
  "database_specific": {
    "cna_assigner": "Neo4j",
    "cwe_ids": [
      "CWE-639"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/19xxx/CVE-2026-19869.json"
  },
  "details": "@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.",
  "id": "CVE-2026-19869",
  "modified": "2026-09-11T03:31:00.216249363Z",
  "published": "2026-08-18T16:35:19.878Z",
  "references": [
    {
      "type": "WEB",
      "url": "https://registry.npmjs.org"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/19xxx/CVE-2026-19869.json"
    },
    {
      "type": "ADVISORY",
      "url": "https://github.com/neo4j/graphql/security/advisories/GHSA-82m8-p9px-c3x5"
    },
    {
      "type": "ADVISORY",
      "url": "https://neo4j.com/security/CVE-2026-19869"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2026-19869"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/neo4j/graphql"
    }
  ],
  "schema_version": "1.9.0",
  "severity": [
    {
      "score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N",
      "type": "CVSS_V4"
    }
  ],
  "summary": "Privilege Escalation via Dropped Field-Level @authentication"
}