{"id":"GHSA-8cph-rgr4-g5vj","summary":"Parse Server's GraphQL \"Did you mean ...?\" validation suggestions disclose schema to unauthenticated callers","details":"### Impact\n\nParse Server's GraphQL endpoint discloses schema metadata to unauthenticated callers through `Did you mean ...?` suggestions embedded in GraphQL validation-error messages. An unauthenticated caller who knows only the public application id can iteratively send malformed queries to reconstruct class names, field names, argument names, mutation names, and input-object fields. This bypasses the `IntrospectionControlPlugin` enforced when `graphQLPublicIntrospection: false` (the default) and defeats the schema-hiding goal of prior advisories GHSA-48q3-prgv-gm4w and GHSA-q5q9-2rhp-33qw. Schema disclosure aids reconnaissance for downstream authorization probing but does not by itself leak object data or authentication material.\n\n### Patches\n\nA new `SchemaSuggestionsControlPlugin` Apollo plugin strips the `Did you mean ...?` suffix from GraphQL validation-error messages during `validationDidStart`, which runs before any introspection gate. The plugin applies only when `graphQLPublicIntrospection: false` and the caller is not a master-key or maintenance-key holder, matching the trust model of the existing `IntrospectionControlPlugin`.\n\n### Workarounds\n\nNo code workaround is available short of disabling the GraphQL API (`mountGraphQL: false`). Operators who require disclosure-resistant validation errors should upgrade to a patched release.\n\n### Resources\n\n- GitHub security advisory: https://github.com/parse-community/parse-server/security/advisories/GHSA-8cph-rgr4-g5vj\n- Fix Parse Server 9: https://github.com/parse-community/parse-server/pull/10467\n- Fix Parse Server 8: https://github.com/parse-community/parse-server/pull/10468","aliases":["BIT-parse-2026-47248","CVE-2026-47248"],"modified":"2026-06-16T13:26:19.305510429Z","published":"2026-05-29T19:18:01Z","database_specific":{"severity":"MODERATE","github_reviewed":true,"github_reviewed_at":"2026-05-29T19:18:01Z","nvd_published_at":"2026-06-12T19:16:28Z","cwe_ids":["CWE-209"]},"references":[{"type":"WEB","url":"https://github.com/parse-community/parse-server/security/advisories/GHSA-8cph-rgr4-g5vj"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-47248"},{"type":"WEB","url":"https://github.com/parse-community/parse-server/pull/10467"},{"type":"WEB","url":"https://github.com/parse-community/parse-server/pull/10468"},{"type":"PACKAGE","url":"https://github.com/parse-community/parse-server"}],"affected":[{"package":{"name":"parse-server","ecosystem":"npm","purl":"pkg:npm/parse-server"},"ranges":[{"type":"SEMVER","events":[{"introduced":"9.0.0"},{"fixed":"9.9.1-alpha.2"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/05/GHSA-8cph-rgr4-g5vj/GHSA-8cph-rgr4-g5vj.json"}},{"package":{"name":"parse-server","ecosystem":"npm","purl":"pkg:npm/parse-server"},"ranges":[{"type":"SEMVER","events":[{"introduced":"0"},{"fixed":"8.6.78"}]}],"database_specific":{"source":"https://github.com/github/advisory-database/blob/main/advisories/github-reviewed/2026/05/GHSA-8cph-rgr4-g5vj/GHSA-8cph-rgr4-g5vj.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N"}]}