CVE-2026-70492: Stored Cross-Site Scripting (XSS) via Unescaped KaTeX Render-Error Fallback in Open WebUI
Vulnerability ID: CVE-2026-70492
CVSS Score: 8.7
Published: 2026-08-04
CVE-2026-70492 (also tracked as GHSA-pwxh-7358-jq2x) is a stored Cross-Site Scripting (XSS) vulnerability in Open WebUI versions 0.10.0 through 0.10.x. The flaw arises because engine-level JavaScript stack overflow errors escape KaTeX standard error handling. Svelte's fallback rendering path assigns the raw, unescaped mathematical input string directly to the DOM using the unsafe {@html} directive, enabling arbitrary client-side code execution. This allows attackers to steal session tokens and perform unauthorized administrative actions when users view malicious messages. The vulnerability has been fully resolved in version 0.11.0.
TL;DR
A stored XSS vulnerability in Open WebUI (v0.10.0 to <0.11.0) allows authenticated attackers to execute arbitrary JavaScript in user sessions by forcing a call stack limit error in KaTeX, bypassing error handling and triggering an unescaped HTML fallback rendering path.
⚠️ Exploit Status: POC
Technical Details
- CWE ID: CWE-79
- Attack Vector: Network (AV:N)
- CVSS v3.1 Score: 8.7 (High)
- Exploit Status: Proof-of-Concept Available
- CISA KEV Status: Not Listed
- Vulnerability Class: Stored Cross-Site Scripting (XSS)
Affected Systems
- Open WebUI
-
open-webui: >= 0.10.0, < 0.11.0 (Fixed in:
0.11.0)
Code Analysis
Commit: bc600d3
Fix stored XSS vulnerability by escaping HTML entities in KatexRenderer fallback
@@ -38,7 +38,11 @@
try {
renderedHTML = renderToString(content, { displayMode, throwOnError: false });
} catch {
- renderedHTML = content;
+ renderedHTML = content
+ .replaceAll('&', '&')
+ .replaceAll('<', '<')
+ .replaceAll('>', '>');
}
}
Mitigation Strategies
- Upgrade Open WebUI to version 0.11.0 or higher.
- Implement Web Application Firewall (WAF) rules to inspect and block inputs with excessively nested structures in mathematical blocks.
- Manually escape HTML input in Svelte rendering fallback logic if immediate patching is unavailable.
Remediation Steps:
- Check the current Open WebUI version through the administration panel or via the deployed container image tag.
- Obtain the updated release package or container image corresponding to version 0.11.0 or higher.
- Rebuild or redeploy the application service to apply the updated KatexRenderer component configurations.
- Audit chat and channel database records for historical payloads containing nested braces paired with HTML event triggers.
References
- GitHub Advisory GHSA-pwxh-7358-jq2x
- GitHub Pull Request #26718
- GitHub Security Fix Commit
- Open WebUI v0.11.0 Release Changelog
- CVE-2026-70492 on CVE.org
Read the full report for CVE-2026-70492 on our website for more details including interactive diagrams and full exploit analysis.
Top comments (0)