LiveActive security incident?Get immediate response
CVE Record

CVE-2021-41084: Response Splitting from unsanitized headers in http4s

http4s is an open source scala interface for HTTP. In affected versions http4s is vulnerable to response-splitting or request-splitting attacks when untrusted user input is used to create any of the following fields: Header names (`Header.name`å), Header values (`Header.value`), Status reason phrases (`Status.reason`), URI paths (`Uri.Path`), URI authority registered names (`URI.RegName`) (through 0.21). This issue has been resolved in versions 0.21.30, 0.22.5, 0.23.4, and 1.0.0-M27 perform the following. As a matter of practice http4s services and client applications should sanitize any user input in the aforementioned fields before returning a request or response to the backend. The carriage return, newline, and null characters are the most threatening.

HighCVSS 8.7Not KEV-listedUpdated
Glexia's TakeAutomated analysishigh

Security readout for executives and security teams

Plain-English summary

http4s versions listed in the advisory can let unsafe user input break HTTP message structure when placed into headers, status reason phrases, or certain URI fields. In the wrong application flow, this can let an attacker influence downstream responses or requests, creating confidentiality and integrity risk. The issue is fixed in named http4s releases.

Executive priority

Treat this as a high-priority dependency and input-validation issue where http4s is used in internet-facing or proxy-like services. Upgrade is the cleanest control. Business urgency is lower if affected versions are absent or untrusted input never reaches the vulnerable fields.

Technical view

The source describes response-splitting or request-splitting caused by unsanitized carriage return, newline, or null characters in http4s Header names, Header values, Status.reason, Uri.Path, and URI.RegName through 0.21. Fixed versions are 0.21.30, 0.22.5, 0.23.4, and 1.0.0-M27.

Likely exposure

Exposure is limited to Scala services or clients using affected http4s versions and constructing the listed HTTP fields from untrusted input. Public-facing endpoints, proxying services, redirects, and backend request builders deserve priority review.

Exploitation context

The bundle marks KEV as false, and no supplied source states active exploitation. The CVSS vector is network reachable with no privileges or user interaction, but high attack complexity. Exploitability depends on application-specific input flow into vulnerable HTTP metadata.

Researcher notes

The supplied CWE is CWE-918, but the described weakness is HTTP response/request splitting through unsafe field construction. Do not assume exploitability from version alone; validate whether attacker-controlled data reaches the specific http4s constructors or response/request metadata paths.

Mitigation direction

  • Upgrade http4s to 0.21.30, 0.22.5, 0.23.4, 1.0.0-M27, or later.
  • Sanitize or reject untrusted input before constructing the listed HTTP fields.
  • Block carriage return, newline, and null characters in those fields.
  • Review vendor advisory before choosing backports or compensating controls.

Validation and detection

  • Inventory deployed Scala services and clients for affected http4s version ranges.
  • Search code paths creating Header names, Header values, Status.reason, Uri.Path, or URI.RegName from user input.
  • Confirm deployed artifacts include a fixed http4s release.
  • Add regression tests that reject carriage return, newline, and null input in affected fields.
Prepared
Confidence
high
Sources
6

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · medium confidence lookup

CWE-918: Information exposure and cloud metadata lookup

Information exposure and SSRF weaknesses can make discovery, cloud metadata, and credential material review relevant. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2021-41084 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
High
CVSS
8.7 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
5Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
8.7CVSS 3.1HighCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N2.25.8Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

8.7High
CVSS 3.1 vector shape for CVE-2021-41084Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone
Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
http4shttp4s<= 0.21.28, >= 0.22.0, < 0.22.5, >= 0.23.0, < 0.23.4, >= 1.0.0-M1, < 1.0.0-M27Listed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-918 · source CWE mapping

Server-Side Request Forgery (SSRF)

Server-Side Request Forgery (SSRF) represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.