Parse Server has a password reset token single-use bypass via concurrent requests
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- Passive
- Attack complexity
- High
- Attack requirements
- Present
- Impact type
- —
- Confidentiality · integrity · availability
- None · Low · None
- Fix status
- Fixed
Attack profile from CVSS 4.0 · CNA. Fix status from CNA and GitHub.
Summary
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to 9.6.0-alpha.28 and 8.6.48, the password reset mechanism does not enforce single-use guarantees for reset tokens. When a user requests a password reset, the generated token can be consumed by multiple concurrent requests within a short time window. An attacker who has intercepted a password reset token can race the legitimate user's password reset request, causing both requests to succeed. This may result in the legitimate user believing their password was changed successfully while the attacker's password takes effect instead. All Parse Server deployments that use the password reset feature are affected. Starting in versions 9.6.0-alpha.28 and 8.6.48, the password reset token is now atomically validated and consumed as part of the password update operation. The database query that updates the password includes the reset token as a condition, ensuring that only one concurrent request can successfully consume the token. Subsequent requests using the same token will fail because the token has already been cleared. There is no known workaround other than upgrading.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- No
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| parse-community | parse-server | 9.0.0 to before 9.6.0-alpha.28; before 8.6.48 | 9.6.0-alpha.28, 8.6.48 | Patch available | CNA |
| — | parse-server (npm) | 9.0.0 to before 9.6.0-alpha.28 | 9.6.0-alpha.28 | Patch available | GHSA-r3xq-68wh-gwvh |
| — | parse-server (npm) | before 8.6.48 | 8.6.48 | Patch available | GHSA-r3xq-68wh-gwvh |
- parse-server Vendorparse-community Affected 9.0.0 to before 9.6.0-alpha.28; before 8.6.48 Fixed in 9.6.0-alpha.28, 8.6.48 Patch available CNA
- parse-server (npm) Vendor— Affected 9.0.0 to before 9.6.0-alpha.28 Fixed in 9.6.0-alpha.28 Patch available GHSA-r3xq-68wh-gwvh
- parse-server (npm) Vendor— Affected before 8.6.48 Fixed in 8.6.48 Patch available GHSA-r3xq-68wh-gwvh
CPE configurations NVD · 28
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:parseplatform:parse-server:*:*:*:*:*:node.js:*:* | before 8.6.48; 9.0.0 to before 9.6.0 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha1:*:*:*:node.js:*:* | 9.6.0 alpha1 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha10:*:*:*:node.js:*:* | 9.6.0 alpha10 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha11:*:*:*:node.js:*:* | 9.6.0 alpha11 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha12:*:*:*:node.js:*:* | 9.6.0 alpha12 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha13:*:*:*:node.js:*:* | 9.6.0 alpha13 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha14:*:*:*:node.js:*:* | 9.6.0 alpha14 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha15:*:*:*:node.js:*:* | 9.6.0 alpha15 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha16:*:*:*:node.js:*:* | 9.6.0 alpha16 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha17:*:*:*:node.js:*:* | 9.6.0 alpha17 | Vulnerable | parse-community |
- cpe:2.3:a:parseplatform:parse-server:*:*:*:*:*:node.js:*:* Versions before 8.6.48; 9.0.0 to before 9.6.0 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha1:*:*:*:node.js:*:* Versions 9.6.0 alpha1 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha10:*:*:*:node.js:*:* Versions 9.6.0 alpha10 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha11:*:*:*:node.js:*:* Versions 9.6.0 alpha11 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha12:*:*:*:node.js:*:* Versions 9.6.0 alpha12 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha13:*:*:*:node.js:*:* Versions 9.6.0 alpha13 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha14:*:*:*:node.js:*:* Versions 9.6.0 alpha14 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha15:*:*:*:node.js:*:* Versions 9.6.0 alpha15 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha16:*:*:*:node.js:*:* Versions 9.6.0 alpha16 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha17:*:*:*:node.js:*:* Versions 9.6.0 alpha17 Vulnerable ·parse-community
Show 18 more CPE
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha18:*:*:*:node.js:*:* | 9.6.0 alpha18 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha19:*:*:*:node.js:*:* | 9.6.0 alpha19 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha2:*:*:*:node.js:*:* | 9.6.0 alpha2 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha20:*:*:*:node.js:*:* | 9.6.0 alpha20 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha21:*:*:*:node.js:*:* | 9.6.0 alpha21 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha22:*:*:*:node.js:*:* | 9.6.0 alpha22 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha23:*:*:*:node.js:*:* | 9.6.0 alpha23 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha24:*:*:*:node.js:*:* | 9.6.0 alpha24 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha25:*:*:*:node.js:*:* | 9.6.0 alpha25 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha26:*:*:*:node.js:*:* | 9.6.0 alpha26 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha27:*:*:*:node.js:*:* | 9.6.0 alpha27 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha3:*:*:*:node.js:*:* | 9.6.0 alpha3 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha4:*:*:*:node.js:*:* | 9.6.0 alpha4 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha5:*:*:*:node.js:*:* | 9.6.0 alpha5 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha6:*:*:*:node.js:*:* | 9.6.0 alpha6 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha7:*:*:*:node.js:*:* | 9.6.0 alpha7 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha8:*:*:*:node.js:*:* | 9.6.0 alpha8 | Vulnerable | parse-community |
| cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha9:*:*:*:node.js:*:* | 9.6.0 alpha9 | Vulnerable | parse-community |
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha18:*:*:*:node.js:*:* Versions 9.6.0 alpha18 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha19:*:*:*:node.js:*:* Versions 9.6.0 alpha19 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha2:*:*:*:node.js:*:* Versions 9.6.0 alpha2 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha20:*:*:*:node.js:*:* Versions 9.6.0 alpha20 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha21:*:*:*:node.js:*:* Versions 9.6.0 alpha21 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha22:*:*:*:node.js:*:* Versions 9.6.0 alpha22 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha23:*:*:*:node.js:*:* Versions 9.6.0 alpha23 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha24:*:*:*:node.js:*:* Versions 9.6.0 alpha24 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha25:*:*:*:node.js:*:* Versions 9.6.0 alpha25 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha26:*:*:*:node.js:*:* Versions 9.6.0 alpha26 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha27:*:*:*:node.js:*:* Versions 9.6.0 alpha27 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha3:*:*:*:node.js:*:* Versions 9.6.0 alpha3 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha4:*:*:*:node.js:*:* Versions 9.6.0 alpha4 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha5:*:*:*:node.js:*:* Versions 9.6.0 alpha5 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha6:*:*:*:node.js:*:* Versions 9.6.0 alpha6 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha7:*:*:*:node.js:*:* Versions 9.6.0 alpha7 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha8:*:*:*:node.js:*:* Versions 9.6.0 alpha8 Vulnerable ·parse-community
- cpe:2.3:a:parseplatform:parse-server:9.6.0:alpha9:*:*:*:node.js:*:* Versions 9.6.0 alpha9 Vulnerable ·parse-community
Remediation
- Fix · CNA parse-server (parse-community) Fixed in 9.6.0-alpha.28, 8.6.48
- Fix · GHSA-r3xq-68wh-gwvh parse-server (npm) Fixed in 9.6.0-alpha.28 Advisory →
- Fix · GHSA-r3xq-68wh-gwvh parse-server (npm) Fixed in 8.6.48 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-32943
- 2026-10-03 Alias added: GHSA-r3xq-68wh-gwvh
References
Advisory 2
More parse-community Parse-server vulnerabilities
- TI-2022-08574 Command Injection in Parse server CVSS 3.1CRITICAL 10.0
- TI-2024-18136 Parse Server literalizeRegexPart SQL Injection CVSS 3.1CRITICAL 10.0
- TI-2022-18768 Parse Server vulnerable to Remote Code Execution via prototype pollution in MongoDB BSON parser CVSS 3.1CRITICAL 9.8
- TI-2024-31550 Parse Server's custom object ID allows to acquire role privileges CVSS 3.1HIGH 8.1
- TI-2023-18316 Parse Server vulnerable to remote code execution via MongoDB BSON parser through prototype pollution CVSS 3.1CRITICAL 9.8
- TI-2026-23790 Parse Server session token exfiltration via `redirectClassNameForKey` query parameter CVSS 4.0CRITICAL 9.9
Sources
- CVE-2026-32943 · CVE Program
- CVE-2026-32943 · NVD
- FIRST EPSS
- GHSA-r3xq-68wh-gwvh · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences