Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:N/A:N
Network-reachable proxy needs a valid account (PR:L) and no interaction; the encoding bypass is low-complexity (AC:L); traversal crosses into the upstream terminal server (S:C), disclosing files (C:H) with no integrity or availability impact.
Primary rating from Vendor (github).
CVSS VectorVendor: github
Lifecycle Timeline
2DescriptionCVE.org
Open WebUI is an extensible, feature-rich, and user-friendly self-hosted AI platform. From 0.9.6 before 0.10.0, _sanitize_proxy_path in backend/open_webui/routers/terminals.py decoded proxy paths only eight times, allowing a nine-times percent-encoded ../ traversal value to pass normalization checks and be decoded by the upstream terminal server. This issue is fixed in version 0.10.0.
AnalysisAI
Path traversal in Open WebUI's terminal proxy (versions 0.9.6 through 0.9.x, fixed in 0.10.0) lets an authenticated attacker reach files and resources outside the intended proxy scope. The _sanitize_proxy_path routine in backend/open_webui/routers/terminals.py decoded incoming proxy paths exactly eight times, so a nine-times percent-encoded ../ sequence survived normalization and was decoded a final time by the upstream terminal server, defeating the traversal check. No public exploit or CISA KEV listing exists at time of analysis, but the scope-changing CVSS 3.1 score of 7.7 (S:C/C:H) signals meaningful confidentiality impact on the backend terminal component.
Technical ContextAI
Open WebUI is a self-hosted, extensible web front-end for interacting with local and remote large language models. The affected code path is backend/open_webui/routers/terminals.py, which proxies requests to an upstream terminal server; _sanitize_proxy_path is meant to canonicalize and reject directory-traversal input before forwarding. The root cause is CWE-22 (Improper Limitation of a Pathname to a Restricted Directory): the sanitizer performs a fixed, finite number of percent-decode passes (eight), while an attacker can layer encoding deeper (nine or more). Because the upstream terminal server performs its own additional decode, a ../ payload encoded nine times passes Open WebUI's checks in still-encoded form and is only fully resolved downstream, escaping the intended directory boundary. The correct fix is to decode fully to a fixed point (or reject any remaining encoded sequences) before validation, which v0.10.0 implements.
RemediationAI
Vendor-released patch: 0.10.0 - upgrade Open WebUI to v0.10.0 or later, which replaces the flawed eight-pass decode with correct normalization (fix commit https://github.com/open-webui/open-webui/commit/05098d25a58d03738e01c4e85e8852c3b4ad849c, PR https://github.com/open-webui/open-webui/pull/26050, advisory https://github.com/open-webui/open-webui/security/advisories/GHSA-frvj-c5qp-xj4w). If immediate upgrade is not possible, reduce exposure by disabling or not exposing the terminal proxy feature so the vulnerable /terminals route cannot be reached, and restrict network access to both the terminal server and the Open WebUI backend to trusted hosts only; the trade-off is that disabling the terminal feature removes in-app terminal functionality for users. Additionally, tighten account provisioning and remove untrusted accounts, since exploitation requires an authenticated session (PR:L).
More in Open Webui
View allA vulnerability in open-webui/open-webui version 0.3.8 allows an attacker with a user-level account to perform a session
An XSS vulnerability exists in open-webui/open-webui versions <= 0.3.8, specifically in the function that constructs the
A Stored Cross-Site Scripting (XSS) vulnerability exists in the chat file upload functionality of open-webui/open-webui
A vulnerability in open-webui/open-webui versions <= 0.3.8 allows remote code execution by non-admin users via Cross-Sit
Attacker controlled files can be uploaded to arbitrary locations on the web server's filesystem by abusing a path traver
Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.6.37, a St
Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.6.37, a Se
A stored cross-site scripting (XSS) vulnerability exists in open-webui/open-webui version 0.3.8. Rated high severity (CV
In version v0.3.10 of open-webui/open-webui, the `api/v1/utils/pdf` endpoint lacks authentication mechanisms, allowing u
In open-webui version 0.3.8, the endpoint `/models/upload` is vulnerable to arbitrary file write due to improper handlin
The `/openai/models` endpoint in open-webui/open-webui version 0.3.8 is vulnerable to Server-Side Request Forgery (SSRF)
In version 0.3.32 of open-webui/open-webui, the absence of authentication mechanisms allows any unauthenticated attacker
Same weakness CWE-22 – Path Traversal
View allSame technique Path Traversal
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-42650
GHSA-frvj-c5qp-xj4w