CVE-2026-93709: Dancer2 versions before 2.2.0 for Perl serve a layout as a page when an equivalent spelling of its path misses the guard in the AutoPage handler

Published Sep 22, 2026
·
Updated

Dancer2 versions before 2.2.0 for Perl serve a layout as a page when an equivalent spelling of its path misses the guard in the AutoPage handler.

The handler compares the request path against the layout directory name as text, while the lookup that follows canonicalises it. A doubled slash, a dot segment, a percent-encoded slash, or a different capitalisation on a case-insensitive filesystem therefore misses the guard.

The handler is off by default, enabled with autopage. The layout wrapping every page is already public, so this discloses one of the application's other layouts.

Affected Software

1 affected component
Dancer2 Perl Dancer2<2.2.0

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade Dancer2 (Perl) to a version that resolves this vulnerability.

    Fixed in 2.2.0

Event History

Sep 22, 2026
CVE Published
via MITRE·12:50 AM
Data Sourced
via MITRE·12:50 AM
RemedyDescriptionWeakness
Data Sourced
via NVD·01:16 AM
DescriptionWeakness

Frequently Asked Questions

1

Is a default Dancer2 deployment affected?

No. The vulnerable AutoPage handler is off by default and is enabled with the auto_page setting. Only deployments using Dancer2 before 2.2.0 with that handler enabled are exposed.

2

What does an attacker need to do to access a layout?

An attacker needs to request an alternative spelling of a layout path that bypasses the textual directory check but resolves to the layout during lookup. Examples include doubled slashes, dot segments, a percent-encoded slash, or different capitalization on a case-insensitive filesystem.

3

What information can be disclosed?

The issue can expose one of the application's other layouts as a page. The layout wrapping each page is already public, so the disclosed content is limited to another layout rather than the currently used wrapping layout.

4

What can be done if an upgrade is not immediately possible?

Disable the AutoPage handler by ensuring auto_page is not enabled. This removes the affected request handling path.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203