Every CVE Search/ Get API key

CVE-2026-93711

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array

6.5 MediumFix available

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array.

The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line.

The application has to derive the header name from request data, not just the value.

An attacker who controls that data adds their own headers and splits the response.

Attack profile

How easy it is to exploit

Attack vector
Network
Complexity
Low
Privileges needed
None
User interaction
None

What an attacker can affect

Confidentiality
Low
Integrity
Low
Availability
None

Exploit likelihood

0.37%Up 0.2 points since Sep 22, 2026
90%50%10%1%

What each source reports

CVE List Score used 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array.

The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line.

The application has to derive the header name from request data, not just the value.

An attacker who controls that data adds their own headers and splits the response.

Record
CVE-2026-93711
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-113
Updated
2026-11-02
EUVDEUVD-2026-84257 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array.

The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line.

The application has to derive the header name from request data, not just the value.

An attacker who controls that data adds their own headers and splits the response.

Record
EUVD-2026-84257
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Updated
2026-11-02
GitHub AdvisoriesGHSA-vp8p-vxw7-c877 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in...

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array.

The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line.

The application has to derive the header name from request data, not just the value.

An attacker who controls that data adds their own headers and splits the response.

Record
GHSA-vp8p-vxw7-c877
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-113
Updated
2026-11-02
NVD 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array.

The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line.

The application has to derive the header name from request data, not just the value.

An attacker who controls that data adds their own headers and splits the response.

Record
CVE-2026-93711
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-113
Updated
2026-11-02
OSV 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array.

The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line.

The application has to derive the header name from request data, not just the value.

An attacker who controls that data adds their own headers and splits the response.

Record
CVE-2026-93711
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Weakness
CWE-113
Updated
2026-11-02
OSVDEBIAN-CVE-2026-93711 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array. The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line. The application has to derive the header name from request data, not just the value. An attacker who controls that data adds their own headers and splits the response.

Record
DEBIAN-CVE-2026-93711
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Updated
2026-11-02
OSVUBUNTU-CVE-2026-93711 6.5

Dancer2 versions before 2.2.0 for Perl do not strip CR and LF from response header names in headers_to_array. The routine removes CR and LF from each header value but not from the name. A name carrying them therefore reaches the PSGI server intact. A server that does not validate keys writes it to the wire, so the bytes after the CRLF arrive as their own header line. The application has to derive the header name from request data, not just the value. An attacker who controls that data adds their own headers and splits the response.

Record
UBUNTU-CVE-2026-93711
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
Updated
2026-11-02
OSVopenSUSE-SU-2026:12202-1 No score

perl-Dancer2-2.2.2-1.1 on GA media

These are all security issues fixed in the perl-Dancer2-2.2.2-1.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2026:12202-1
Updated
2026-11-02

Affected packages

Affected packages
PackageAffectedFixed
libdancer2-perl
Debian:12
All versions, plus listed versions
0.400001+dfsg-11.0.0+dfsg-11.1.0+dfsg-11.1.1+dfsg-11.1.2+dfsg-12.0.1-12.1.0-12.2.2-1
None known
libdancer2-perl
Debian:13
All versions, plus listed versions
1.1.2+dfsg-12.0.1-12.1.0-12.2.2-1
None known
libdancer2-perl
Debian:14
before 2.2.2-1, plus listed versions
1.1.2+dfsg-12.0.1-12.1.0-1
2.2.2-1
libdancer2-perl
Ubuntu:16.04:LTS
All versions, plus listed versions
0.160003+dfsg-10.163000+dfsg-10.166001+dfsg-1
None known
libdancer2-perl
Ubuntu:18.04:LTS
All versions, plus listed versions
0.205000+dfsg-10.205002+dfsg-10.205002+dfsg-2
None known
libdancer2-perl
Ubuntu:20.04:LTS
All versions, plus listed versions
0.208001+dfsg-10.208002+dfsg-10.300000+dfsg-1
None known
libdancer2-perl
Ubuntu:22.04:LTS
All versions, plus listed versions
0.300005+dfsg-10.301004+dfsg-1
None known
libdancer2-perl
Ubuntu:24.04:LTS
All versions, plus listed versions
0.400001+dfsg-11.0.0+dfsg-11.1.0+dfsg-1
None known
libdancer2-perl
Ubuntu:26.10
All versions, plus listed versions
1.1.2+dfsg-12.1.0-1
None known
libdancer2-perl
Ubuntu:26.04:LTS
All versions, plus listed versions
1.1.2+dfsg-1
None known
perl-Dancer2
openSUSE:Tumbleweed
From an advisory covering 4 CVEs
before 2.2.2-1.1
2.2.2-1.1

History

History
RecordedChangedSources
affected, facts
first indexedCVE List, EUVD, GitHub Advisories, NVD, OSV

Dates are when Every CVE recorded each change. Upstream dates may differ.

In short

CVE-2026-93711 is a medium vulnerability (CVSS 6.5) in libdancer2-perl, published September 22, 2026. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 0.37%, the 31st percentile. Fixed in libdancer2-perl 2.2.2-1.

References

Show 11 moreShow less
MoveEnter Open