Medium, CVSS 6.2MavenPublished
Allure Report: Path Traversal in HTTP Server Allows Arbitrary File Read
CVE-2026-55846 · GHSA-82cg-3hv7-74gc
- Affected
- Maven io.qameta.allure:allure-commandline <= 2.38.1
- Fixed in
- 2.39.0· Vendor fix available
- Issue
- The built-in HTTP server started by allure serve and allure open is vulnerable to path traversal. The server resolves request URI paths directly against the report directory without normalizing or validating that the resolved path stays within the report directory. An attacker who can reach the server can read any file accessible to the Allure process by sending a request containing ../ sequences. Details When allure serve or allure open is executed, Commands.setUpServer() creates an HTTP server with a handler that serves files from the report directory: allure-commandline/src/main/java/io/qameta/allure/Commands.java:325-339 On line 330, the handler constructs a file path by concatenating "." with the raw request URI path and resolving it against reportDirectory. For a request to /../../../etc/passwd: 1. exchange.getRequestURI().getPath() returns "/../../../etc/passwd" 2. String concatenation produces "./../../../etc/passwd" 3. reportDirectory.resolve("./../../../etc/passwd")…
Recommended action: Upgrade to 2.39.0 or later, then redeploy and verify.A vendor fix does not resolve your finding until you verify it in your own systems.