{
  "schema_version": "1.4.0",
  "id": "GHSA-7mxx-3cgm-xxv3",
  "modified": "2025-03-24T18:41:25Z",
  "published": "2025-03-24T16:31:08Z",
  "aliases": [
    "CVE-2025-23204"
  ],
  "summary": "API Platform Core does not call GraphQl securityAfterResolver",
  "details": "### Summary\nA security check that gets called after GraphQl resolvers is always replaced by another one as there's no break in this clause: https://github.com/api-platform/core/pull/6444/files#diff-09e3c2cfe12a2ce65bd6c983c7ca6bfcf783f852b8d0554bb938e8ebf5e5fa65R56\n\nhttps://github.com/soyuka/core/blob/7e2e8f9ff322ac5f6eb5f65baf432bffdca0fd51/src/Symfony/Security/State/AccessCheckerProvider.php#L49-L57 \n\n### PoC\n\nCreate a graphql endpoint with a security after resolver.\n\n### Impact\n\nAs this fallsback to `security`, the impact is there only when there's only a security after resolver and none inside security. The test at https://github.com/api-platform/core/pull/6444 is probably broken.",
  "severity": [
    {
      "type": "CVSS_V3",
      "score": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:C/C:L/I:L/A:N"
    }
  ],
  "affected": [
    {
      "package": {
        "ecosystem": "Packagist",
        "name": "api-platform/core"
      },
      "ranges": [
        {
          "type": "ECOSYSTEM",
          "events": [
            {
              "introduced": "3.3.8"
            },
            {
              "fixed": "3.3.15"
            }
          ]
        }
      ]
    }
  ],
  "references": [
    {
      "type": "WEB",
      "url": "https://github.com/api-platform/core/security/advisories/GHSA-7mxx-3cgm-xxv3"
    },
    {
      "type": "ADVISORY",
      "url": "https://nvd.nist.gov/vuln/detail/CVE-2025-23204"
    },
    {
      "type": "WEB",
      "url": "https://github.com/api-platform/core/pull/6444"
    },
    {
      "type": "WEB",
      "url": "https://github.com/api-platform/core/pull/6444/files#diff-09e3c2cfe12a2ce65bd6c983c7ca6bfcf783f852b8d0554bb938e8ebf5e5fa65R56"
    },
    {
      "type": "WEB",
      "url": "https://github.com/api-platform/core/commit/dc4fc84ba93e22b4f44a37e90a93c6d079c1c620"
    },
    {
      "type": "PACKAGE",
      "url": "https://github.com/api-platform/core"
    },
    {
      "type": "WEB",
      "url": "https://github.com/soyuka/core/blob/7e2e8f9ff322ac5f6eb5f65baf432bffdca0fd51/src/Symfony/Security/State/AccessCheckerProvider.php#L49-L57"
    }
  ],
  "database_specific": {
    "cwe_ids": [
      "CWE-20",
      "CWE-484"
    ],
    "severity": "MODERATE",
    "github_reviewed": true,
    "github_reviewed_at": "2025-03-24T16:31:08Z",
    "nvd_published_at": "2025-03-24T16:15:56Z"
  }
}