Description
Dancer2 versions from 2.1.0 before 2.2.0 for Perl serve files from outside public_dir via relative path segments in the File route handler.
The handler joins the request path onto public_dir without collapsing relative segments, and checks only that the result is a readable regular file. A request for `/../outside.txt` escapes public_dir, and percent-encoding the dots reaches the same file.
The handler is off by default. An application is affected once it names File in route_handlers and sets static_handler to 0, which otherwise refuses a dot segment before the route runs.
Any file the worker process can read is served to an unauthenticated request, including the application's config.yml above public_dir.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| — | Dancer2 | 2.1.0 – < 2.2.0 | 2.2.0 |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | libdancer2-perl | 2.2.2-1 | — |
| Debian 13 | libdancer2-perl | No fix yet | — |
| Debian 12 | libdancer2-perl | No fix yet | — |
Ubuntu
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 26.10 | libdancer2-perl | No fix yet | — |
| Ubuntu 26.04 LTS | libdancer2-perl | No fix yet | — |
| Ubuntu 24.04 LTS | libdancer2-perl | No fix yet | — |
| Ubuntu 22.04 LTS | libdancer2-perl | No fix yet | — |
| Ubuntu 20.04 LTS | libdancer2-perl | No fix yet | — |
Show 2 more (older releases, extended support, other products)Fewer releases
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Ubuntu 18.04 LTS | libdancer2-perl | No fix yet | — |
| Ubuntu 16.04 LTS | libdancer2-perl | No fix yet | — |
openSUSE
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| openSUSE Tumbleweed | perl-Dancer2 | 2.2.2-1.1 | openSUSE-SU-2026:12202-1 |
Advisories 1
- openSUSE-SU-2026:12202-1 perl-Dancer2-2.2.2-1.1 on GA media SUSE / openSUSE Security Updates · Oct 21, 2026