Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in gleam-wisp wisp allows arbitrary file read via percent-encoded path traversal.
The wisp.serve_static function is vulnerable to path traversal because sanitization runs before percent-decoding. The encoded sequence %2e%2e passes through string.replace unchanged, then uri.percent_decode converts it to .., which the OS resolves as directory traversal when the file is read.
An unauthenticated attacker can read any file readable by the application process in a single HTTP request, including application source code, configuration files, secrets, and system files.
This issue affects wisp: from 2.1.1 before 2.2.1.
Metrics
Affected Vendors & Products
References
History
Tue, 10 Mar 2026 22:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in gleam-wisp wisp allows arbitrary file read via percent-encoded path traversal. The wisp.serve_static function is vulnerable to path traversal because sanitization runs before percent-decoding. The encoded sequence %2e%2e passes through string.replace unchanged, then uri.percent_decode converts it to .., which the OS resolves as directory traversal when the file is read. An unauthenticated attacker can read any file readable by the application process in a single HTTP request, including application source code, configuration files, secrets, and system files. This issue affects wisp: from 2.1.1 before 2.2.1. | |
| Title | Path Traversal in wisp.serve_static allows arbitrary file read | |
| First Time appeared |
Gleam-wisp
Gleam-wisp wisp |
|
| Weaknesses | CWE-22 | |
| CPEs | cpe:2.3:a:gleam-wisp:wisp:*:*:*:*:*:*:*:* | |
| Vendors & Products |
Gleam-wisp
Gleam-wisp wisp |
|
| References |
| |
| Metrics |
cvssV4_0
|
Status: PUBLISHED
Assigner: EEF
Published: 2026-03-10T21:34:47.859Z
Updated: 2026-03-10T21:34:47.859Z
Reserved: 2026-03-03T14:40:00.590Z
Link: CVE-2026-28807
No data.
Status : Received
Published: 2026-03-10T22:16:18.640
Modified: 2026-03-10T22:16:18.640
Link: CVE-2026-28807
No data.