Skip to main content

Parse Server CVE-2025-68115

MEDIUM
Cross-site Scripting (XSS) (CWE-79)
2025-12-16 security-advisories@github.com
5.3
CVSS 4.0 · Vendor: github
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Craft malicious reset/verify URL
  2. Delivery
    Phish victim into clicking link
  3. Exploit
    Unescaped param reflected in HTML page
  4. Execution
    Script executes in victim browser
  5. Impact
    Session/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.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – 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

npm parse-server fix: 8.6.1, 9.1.0-alpha.3

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 &quot;&gt;&lt;script&gt; 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

Vendor (github) PRIMARY 5.3 MEDIUM
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
vuln.today AI 6.1 MEDIUM

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.

3.1 AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
None
User Interaction
Passive
Vulnerable system: Confidentiality
Low
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
Low
Subsequent system: Integrity
Low
Subsequent system: Availability
None

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

EPSS Score
0.2%
Top 89% exploitable
Prevalence
Medium
popular open-source Node.js backend, common but not ubiquitous
Data Quality
4 sources
Confidence: Medium

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

26
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

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

cpe:2.3:a:parseplatform:parse-server:*:*:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:-:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha1:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha10:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha11:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha2:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha3:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha4:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha5:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha6:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha7:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha8:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.0.0:alpha9:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.1.0:alpha1:*:*:*:node.js:*:*
cpe:2.3:a:parseplatform:parse-server:9.1.0:alpha2:*:*:*:node.js:*:*
CVE-2022-24760 CRITICAL POC
10.0 Mar 12

Parse Server is an open source http web server backend. Rated critical severity (CVSS 10.0), this vulnerability is remot

CVE-2026-32248 CRITICAL POC
9.8 Mar 12

Unauthenticated query injection in Parse Server before 9.6.0-alpha.12/8.6.38. PoC available.

CVE-2026-30965 CRITICAL POC
9.1 Mar 10

Parse Server has an incorrect authorization vulnerability enabling unauthorized data access across applications.

CVE-2026-32242 HIGH POC
7.4 Mar 12

### Impact Parse Server's built-in OAuth2 auth adapter exports a singleton instance that is reused directly across all

CVE-2026-30966 CRITICAL
10.0 Mar 10

Parse Server has a CVSS 10.0 access control vulnerability enabling complete bypass of all data access restrictions.

CVE-2024-27298 CRITICAL
10.0 Mar 01

parse-server is a Parse Server for Node.js / Express. Rated critical severity (CVSS 10.0), this vulnerability is remotel

CVE-2026-30863 CRITICAL
9.8 Mar 07

Authentication bypass in Parse Server allows unauthenticated access to protected API endpoints. Parse Server is a popula

CVE-2026-31840 CRITICAL
9.8 Mar 11

SQL injection in Parse Server before 9.6.0-alpha.2/8.6.28.

CVE-2026-31871 CRITICAL
9.8 Mar 11

SQL injection in Parse Server before 9.6.0-alpha.5/8.6.31. Third Parse Server SQLi.

CVE-2026-31856 CRITICAL
9.8 Mar 11

SQL injection in Parse Server before 9.6.0-alpha.5/8.6.31.

CVE-2023-36475 CRITICAL
9.8 Jun 28

Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Rated critical s

CVE-2022-41878 CRITICAL
9.8 Nov 10

Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Rated critical s

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy