Path Traversal in Labstack Echo
CVE-2026-25766
Echo is a Go web framework. In versions 5.0.0 through 5.0.2 on Windows, Echo’s `middleware.Static` using the default filesystem allows path traversal via backslashes, enabling unauthenticated remote file read outside the static root. In `middleware/static.go`, the requested path is unescaped and normalized with `path.Clean` (URL semantics). `path.Clean` does not treat `\` as a path separator, so `..\` sequences remain in the cleaned path. The resulting path is then passed to `currentFS.Open(...)`. When the filesystem is left at the default (nil), Echo uses `defaultFS` which calls `os.Open` (`echo.go:792`). On Windows, `os.Open` treats `\` as a path separator and resolves `..\`, allowing traversal outside the static root. Version 5.0.3 fixes the issue.
Vulnerability class: Path Traversal (Directory Traversal)
Published · last modified .
CVSS v3 metric
CVSS v3 base score 5.3 (Medium). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N.
EPSS exploit prediction
EPSS: 0.004 (36.6th percentile), scored .
Very low probability of exploitation in the next 30 days; routine patching cadence is appropriate. 37th percentile — 36.6% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.
EPSS over last 30 days · oldest: 0.003 · newest: 0.004 · change: +0.001
Affected products
- Labstack Echo — versions >= 5.0.0, < 5.0.3
- Microsoft Windows
Weakness classification (CWE)
References
- github.com/labstack/echo/security/advisories/GHSA-pgvm-wxw2-hrv9 (Exploit, Vendor Advisory)
- github.com/labstack/echo/pull/2891 (Patch, Issue Tracking)
- github.com/labstack/echo/commit/b1d443086ea27cf51345ec72a71e9b7e9d9ce5f1 (Patch)
Frequently asked questions
- What is CVE-2026-25766?
- CVE-2026-25766 is a medium-severity vulnerability in Labstack Echo, classified under Path Traversal. CVSS score: 5.3/10. Published 2026-02-19.
- How severe is CVE-2026-25766?
- Medium severity. CVSS v3 base score is 5.3 out of 10.