GHSA-4q3h-vp4r-prv2
Parse Server: Account takeover via JWT algorithm confusion in Google auth adapter
Packages
| Ecosystem | Package | Affected | Fixed in |
|---|---|---|---|
| npm | parse-server | >= 9.0.0, < 9.3.1-alpha.4 | 9.3.1-alpha.4 |
| npm | parse-server | < 8.6.3 | 8.6.3 |
Details
As written in the advisory (Markdown source, shown as plain text).
### Impact
An unauthenticated attacker can forge a Google authentication token with `alg: "none"` to log in as any user linked to a Google account, without knowing their credentials. All deployments with Google authentication enabled are affected.
### Patches
The fix hardcodes the expected `RS256` algorithm instead of trusting the JWT header, and replaces the Google adapter's custom key fetcher with `jwks-rsa` which rejects unknown key IDs.
### Workarounds
Disable Google authentication until you can upgrade.
### References
- GitHub advisory: https://github.com/parse-community/parse-server/security/advisories/GHSA-4q3h-vp4r-prv2
- Fixed in Parse Server 9.3.1-alpha.4: https://github.com/parse-community/parse-server/releases/tag/9.3.1-alpha.4
- Fixed in Parse Server 8.6.3: https://github.com/parse-community/parse-server/releases/tag/8.6.3
References
External links from the advisory. They lead to third-party sites.
- https://github.com/parse-community/parse-server/security/advisories/GHSA-4q3h-vp4r-prv2
- https://nvd.nist.gov/vuln/detail/CVE-2026-27804
- https://github.com/parse-community/parse-server/commit/9b94083accb7f3e72c6b8126c195c7a03dd2dfd7
- https://github.com/parse-community/parse-server/commit/9d5942d50e55c822924c27b05aa98f1393e7a330
- https://github.com/parse-community/parse-server
- https://github.com/parse-community/parse-server/releases/tag/8.6.3
- https://github.com/parse-community/parse-server/releases/tag/9.3.1-alpha.4