Path Traversal in Gleam-Wisp Wisp

CVE-2026-28807

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.

Vulnerability class: Path Traversal (Directory Traversal)

Published · last modified .

CVSS v3 metric

CVSS v3 base score 7.5 (High). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N.

EPSS exploit prediction

EPSS: 0.010 (61.9th percentile), scored .

Low probability of exploitation in the next 30 days, but still tracked. 62nd percentile — 61.9% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2026-28807: held from 0.011 to 0.010.

EPSS over last 30 days · oldest: 0.011 · newest: 0.010 · change: -0.000

Affected products

  • Gleam-Wisp Wisp — versions 2.1.1, 129dcb1fe10ab1e676145d91477535e1c90ab550

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-28807?
CVE-2026-28807 is a high-severity vulnerability in Gleam-Wisp Wisp, classified under Path Traversal. CVSS score: 7.5/10. Published 2026-03-10.
How severe is CVE-2026-28807?
High severity. CVSS v3 base score is 7.5 out of 10.