CVE-2026-25516
Medium · 6.1CVSS
6.1
EPSS
0.3%
Published
Feb 6, 2026
CISA due date
—
The record
NiceGUI is a Python-based UI framework. The ui.markdown() component uses the markdown2 library to convert markdown content to HTML, which is then rendered via innerHTML. By default, markdown2 allows raw HTML to pass through unchanged. This means that if an application renders user-controlled content through ui.markdown(), an attacker can inject malicious HTML containing JavaScript event handlers. Unlike other NiceGUI components that render HTML (ui.html(), ui.chat_message(), ui.interactive_image()), the ui.markdown() component does not provide or require a sanitize parameter, leaving applications vulnerable to XSS attacks. This vulnerability is fixed in 3.7.0.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| PyPI | nicegui | 0 | 3.7.0 |
Related vulnerabilities
- GHSA-v82v-c5x8-w282 NiceGUI's XSS vulnerability in ui.markdown() allows arbitrary JavaScript execution… Same vulnerability
- GHSA-78qv-3mpx-9cqq NiceGUI vulnerable to XSS via Code Injection during client-side element function execution Also affects nicegui
- CVE-2026-27156 NiceGUI is a Python-based UI framework. Also affects nicegui
- CVE-2026-25732 NiceGUI is a Python-based UI framework. Also affects nicegui
- GHSA-9ffm-fxg3-xrhh NiceGUI's Path Traversal via Unsanitized FileUpload.name Enables Arbitrary File Write Also affects nicegui
- GHSA-mp55-g7pj-rvm2 NiceGUI has Redis connection leak via tab storage causes service degradation Also affects nicegui
- GHSA-mhpg-c27v-6mxr NiceGUI apps which use `ui.sub_pages` vulnerable to zero-click XSS Also affects nicegui
- GHSA-m7j5-rq9j-6jj9 NiceGUI apps are vulnerable to XSS which uses `ui.sub_pages` and render arbitrary… Also affects nicegui