ghsa-7cx5-254x-cgrq
Vulnerability from github
Impact
The MongoDB explain() method provides detailed information about query execution plans, including index usage, collection scanning behavior, and performance metrics. Parse Server permits any client to execute explain queries without requiring the master key. This exposes:
- Database schema structure and field names
- Index configurations and query optimization details
- Query execution statistics and performance metrics
- Potential attack vectors for database performance exploitation
Patches
A new databaseOptions.allowPublicExplain configuration option has been introduced that allows to restrict explain queries to the master key. The option defaults to true for now to avoid a breaking change in production systems that depends on public explain availability. In addition, a security warning is logged when the option is not explicitly set, or set to true. In a future major release of Parse Server, the default will change to false.
Workarounds
Implementing middleware to block explain queries from non-master-key requests, or monitor and alert on explain query usage in production environments.
{
"affected": [
{
"package": {
"ecosystem": "npm",
"name": "parse-server"
},
"ranges": [
{
"events": [
{
"introduced": "0"
},
{
"fixed": "8.5.0-alpha.5"
}
],
"type": "ECOSYSTEM"
}
]
}
],
"aliases": [
"CVE-2025-64502"
],
"database_specific": {
"cwe_ids": [
"CWE-201"
],
"github_reviewed": true,
"github_reviewed_at": "2025-11-13T00:09:41Z",
"nvd_published_at": "2025-11-10T22:15:37Z",
"severity": "MODERATE"
},
"details": "### Impact\n\nThe MongoDB `explain()` method provides detailed information about query execution plans, including index usage, collection scanning behavior, and performance metrics. Parse Server permits any client to execute explain queries without requiring the master key. This exposes:\n\n- Database schema structure and field names\n- Index configurations and query optimization details\n- Query execution statistics and performance metrics\n- Potential attack vectors for database performance exploitation\n\n### Patches\n\nA new `databaseOptions.allowPublicExplain` configuration option has been introduced that allows to restrict `explain` queries to the master key. The option defaults to `true` for now to avoid a breaking change in production systems that depends on public `explain` availability. In addition, a security warning is logged when the option is not explicitly set, or set to `true`. In a future major release of Parse Server, the default will change to `false`.\n\n### Workarounds\n\nImplementing middleware to block explain queries from non-master-key requests, or monitor and alert on explain query usage in production environments.",
"id": "GHSA-7cx5-254x-cgrq",
"modified": "2025-11-13T00:09:41Z",
"published": "2025-11-13T00:09:41Z",
"references": [
{
"type": "WEB",
"url": "https://github.com/parse-community/parse-server/security/advisories/GHSA-7cx5-254x-cgrq"
},
{
"type": "ADVISORY",
"url": "https://nvd.nist.gov/vuln/detail/CVE-2025-64502"
},
{
"type": "WEB",
"url": "https://github.com/parse-community/parse-server/pull/9890"
},
{
"type": "WEB",
"url": "https://github.com/parse-community/parse-server/commit/4456b02280c2d8dd58b7250e9e67f1a8647b3452"
},
{
"type": "PACKAGE",
"url": "https://github.com/parse-community/parse-server"
}
],
"schema_version": "1.4.0",
"severity": [
{
"score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:N/SC:L/SI:N/SA:N",
"type": "CVSS_V4"
}
],
"summary": "Parse Server allows public `explain` queries which may expose sensitive database performance information and schema details"
}
Sightings
| Author | Source | Type | Date |
|---|
Nomenclature
- Seen: The vulnerability was mentioned, discussed, or seen somewhere by the user.
- Confirmed: The vulnerability is confirmed from an analyst perspective.
- Published Proof of Concept: A public proof of concept is available for this vulnerability.
- Exploited: This vulnerability was exploited and seen by the user reporting the sighting.
- Patched: This vulnerability was successfully patched by the user reporting the sighting.
- Not exploited: This vulnerability was not exploited or seen by the user reporting the sighting.
- Not confirmed: The user expresses doubt about the veracity of the vulnerability.
- Not patched: This vulnerability was not successfully patched by the user reporting the sighting.