NiceGUI's unvalidated chunk size parameter in media routes can cause memory exhaustion
NiceGUI is a Python-based UI framework. Prior to version 3.9.0, NiceGUI's app.add_media_file() and app.add_media_files() media routes accept a user-controlled query parameter that influences how files are read during streaming. The parameter is passed to the range-response implementation without validation, allowing an attacker to bypass chunked streaming and force the server to load entire files into memory at once. With large media files and concurrent requests, this can lead to excessive memory consumption, degraded performance, or denial of service. This issue has been patched in version 3.9.0.
References
-
https://github.com/zauberzeug/nicegui/security/advisories/GHSA-w5g8-5849-vj76 x_refsource_CONFIRM
-
https://github.com/zauberzeug/nicegui/releases/tag/v3.9.0 x_refsource_MISC
Affected products
- ==< 3.9.0
Matching in nixpkgs
pkgs.python312Packages.nicegui
Module to create web-based user interfaces
pkgs.python313Packages.nicegui
Module to create web-based user interfaces
pkgs.python314Packages.nicegui
Module to create web-based user interfaces
pkgs.python312Packages.nicegui-highcharts
NiceGUI with support for Highcharts
pkgs.python313Packages.nicegui-highcharts
NiceGUI with support for Highcharts
pkgs.python314Packages.nicegui-highcharts
NiceGUI with support for Highcharts
Package maintainers
-
@fabaff Fabian Affolter <mail@fabian-affolter.ch>