CVE-2026-30848: Parse Server: `PagesRouter` path traversal allows reading files outside configured pages directory
Impact
The PagesRouter static file serving route is vulnerable to a path traversal attack that allows unauthenticated reading of files outside the configured pagesPath directory. The boundary check uses a string prefix comparison without enforcing a directory separator boundary. An attacker can use path traversal sequences to access files in sibling directories whose names share the same prefix as the pages directory (e.g. pages-secret starts with pages).
This affects any Parse Server deployment with the pages feature enabled (pages.enableRouter: true). Exploitation requires a sibling directory of pagesPath whose name begins with the same string as the pages directory name.
Patches
The fix enforces a path separator boundary in the check, ensuring resolved paths must be strictly inside the pagesPath directory.
Workarounds
Ensure the pagesPath directory has no sibling directories whose names begin with the same prefix. For example, if pagesPath is /srv/pages, ensure no directory like /srv/pages-backup or /srv/pagesold exists alongside it.
References
- GitHub security advisory: https://github.com/parse-community/parse-server/security/advisories/GHSA-hm3f-q6rw-m6wh - Fix for Parse Server 9: https://github.com/parse-community/parse-server/releases/tag/9.5.0-alpha.8 - Fix for Parse Server 8: https://github.com/parse-community/parse-server/releases/tag/8.6.8
Other sources
Parse Server is an open source backend that can be deployed to any infrastructure that can run Node.js. Prior to versions 8.6.8 and 9.5.0-alpha.8, the PagesRouter static file serving route is vulnerable to a path traversal attack that allows unauthenticated reading of files outside the configured pagesPath directory. The boundary check uses a string prefix comparison without enforcing a directory separator boundary. An attacker can use path traversal sequences to access files in sibling directories whose names share the same prefix as the pages directory (e.g. pages-secret starts with pages). This issue has been patched in versions 8.6.8 and 9.5.0-alpha.8.
— MITRE
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-30848?
CVE-2026-30848 is categorized as a medium severity vulnerability due to its potential impact on file security.
How does CVE-2026-30848 affect Parse Server?
CVE-2026-30848 allows an attacker to perform path traversal attacks and read files outside of the configured pages directory in Parse Server.
Which versions of Parse Server are affected by CVE-2026-30848?
CVE-2026-30848 affects Parse Server versions prior to 8.6.8 and 9.5.0-alpha.8.
How do I fix CVE-2026-30848?
To fix CVE-2026-30848, upgrade your Parse Server to version 8.6.8 or higher, or to 9.5.0-alpha.8 or higher.
Are there any mitigations for CVE-2026-30848 besides upgrading?
There are no officially recommended mitigations for CVE-2026-30848 aside from upgrading to a patched version.