Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate and open terminal WebSocket
-
ExploitAccount deactivated by administrator
-
ExecutionSend further commands over existing socket (no re-authorization)
-
ImpactExecute commands and read/write files on terminal server
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V7 - Session Management Session expiration enforcement
|
| Exploitation Conditions | Exploitation requires that the attacker was a legitimately authenticated Open WebUI user who established an active terminal WebSocket connection to the terminal proxy route (terminals.py) BEFORE their account was deactivated; the deactivated session must remain open since the flaw is that authorization is checked only on the first WebSocket message and never re-validated. Limiting factors: the attacker cannot open a NEW session after deactivation, so the window is bounded by keeping the existing socket alive; the terminal feature must be deployed/enabled; and PR:L means prior valid credentials/role granting terminal access were required. Deployments that do not expose or enable the terminal feature are not exploitable. |
| Impact | This is a genuine but moderate-priority issue, best characterized as a privilege-persistence/session-revocation flaw rather than a high-impact RCE. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N) scores 5.3 (Medium), reflecting network reach but requiring low-level privileges (PR:L) - the attacker must have been a legitimate, authenticated user who already held an active terminal WebSocket before being deactivated. Impacts are rated Low across confidentiality, integrity, and availability (VC:L/VI:L/VA:L), which understates the practical effect somewhat since the flaw allows arbitrary command execution and file read/write on the terminal server, but is defensible because the actor only retains access they already legitimately had rather than gaining new access. There is no CISA KEV listing and no public exploit was referenced by either the GHSA advisory or VulnCheck, so exploitation status is: no public exploit identified at time of analysis. No EPSS score was supplied in the input, so exploitation-probability cannot be compared against KEV/POC signals - that data is MISSING. The realistic threat is a malicious insider or compromised account whose deactivation is assumed to have cut off access but has not; this is a targeted/insider scenario, not mass internet exploitation. Note the CWE (CWE-613, Insufficient Session Expiration) aligns well with the described root cause (access checked only on the first WebSocket message), reinforcing confidence in the characterization. |
| Exploit ScenarioDerived | An authenticated Open WebUI user opens a terminal session (WebSocket) to the terminal server, then is deactivated by an administrator who believes this revokes all access. Because terminals.py validates authorization only on the first message, the attacker continues sending commands over the still-open socket, executing arbitrary commands and reading or writing files on the terminal server. No public exploit code was identified; exploitation requires the attacker to have established the terminal WebSocket while still active. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 12, 2026
Improper session revocation in Open WebUI 0.8.8 through 0.11.4 allows an authenticated user whose account has been deactivated to continue executing terminal commands and reading or writing files on the terminal server through an already-established terminal WebSocket. The terminal proxy route in terminals.py validates access only on the first WebSocket message and never re-checks it, so the deactivated session persists until the socket is closed; the attacker cannot open a new session after deactivation, and PR:L in the assessed vector (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:L/A:L) confirms prior valid access to the terminal feature is required. No public exploit code has been identified at time of analysis and the issue is not in CISA KEV, making this a moderate privilege-persistence flaw rather than a high-impact remote code execution issue.
RemediationAI
Upgrade Open WebUI to 0.11.4 or later, which is the first version outside the affected '0.8.8 before 0.11.4' range; the vendor advisory GHSA-6g45-8g27-fh8q and the VulnCheck advisory both document the fix, so treat this as a vendor-released patch path for 0.11.4. If immediate upgrade is not possible, the highest-value compensating control is to terminate any live terminal WebSocket connection whenever an account is deactivated or a session is revoked - closing the socket is what actually stops the flaw, since the server never re-validates authorization after the first message; the trade-off is operational (deactivation must be paired with forced socket teardown, and any automation that only flips a database flag will remain ineffective). If the terminal feature is not required, disable or do not enable the terminal proxy entirely and block its WebSocket endpoint at the reverse proxy, which removes the attack surface at the cost of losing that functionality; additionally restrict terminal access to trusted administrative roles, since exploitation requires a previously authenticated user who already held terminal privileges. Until the upgrade is applied, monitor and log terminal command activity from accounts marked inactive, as those events are the clearest indicator of abuse of a stale socket.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is CWE-613 (Insufficient Session Expiration), mapped here to authorization re-validation on long-lived connections. Open WebUI exposes a terminal proxy implemented in terminals.py, in which browser clients connect over WebSocket and the server forwards commands to a backing terminal server. Authorization is enforced at the moment of the first message on that socket and then never re-evaluated, so account-state changes (deactivation, revocation, role removal) are not propagated to the live stream. Because WebSocket connections are stateful and long-lived, revoking a session at the identity layer (database/flag level) does not tear down the transport-layer channel, leaving the deactivated principal fully able to issue commands and read/write files on the terminal host for as long as the socket remains open. Affected assets are identified by CPE cpe:2.3:a:open-webui:open-webui:*:*:*:*:*:*:*:*, covering Open WebUI releases from 0.8.8 up to but excluding 0.11.4. The CVSS 4.0 vector supplied with the report (AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L) and the independent CVSS 3.1 assessment agree on limited confidentiality, integrity and availability impact, no scope change, and a network-reachable but authenticated prerequisite.
Know when Open Webui gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:L/VA:L/SC:N/SI:N/SA:N
Network-facing WebSocket (AV:N/AC:L), requires a previously-authenticated user so PR:L not PR:N; limited command/file access on a single server yields Low C/I/A and unchanged scope.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Open WebUI from 0.8.8 before 0.11.4 contains an improper authorization vulnerability that allows deactivated users to keep executing terminal commands through an already open terminal WebSocket. Because the terminal proxy route in terminals.py checks access only on the first message, deactivated users can keep running commands and reading or writing files on the terminal server.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.
More in Open Webui
View allAn 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
Attacker controlled files can be uploaded to arbitrary locations on the web server's filesystem by abusing a path traver
Stored cross-site scripting in Open WebUI's terminal port preview feature allows an authenticated attacker sharing a ter
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
In version v0.3.10 of open-webui/open-webui, the `api/v1/utils/pdf` endpoint lacks authentication mechanisms, allowing u
OAuth and SCIM identity confusion in Open WebUI 0.6.41-0.10.x (SQLite-backed deployments only) allows unauthenticated re
DNS rebinding SSRF in Open WebUI versions 0.9.6 through 0.11.0 allows authenticated users who control authoritative DNS
Denial of service in Open WebUI versions 0.9.0-0.11.0 allows unauthenticated remote attackers to stall the application s
In version 0.3.8 of open-webui, an endpoint for converting markdown to HTML is exposed without authentication. Rated hig
Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. [CVSS 7.3 HIGH]
EUVD-2026-97591
GHSA-wqjg-w22m-7835
NVD
CVE.org
EPSS
Exploit-DB