CVE-2026-45553 NiceGUI: Local file disclosure via Docutils file insertion in ui.restructured_text()
Attackers can read local server files by injecting Docutils directives into reStructuredText content passed to the NiceGUI framework.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-45553?
CVE-2026-45553 is a high-severity vulnerability in zauberzeug nicegui, published on 2 Jun 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
NiceGUI is a Python-based UI framework. Prior to version 3.12.0, ui.restructured_text() renders reStructuredText server-side with Docutils without disabling file insertion directives. When a NiceGUI application passes attacker-controlled content to ui.restructured_text(), an attacker can use standard Docutils directives (include, csv-table with :file:, raw with :file:) to read local files readable by the NiceGUI server process. Applications that only pass trusted static strings to ui.restructured_text() are not affected. This issue has been patched in version 3.12.0.
Weakness: CWE-200
Which versions are affected by CVE-2026-45553?
3 open source packages ship an affected version, including nicegui.
| Package | Affected | Fixed in |
|---|---|---|
nicegui PyPI | All versions | 3.12.0 |
nicegui PyPI | All versions | 3.12.0 |
nicegui PyPI | All versions | 3.12.0 |
How do I fix CVE-2026-45553?
Upgrade nicegui to 3.12.0 or later.
Is CVE-2026-45553 being exploited?
There is no known exploitation of CVE-2026-45553 in the wild and no public exploit code.
Sources
Also known as GHSA-jfrm-rx66-g536, PYSEC-2026-2679.