Every CVE Search/ Get API key

CVE-2022-31081

Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling') in HTTP::Daemon

7.3 HighFix available

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

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
Low

Exploit likelihood

2.35%Up 1.3 points since Jun 28, 2022
90%50%10%1%

What each source reports

CVE List Score used 7.3

Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling') in HTTP::Daemon

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

Record
CVE-2022-31081
CVSS 3.1
7.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Weakness
CWE-444
Updated
2026-11-02
EUVDEUVD-2022-52739 7.3

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

Record
EUVD-2022-52739
CVSS 3.1
7.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Updated
2026-11-02
NVD 7.3

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

Record
CVE-2022-31081
CVSS 3.1
7.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
CVSS 2.0
6.4 MediumAV:N/AC:L/Au:N/C:P/I:P/A:N
Weakness
CWE-444
Updated
2026-11-02
OSVBELL-CVE-2022-31081 6.5
Record
BELL-CVE-2022-31081
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
OSV 7.3

Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling') in HTTP::Daemon

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

Record
CVE-2022-31081
CVSS 3.1
7.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Weakness
CWE-444
Updated
2026-11-02
OSVUBUNTU-CVE-2022-31081 6.5

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

Record
UBUNTU-CVE-2022-31081
CVSS 3.1
6.5 MediumCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N
CVSS 3.1
7.3 HighCVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L
Updated
2026-11-02
Show 7 moreShow less
OSVDEBIAN-CVE-2022-31081 No score

HTTP::Daemon is a simple http server class written in perl. Versions prior to 6.15 are subject to a vulnerability which could potentially be exploited to gain privileged access to APIs or poison intermediate caches. It is uncertain how large the risks are, most Perl based applications are served on top of Nginx or Apache, not on the HTTP::Daemon. This library is commonly used for local development and tests. Users are advised to update to resolve this issue. Users unable to upgrade may add additional request handling logic as a mitigation. After calling my $rqst = $conn->get_request() one could inspect the returned HTTP::Request object. Querying the 'Content-Length' (my $cl = $rqst->header('Content-Length')) will show any abnormalities that should be dealt with by a 400 response. Expected strings of 'Content-Length' SHOULD consist of either a single non-negative integer, or, a comma separated repetition of that number. (that is 42 or 42, 42, 42). Anything else MUST be rejected.

Record
DEBIAN-CVE-2022-31081
Updated
2026-11-03
OSVMGASA-2022-0349 No score

Updated perl-HTTP-Daemon packages fix security vulnerability

Request smuggling in HTTP::Daemon (CVE-2022-31081)

Record
MGASA-2022-0349
Updated
2026-11-02
OSVopenSUSE-SU-2024:12216-1 No score

perl-HTTP-Daemon-6.14-2.1 on GA media

These are all security issues fixed in the perl-HTTP-Daemon-6.14-2.1 package on the GA media of openSUSE Tumbleweed.

Record
openSUSE-SU-2024:12216-1
Updated
2026-11-02
OSVSUSE-SU-2022:2872-1 No score

Security update for perl-HTTP-Daemon

This update for perl-HTTP-Daemon fixes the following issues:

  • CVE-2022-31081: Fixed request smuggling in HTTP::Daemon (bsc#1201157).
Record
SUSE-SU-2022:2872-1
Updated
2026-11-02
OSVSUSE-SU-2022:2874-1 No score

Security update for perl-HTTP-Daemon

This update for perl-HTTP-Daemon fixes the following issues:

  • CVE-2022-31081: Fixed request smuggling in HTTP::Daemon (bsc#1201157).
Record
SUSE-SU-2022:2874-1
Updated
2026-11-02
OSVUSN-5520-1 No score

libhttp-daemon-perl vulnerability

It was discovered that HTTP-Daemon incorrectly handled certain crafted requests. A remote attacker could possibly use this issue to perform an HTTP Request Smuggling attack.

Record
USN-5520-1
Updated
2026-11-02
OSVUSN-5520-2 No score

libhttp-daemon-perl vulnerability

USN-5520-1 fixed a vulnerability in HTTP-Daemon. This update provides the corresponding update for Ubuntu 14.04 ESM and Ubuntu 16.04 ESM.

Original advisory details:

It was discovered that HTTP-Daemon incorrectly handled certain crafted requests. A remote attacker could possibly use this issue to perform an HTTP Request Smuggling attack.

Record
USN-5520-2
Updated
2026-11-02

Affected products

Affected packages

Affected packages
PackageAffectedFixed
perl-http-daemon
Alpaquita:23
6.14-r0 up to 6.14-r1
6.14-r1
perl-http-daemon
Alpaquita:stream
6.14-r0 up to 6.16-r0
6.16-r0
libhttp-daemon-perl
Debian:12
before 6.14-1.1
6.14-1.1
libhttp-daemon-perl
Debian:13
before 6.14-1.1
6.14-1.1
libhttp-daemon-perl
Debian:14
before 6.14-1.1
6.14-1.1
libhttp-daemon-perl
Debian:10
before 6.01-3+deb10u1, plus listed versions
6.01-3
6.01-3+deb10u1
perl-HTTP-Daemon
Mageia:8
before 6.140.0-3.mga8
6.140.0-3.mga8
perl-HTTP-Daemon
SUSE:Linux Enterprise Server 12 SP5
before 6.01-9.5.1
6.01-9.5.1
perl-HTTP-Daemon
SUSE:Linux Enterprise Server for SAP Applications 12 SP5
before 6.01-9.5.1
6.01-9.5.1
perl-HTTP-Daemon
SUSE:Linux Enterprise Module for Basesystem 15 SP3
before 6.01-150000.3.5.1
6.01-150000.3.5.1
Show 9 moreShow less
Affected packages
PackageAffectedFixed
perl-HTTP-Daemon
SUSE:Linux Enterprise Module for Basesystem 15 SP4
before 6.01-150000.3.5.1
6.01-150000.3.5.1
perl-HTTP-Daemon
openSUSE:Leap 15.3
before 6.01-150000.3.5.1
6.01-150000.3.5.1
perl-HTTP-Daemon
openSUSE:Leap 15.4
before 6.01-150000.3.5.1
6.01-150000.3.5.1
libhttp-daemon-perl
Ubuntu:Pro:14.04:LTS
before 6.01-1ubuntu0.14.04~esm1, plus listed versions
6.01-1
6.01-1ubuntu0.14.04~esm1
libhttp-daemon-perl
Ubuntu:Pro:16.04:LTS
before 6.01-1ubuntu0.16.04~esm1, plus listed versions
6.01-1
6.01-1ubuntu0.16.04~esm1
libhttp-daemon-perl
Ubuntu:18.04:LTS
before 6.01-1ubuntu0.1, plus listed versions
6.01-1
6.01-1ubuntu0.1
libhttp-daemon-perl
Ubuntu:20.04:LTS
before 6.06-1ubuntu0.1, plus listed versions
6.04-16.06-1
6.06-1ubuntu0.1
libhttp-daemon-perl
Ubuntu:22.04:LTS
before 6.13-1ubuntu0.1, plus listed versions
6.12-16.13-1
6.13-1ubuntu0.1
perl-HTTP-Daemon
openSUSE:Tumbleweed
before 6.14-2.1
6.14-2.1

History

History
RecordedChangedSources
first indexedCVE List, EUVD, NVD, OSV

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

In short

CVE-2022-31081 is a high vulnerability (CVSS 7.3) in Debian Linux, published June 27, 2022. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 2.35%, the 83rd percentile. Fixed in perl-http-daemon 6.14-r1.

References

Show 19 moreShow less
MoveEnter Open