CVE-2026-25516
Description
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.
How to fix
- zauberzeug nicegui3.7.0 or later
- nicegui3.7.0 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| zauberzeug nicegui | v < 3.7.0 | 3.7.0 |
| niceguiPyPI | v < 3.7.0 | 3.7.0 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.