{"answers":{"affected":"8 open source packages ship an affected version, including @apollo/composition.","exploited":"There is no known exploitation of CVE-2025-64530 in the wild and no public exploit code.","fix":"Upgrade @apollo/composition to a fixed version for your release line: 2.9.5, 2.10.4, 2.11.5 or 2.12.1.","what":"CVE-2025-64530 is a high-severity missing authorization vulnerability in apollographql federation, published on 13 Nov 2025. An attacker can exploit it over the internet without logging in, with no action from the victim."},"fix_prompt":"Check this codebase for CVE-2025-64530 and fix it if it is affected.\n\nWhat it is: CVE-2025-64530 is a high-severity missing authorization vulnerability in apollographql federation, published on 13 Nov 2025. An attacker can exploit it over the internet without logging in, with no action from the victim.\nExploitation: There is no known exploitation of CVE-2025-64530 in the wild and no public exploit code.\n\nAffected packages and fixed versions:\n- @apollo/composition (npm): affected all versions; fixed in 2.9.5\n- @apollo/composition (npm): affected all versions; fixed in 2.9.5\n- @apollo/composition (npm): affected from 2.10.0-alpha.3; fixed in 2.10.4\n- @apollo/composition (npm): affected from 2.10.0-alpha.3; fixed in 2.10.4\n- @apollo/composition (npm): affected from 2.11.0-preview.1; fixed in 2.11.5\n- @apollo/composition (npm): affected from 2.11.0-preview.1; fixed in 2.11.5\n- @apollo/composition (npm): affected from 2.12.0-preview.1; fixed in 2.12.1\n- @apollo/composition (npm): affected from 2.12.0-preview.1; fixed in 2.12.1\n\nTask:\n1. Search the dependency manifests and lockfiles (for example package.json, package-lock.json, requirements.txt, poetry.lock, uv.lock, pom.xml, build.gradle, go.mod, Cargo.lock, Gemfile.lock) and any Dockerfiles for the affected packages, including transitive dependencies.\n2. If an affected version is in use, upgrade it to the fixed version for its release line with the project's package manager, so the lockfile is regenerated. Prefer the smallest upgrade that fixes it.\n3. If there is no fix, or the upgrade would break the build, do not guess: explain the risk and the safest workaround instead.\n4. Run the tests and summarise what changed and why.\n5. If nothing in the project is affected, say so and change nothing.\n\nReference: https://insights.sbomify.com/CVE-2025-64530/ (Markdown: https://insights.sbomify.com/CVE-2025-64530/index.md)","id":"CVE-2025-64530","markdown":"https://insights.sbomify.com/CVE-2025-64530/index.md","name":"CVE-2025-64530","record":{"aliases":["GHSA-mx7m-j9xf-62hw","ROOT-APP-NPM-CVE-2025-64530"],"analysis":{"component_type":"library","fix_type":"upgrade","impacts":["security_bypass","data_read"],"network_reachable":"yes","non_default_config":true,"product_category":"Apollo Federation library","requires_auth":"none","summary":"Attackers can bypass access controls on interface fields by querying implementing types, exposing restricted data in Apollo Router.","user_interaction":"not_required","vuln_class":"missing_authorization"},"analysis_generated_by":"qwen3.8-flash-next","assigner":"GitHub_M","cpe":[],"cvss":{"score":7.5,"severity":"high","source":"cna","vector":"CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N","version":"3.1"},"cwes":[{"id":"CWE-288","name":"Authentication Bypass Using an Alternate Path or Channel"}],"description":"Apollo Federation is an architecture for declaratively composing APIs into a unified graph. A vulnerability in versions of Apollo Federation's composition logic prior to 2.9.5, 2.10.4, 2.11.5, and 2.12.1 allowed some queries to Apollo Router to improperly bypass access controls on types/fields. Apollo Federation incorrectly allowed user-defined access control directives on interface types/fields, which could be bypassed by instead querying the implementing object types/fields in Apollo Router via inline fragments, for example. A fix to versions 2.9.5, 2.10.4, 2.11.5, and 2.12.1 of composition logic in Federation now disallows interfaces types and fields to contain user-defined access control directives. Some workarounds are available. Users of Apollo Rover with an unpatched composition version or are using the Apollo Studio build pipeline with Federation version 2.8 or below should manually copy the access control requirements on interface types/fields to each implementing object type/field where appropriate. Do not remove those access control requirements from the interface types/fields, as unpatched Apollo Composition will not automatically generate them in the supergraph schema. Customers not using Apollo Router access control features (`@authenticated`, `@requiresScopes`, or `@policy` directives) or not specifying access control requirements on interface types/fields are not affected and do not need to take action.","ecosystems":["npm"],"exploits":{"exploitdb":0,"first_seen":null,"github_poc":0,"max_poc_stars":null,"metasploit":0,"nuclei":0,"refs":[],"tier":"none_known"},"has_fix":true,"headline":"@apollo/composition has Improper Enforcement of Access Control on Interface Types and Fields","id":"CVE-2025-64530","indexable":true,"kev":null,"kind":"cve","links":{"ecosystem":"npm","product":null,"products":[],"type":"missing_authorization","year":"2025"},"n_packages":8,"n_references":1,"next":{"headline":"Substance3D - Stager | Use After Free (CWE-416)","id":"CVE-2025-64531"},"packages":[{"ecosystem":"npm","fixed":["2.9.5"],"introduced":["0"],"last_affected":[],"package":"@apollo/composition","purl":null,"source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.9.5"],"introduced":["0"],"last_affected":[],"package":"@apollo/composition","purl":"pkg:npm/%40apollo/composition","source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.10.4"],"introduced":["2.10.0-alpha.3"],"last_affected":[],"package":"@apollo/composition","purl":null,"source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.10.4"],"introduced":["2.10.0-alpha.3"],"last_affected":[],"package":"@apollo/composition","purl":"pkg:npm/%40apollo/composition","source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.11.5"],"introduced":["2.11.0-preview.1"],"last_affected":[],"package":"@apollo/composition","purl":null,"source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.11.5"],"introduced":["2.11.0-preview.1"],"last_affected":[],"package":"@apollo/composition","purl":"pkg:npm/%40apollo/composition","source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.12.1"],"introduced":["2.12.0-preview.1"],"last_affected":[],"package":"@apollo/composition","purl":null,"source":"GHSA-mx7m-j9xf-62hw"},{"ecosystem":"npm","fixed":["2.12.1"],"introduced":["2.12.0-preview.1"],"last_affected":[],"package":"@apollo/composition","purl":"pkg:npm/%40apollo/composition","source":"GHSA-mx7m-j9xf-62hw"}],"prev":{"headline":"SpiceDB's WriteRelationships fails silently if payload is too big","id":"CVE-2025-64529"},"products":["federation"],"published":"2025-11-13","related":[],"sources":[{"class":"attribution","licence":"CVE Terms of Use (MITRE)","name":"CVE List","prefix":"CVE"},{"class":"attribution","licence":"CC BY 4.0","name":"GitHub Advisory Database","prefix":"GHSA"},{"class":"attribution","licence":"CWE Terms of Use","name":"CWE (MITRE)"},{"class":"attribution","licence":"FIRST CVSS licence","name":"CVSS (FIRST)"}],"ssvc":{"automatable":"no","exploitation":"none","technical_impact":"partial"},"state":"PUBLISHED","updated":"2025-11-14","vendors":["apollographql"]},"summary":"Attackers can bypass access controls on interface fields by querying implementing types, exposing restricted data in Apollo Router.","url":"https://insights.sbomify.com/CVE-2025-64530/"}