Skip to main content
← All vulnerabilities
CVE-2026-28807

Path Traversal in wisp.serve_static allows arbitrary file read

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 2.2.1
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: yes
  • Technical impact: partial

Summary

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.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: yes · Technical impact: partial

  3. Record last updated

Affected versions

  • wisp

    From 2.1.1 · fixed in 2.2.1

  • gleam-wisp/wisp

    Version range not reported

References 4

GitHub · gleam-wisp/wisp

cna.erlef.org

osv.dev