Skip to main content
← All vulnerabilities
CVE-2021-41084GHSA-5VCM-3XC3-W7X3

Response Splitting from unsanitized headers in http4s

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.22.5, 0.23.4, 1.0.0-M27, 0.21.29
None on Exploit-DB, Metasploit or GitHub

Summary

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.

Timeline

  1. CVE published
  2. Record last updated

Affected versions

  • http4s http4s

    through 0.21.28; From 0.22.0 · fixed in 0.22.5; From 0.23.0 · fixed in 0.23.4; From 1.0.0-M1 · fixed in 1.0.0-M27

  • org.http4s:http4s-client_2.12Maven

    fixed in 0.21.29

  • org.http4s:http4s-client_2.12Maven

    From 0.22.0 · fixed in 0.22.5

  • org.http4s:http4s-client_2.12Maven

    From 0.23.0 · fixed in 0.23.4

  • org.http4s:http4s-client_2.13Maven

    fixed in 0.21.29

  • org.http4s:http4s-client_2.13Maven

    From 0.22.0 · fixed in 0.22.5

  • org.http4s:http4s-client_2.13Maven

    From 0.23.0 · fixed in 0.23.4

  • org.http4s:http4s-client_3Maven

    fixed in 0.21.29

  • org.http4s:http4s-client_3Maven

    From 0.22.0 · fixed in 0.22.5

  • org.http4s:http4s-client_3Maven

    From 0.23.0 · fixed in 0.23.4

  • org.http4s:http4s-server_2.10Maven

    through 0.21.28

  • org.http4s:http4s-server_2.11Maven

    through 0.21.28

  • org.http4s:http4s-server_2.12Maven

    fixed in 0.21.29

  • org.http4s:http4s-server_2.12Maven

    From 0.22.0 · fixed in 0.22.5

  • org.http4s:http4s-server_2.12Maven

    From 0.23.0 · fixed in 0.23.4

  • org.http4s:http4s-server_2.13Maven

    fixed in 0.21.29

  • org.http4s:http4s-server_2.13Maven

    From 0.22.0 · fixed in 0.22.5

  • org.http4s:http4s-server_2.13Maven

    From 0.23.0 · fixed in 0.23.4

  • org.http4s:http4s-server_2.13.0-M5Maven

    through 0.21.28

  • org.http4s:http4s-server_3Maven

    From 0.22.0 · fixed in 0.22.5

  • org.http4s:http4s-server_3Maven

    From 0.23.0 · fixed in 0.23.4

References 4

GitHub · http4s/http4s

httpwg.org

owasp.org