Open WebUI: Stored XSS via attacker-controlled file extension in /api/v1/audio/transcriptions
Key facts
- Attack vector
- Network
- Privileges required
- Low
- User interaction
- Required
- Attack complexity
- Low
- Impact type
- Code execution, Cross-site scripting
- Confidentiality · integrity · availability
- High · High · None
- Fix status
- Fixed
Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-434 and CWE-79.
Summary
Open WebUI is a self-hosted artificial intelligence platform designed to operate entirely offline. Prior to 0.9.3, the audio transcription upload endpoint takes the file extension from the user-supplied filename and saves the file under CACHE_DIR/audio/transcriptions/.. The /cache/{path} route serves these files via FileResponse, which sets Content-Type from the on-disk extension and emits no Content-Disposition. A verified user with the default-on chat.stt permission can upload a polyglot WAV+HTML file named pwn.html and trick any other user into opening the resulting URL — the response comes back as text/html and any embedded <script> runs in the Open WebUI origin. This vulnerability is fixed in 0.9.3.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- Poc
- Automatable
- No
- Technical impact
- Total
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| open-webui | open-webui | before 0.9.3 | 0.9.3 | Patch available | CNA |
| — | open-webui (PyPI) | before 0.9.3 | 0.9.3 | Patch available | GHSA-m8f9-9whg-f4xr |
- open-webui Vendoropen-webui Affected before 0.9.3 Fixed in 0.9.3 Patch available CNA
- open-webui (PyPI) Vendor— Affected before 0.9.3 Fixed in 0.9.3 Patch available GHSA-m8f9-9whg-f4xr
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:openwebui:open_webui:*:*:*:*:*:*:*:* | before 0.9.3 | Vulnerable | open-webui |
- cpe:2.3:a:openwebui:open_webui:*:*:*:*:*:*:*:* Versions before 0.9.3 Vulnerable ·open-webui
Remediation
- Fix · CNA open-webui (open-webui) Fixed in 0.9.3
- Fix · GHSA-m8f9-9whg-f4xr open-webui (PyPI) Fixed in 0.9.3 Advisory →
Timeline
- 2026-10-02 Threatist record created from CVE-2026-45315
- 2026-10-03 Alias added: GHSA-m8f9-9whg-f4xr
References
More open-webui Open Webui vulnerabilities
- TI-2024-06216 Open WebUI Arbitrary File Upload + Path Traversal CVSS 3.1HIGH 8.8
- TI-2024-07467 Improper Authentication in open-webui/open-webui CVSS 3.1HIGH 8.2
- TI-2026-42359 Open WebUI: Cross-user code-interpreter and tool execution via unvalidated Socket.IO event-caller session_id CVSS 3.1CRITICAL 9.0
- TI-2026-40759 open-webui - Remote Code Execution via CORS Misconfiguration and Session Validation CVSS 4.0CRITICAL 9.0
- TI-2024-07431 Cross-site Scripting (XSS) in open-webui/open-webui CVSS 3.0CRITICAL 9.0
- TI-2026-60021 Open WebUI: Same-origin XSS to account takeover via terminal port-preview iframe hardcoding allow-same-origin CVSS 3.1HIGH 8.7
Sources
- CVE-2026-45315 · CVE Program
- CVE-2026-45315 · NVD
- FIRST EPSS
- GHSA-m8f9-9whg-f4xr · GitHub Advisory Database · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences