CVE-2022-31081 json
Inconsistent Interpretation of HTTP Requests ('HTTP Request Smuggling') in HTTP::Daemon
published 2022-06-27 4 y ago modified 2026-06-17 4 mo ago also EUVD-2022-52739
- cvss
- 7.3
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 2.4%
- EPSS 2.4% chance of exploitation in 30 days, percentile 83%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- http::daemon_project http::daemon 6.15
- libhttp-daemon-perl Debian 14, Debian 13, Debian 12 6.14-1.1
debian advisories DEBIAN-CVE-2022-31081
- libhttp-daemon-perl Ubuntu 18.04 LTS 6.01-1ubuntu0.1
- libhttp-daemon-perl Ubuntu 20.04 LTS 6.06-1ubuntu0.1
- libhttp-daemon-perl Ubuntu 22.04 LTS 6.13-1ubuntu0.1
- libhttp-daemon-perl Ubuntu Pro 14.04 LTS 6.01-1ubuntu0.14.04~esm1
- libhttp-daemon-perl Ubuntu Pro 16.04 LTS 6.01-1ubuntu0.16.04~esm1
ubuntu advisories UBUNTU-CVE-2022-31081
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- perl-HTTP-Daemon SLE Module for Basesystem 15 SP4, SLE Module for Basesystem 15 SP3, openSUSE Leap 15.4 +1 more 6.01-150000.3.5.1
- perl-HTTP-Daemon SLES for SAP 12 SP5, SLES 12 SP5 6.01-9.5.1
suse advisories SUSE-SU-2022:2874-1SUSE-SU-2022:2872-1
- perl-HTTP-Daemon openSUSE Tumbleweed 6.14-2.1
opensuse advisories openSUSE-SU-2024:12216-1
Vendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2022-31081 updated cvss 6.5
perl-HTTP-Daemon: HTTP:: Daemon allows request smuggling
-
Red Hat Enterprise Linux 7 perl-HTTP-Daemonaffected: no fix planned “Out of support scope”
-
Red Hat Software Collections rh-perl530-perl-HTTP-Daemonaffected: no fix available “Fix deferred”
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- partial
- Assessed
- 18 mo ago
Exploit prediction
2.35% chance of exploitation in the next 30 days, higher than 83% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- portswigger.net https://portswigger.net/research/http-desync-attacks-request-smuggling-reborn referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 7.3 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:L |
| NVD | 3.1 | 6.5 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:L/A:N |
| NVD | 2.0 | 6.4 | AV:N/AC:L/Au:N/C:P/I:P/A:N |
Affected products
- libwww-perl HTTP-Daemon
Classification
- Weakness
-
- CWE-444 Inconsistent Interpretation of HTTP Requests
References
-
github.com
/libwww-perl/HTTP-Daemon/commit/8dc5269d59e2d5d9eb1647d82c449ccd880f7fd0
patch, third-party-advisory
-
github.com
/libwww-perl/HTTP-Daemon/commit/e84475de51d6fd7b29354a997413472a99db70b2
patch, third-party-advisory
-
github.com
/libwww-perl/HTTP-Daemon/security/advisories/GHSA-cg8c-pxmv-w7cf
patch, third-party-advisory
-
portswigger.net
/research/http-desync-attacks-request-smuggling-reborn
exploit, third-party-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/7U4XEPZ5Q3LNOQF3E6EXFWVSEXU5IZ6T/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/XQBW2D43TDNYX4R2YBTNNZDBNZ45DINN/
vendor-advisory
-
lists.fedoraproject.org
/archives/list/package-announce%40lists.fedoraproject.org/message/ECJ4ZPBQWD3B2CD6RRIVMENB5KUOJ3LC/
vendor-advisory
-
metacpan.org
/release/HTTP-Daemon/
release-notes, vendor-advisory
-
cwe.mitre.org
/data/definitions/444.html
third-party-advisory
-
datatracker.ietf.org
/doc/html/rfc7230#section-9.5
third-party-advisory
-
lists.debian.org
/debian-lts-announce/2022/09/msg00038.html
mailing-list, third-party-advisory
Sources
- CVE List CVE-2022-31081
- NVD CVE-2022-31081
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.