RRD::CGI::Image before 0.01 blocks CGI via 'tz' parameter (CVE-2026-123776)
Passing a path in the 'tz' CGI query parameter blocks the Perl CGI process in versions through 0.01.
Unvalidated TZ path in RRD::CGI::Image before 0.02 for Perl
RRD::CGI::Image Perl module versions through 0.01 passes CGI query parameters containing "tz" to tzset() without validation. This sets $ENV{TZ} to the value, causing glibc to treat a leading / or : as a file path and open it, blocking the CGI process on a FIFO or device. Attackers trigger this via crafted HTTP request parameters to web servers using the module. Affected are all users of versions through 0.01.
What to do: Upgrade to the next version of RRD::CGI::Image. No workaround named.
| Product | Affected |
|---|---|
| Perl RRD::CGI::Image | through 0.01 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
RRD::CGI::Image versions through 0.01 for Perl pass CGI query parameters containting "tz" to tzset(), , so a FIFO or device path blocks the CGI process. The normalize_params method sends any query key matching /tz/i to tz(), which sets $ENV{TZ} to that value, with no validation. It then calls tzset(). glibc treats a TZ value starting with / or : as a file path and opens it, so a value naming a FIFO or a blocking device stalls the process inside tzset().
Passing a path in the 'tz' CGI query parameter blocks the Perl CGI process in versions through 0.01.
Today 1.5K readers · 2.4K views · 757 reads · all time 189K views