CVE-2026-63445: Perses: Unvalidated project parameter enables filesystem path traversal
Impact When Perses is using the file system database, on the list endpoints, the project value is bound from the request into the resource Query struct and is never validated against directory-traversal characters (validation/Flatten only runs for Create/Update bodies, not list queries).
The path is then used to retrieve files in the database directly.
Attacker can read arbitrary YAML/JSON files from the server host and can bypass the security constraints to get access to other resources contained in the file database.
For example https://localhost:8080/api/v1/dashboards?project=../projects returns the list of the project while it must not return anything.
Patches Has the problem been patched? What versions should users upgrade to?
Workarounds Avoid using the file system database in production. Use SQL database instead.
Other sources
Perses is an open-source dashboard and visualization project for observability data. Prior to 0.54.0-rc.0, list endpoints used with the file-system database bind the request-controlled project query parameter into the resource Query structure without validating it against directory traversal characters, and the resulting project value is used to select database paths. An authenticated attacker can supply directory traversal segments to leave the intended project directory, read arbitrary YAML or JSON files accessible to the Perses process, and bypass project isolation to enumerate other file-backed resources. This issue is fixed in version 0.54.0-rc.0.
— MITRE
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
go/github.com/perses/persesto a version that resolves this vulnerability.Fixed in 0.54.0-rc.0 - Upgrade
Upgrade
Persesto a version that resolves this vulnerability.Fixed in 0.54.0-rc.0 - Configuration
Avoid using the file system database in production; use the SQL database instead.
Perses file system database Use SQL database instead of file system database = SQL database
Event History
Frequently Asked Questions
Which deployments are affected?
The issue affects Perses versions before 0.54.0-rc.0 when list endpoints are used with the file-system database. The vulnerable behavior is tied to project values being used to select file-system database paths.
What access does an attacker need?
An attacker must be authenticated and able to send requests to affected list endpoints with a controlled project query parameter. They can use directory traversal segments to access YAML or JSON files readable by the Perses process and enumerate resources outside the intended project.
What is the remediation?
Upgrade Perses to 0.54.0-rc.0 or later. The fix validates the request-controlled project parameter before it is used for database path selection.