Parse Server
CVE-2025-68115
MEDIUM
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessCraft malicious reset/verify URL
-
DeliveryPhish victim into clicking link
-
ExploitUnescaped param reflected in HTML page
-
ExecutionScript executes in victim browser
-
ImpactSession/credential theft in app origin
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Output encoding, context-aware escaping
MITRE ATT&CK
2 techniques across 2 tactics: Initial Access, Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an attacker-crafted link to Parse Server's password-reset or email-verification HTML pages (e.g. the choose_password / request_password_reset / resend_verification_email routes) with a malicious payload placed in the token, username, or locale query parameter, which the server reflects unescaped into the page. The Pages Router feature serving these HTML pages must be reachable (the patch tests configure pages.enableRouter). The decisive limiting factor is required user interaction (UI:P): because this is reflected, not stored, an attacker must socially engineer a victim into clicking the crafted URL - there is no persistent payload and no server-side compromise. Affected versions are < 8.6.1 and the 9.x pre-releases >= 9.0.0 and < 9.1.0-alpha.3; no workaround exists other than upgrading. |
| Impact | This is a moderate, not high-priority, issue. The vendor-supplied CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N) scores 5.3 (Medium), and the signals are internally consistent: a reflected XSS requires victim interaction (UI:P) - the attacker must lure a user into clicking a crafted link - which is the single largest factor capping real-world risk. EPSS is low at 0.22% (11th percentile), consistent with a reflected client-side flaw that cannot be mass-exploited server-side. The vulnerability is NOT listed in CISA KEV and there is no public exploit identified at time of analysis; however, PR diff #9985 ships regression tests containing working XSS payloads ('"><script>alert("XSS")</script>', '<img src=x onerror=alert(1)>', '"><svg/onload=alert(1)>') against the token, username, and locale parameters, which effectively demonstrate exploitability even though they are tests rather than a standalone weaponized POC. Impact is limited (C:L/I:L) - reflected XSS in the browser context of a single tricked victim, not server compromise. No signals conflict. Net: a legitimate bug worth patching on a normal cadence, but not an emergency given the required user interaction, low EPSS, and absence of active exploitation. |
| Exploit ScenarioDerived | An attacker crafts a malicious URL to a Parse Server password-reset or email-verification page with a JavaScript payload embedded in the token, username, or locale query parameter, then phishes a target into clicking it (e.g. a fake 'reset your password' email). When the victim loads the page, the unescaped Mustache variable renders the payload and the script executes in the victim's browser against the Parse Server origin. The patch's test suite confirms payloads like '<img src=x onerror=alert(1)>' fire before the fix, so exploitability is demonstrated, though no standalone public exploit is identified. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 07, 2026
Reflected cross-site scripting in Parse Server's password reset and email verification HTML pages lets unauthenticated remote attackers inject arbitrary script into pages served by the Pages Router by placing a payload in the token, username, or locale query parameter, which the server reflects unescaped back into the response; affected releases are all versions prior to 8.6.1 and the 9.x pre-releases from 9.0.0 up to (but not including) 9.1.0-alpha.3. Because the flaw is reflected rather than stored, exploitation requires a victim to be socially engineered into clicking a crafted link (CVSS UI:R), after which script executes in the victim's browser context with limited confidentiality and integrity impact - no server-side compromise occurs. EPSS is a low 0.22% (11th percentile), this CVE is not in CISA KEV, and no public exploit code has been identified at time of analysis; the assessed risk is moderate rather than high priority.
RemediationAI
Vendor-released patch: upgrade to Parse Server 8.6.1 (8.x branch) or 9.1.0-alpha.3 (9.x branch), which escape the user-controlled values inserted into the password reset and email verification HTML pages via the upstream pull requests https://github.com/parse-community/parse-server/pull/9985 and https://github.com/parse-community/parse-server/pull/9986; full details are in advisory https://github.com/parse-community/parse-server/security/advisories/GHSA-jhgf-2h8h-ggxv. The vendor states no workarounds are available, so if immediate upgrading is impossible, compensating controls must be applied manually: disable the Pages Router (set pages.enableRouter to false) - this fully removes the reflecting templates but also breaks built-in password reset and email verification pages, forcing you to host your own reset/verification flows; alternatively, override the affected public/*.html templates with copies that use double-brace Mustache escaping instead of triple-brace, accepting that you must re-apply the change whenever upstream templates change; or, at the reverse proxy/WAF layer, reject or URL-decode-then-strip query strings containing HTML metacharacters in the token, username, and locale parameters on the choose_password, request_password_reset, and resend_verification_email routes, which reduces exploitation paths without changing application behavior but can break legitimate usernames or tokens containing quotes or angle brackets. Adding a restrictive Content-Security-Policy that disallows inline script offers only partial mitigation here because the injected payload sits directly in the page's own HTML context.
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Parse Server is an open-source Node.js backend (CPE cpe:2.3:a:parseplatform:parse-server, Node.js platform) that optionally serves user-facing HTML pages through its built-in Pages Router - the routes choose_password, request_password_reset, resend_verification_email, and the localized equivalents under public/ (including de, de-AT, and en variants). These templates were written in Mustache and used triple-brace interpolation ({{{token}}}, {{{username}}}, {{{locale}}}, {{{publicServerUrl}}}, {{{appId}}}), which deliberately disables Mustache's default HTML escaping; the affected values are populated directly from query-string parameters. The root cause is therefore CWE-79 (Improper Neutralization of Input During Web Page Generation, i.e. cross-site scripting): attacker-controlled query parameters were concatenated into HTML attribute and form-action contexts without context-appropriate encoding, so payloads such as "><script>alert("XSS")</script> or <img src=x onerror=alert(1)> rendered as live markup. The upstream fix changes these placeholders to double-brace syntax ({{token}}, {{username}}, {{locale}}, and so on), which applies Mustache's standard HTML entity escaping, and adds regression tests in spec/PagesRouter.spec.js asserting that payloads appear as entities like "><script> while legitimate values such as the username O'Brien are still preserved correctly.
Know when Parse Server gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
Reflected XSS delivered over the network needs no privileges (PR:N) but requires the victim to click a link (UI:R); script execution in another security context gives S:C with limited C/I and no availability impact.
Primary rating from Vendor (github).
CVSS VectorVendor: github
DescriptionCVE.org
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. In versions prior to 8.6.1 and 9.1.0-alpha.3, a Reflected Cross-Site Scripting (XSS) vulnerability exists in Parse Server's password reset and email verification HTML pages. The patch, available in versions 8.6.1 and 9.1.0-alpha.3, escapes user controlled values that are inserted into the HTML pages. No known workarounds are available.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Cross-Site Scripting occurs when an application accepts untrusted data and sends it to a web browser without proper validation or encoding.
Affected Products (CPE)CVE.org
More in Parse Server
View allParse Server is an open source http web server backend. Rated critical severity (CVSS 10.0), this vulnerability is remot
Unauthenticated query injection in Parse Server before 9.6.0-alpha.12/8.6.38. PoC available.
Parse Server has an incorrect authorization vulnerability enabling unauthorized data access across applications.
### Impact Parse Server's built-in OAuth2 auth adapter exports a singleton instance that is reused directly across all
Parse Server has a CVSS 10.0 access control vulnerability enabling complete bypass of all data access restrictions.
parse-server is a Parse Server for Node.js / Express. Rated critical severity (CVSS 10.0), this vulnerability is remotel
Authentication bypass in Parse Server allows unauthenticated access to protected API endpoints. Parse Server is a popula
SQL injection in Parse Server before 9.6.0-alpha.2/8.6.28.
SQL injection in Parse Server before 9.6.0-alpha.5/8.6.31. Third Parse Server SQLi.
SQL injection in Parse Server before 9.6.0-alpha.5/8.6.31.
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Rated critical s
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Rated critical s
NVD
CVE.org
EPSS
GitHub
Exploit-DB