WaratekVRT Sign in

CVE-2021-21294 Http4s

Affected softwareHttp4s
Severity7.5 High CVSS 3.1 3 scores
Fixed in0.21.17
WeaknessUncontrolled resource consumption (CWE-400)
Published2 Feb 2021
Updated17 Jun 2026

Description

Http4s (http4s-blaze-server) is a minimal, idiomatic Scala interface for HTTP services. Http4s before versions 0.21.17, 0.22.0-M2, and 1.0.0-M14 have a vulnerability which can lead to a denial-of-service. Blaze-core, a library underlying http4s-blaze-server, accepts connections unboundedly on its selector pool. This has the net effect of amplifying degradation in services that are unable to handle their current request load, since incoming connections are still accepted and added to an unbounded queue. Each connection allocates a socket handle, which drains a scarce OS resource. This can also confound higher level circuit breakers which work based on detecting failed connections. http4s provides a general "MaxActiveRequests" middleware mechanism for limiting open connections, but it is enforced inside the Blaze accept loop, after the connection is accepted and the socket opened. Thus, the limit only prevents the number of connections which can be simultaneously processed, not the number of connections which can be held open. In 0.21.17, 0.22.0-M2, and 1.0.0-M14, a new "maxConnections" property, with a default value of 1024, has been added to the BlazeServerBuilder. Setting the value to a negative number restores unbounded behavior, but is strongly disrecommended. The NIO2 backend does not respect maxConnections. Its use is now deprecated in http4s-0.21, and the option is removed altogether starting in http4s-0.22. There are several possible workarounds described in the refrenced GitHub Advisory GHSA-xhv5-w9c5-2r2w.

CWE-770

Exploitation status

No public exploit

No exploit has been reported in the sources we check. Published 5 years ago.

  • CISA KEV not listed
  • VulnCheck KEV not listed
  • CISA Vulnrichment no assessment published
  • Indexed PoC none indexed
  • EPSS 2.2% chance in 30 days

Waratek protection

No exploit published

Within Waratek scope. In the sources we check, nobody has published exploit code for this CVE or reported it being exploited.

A public code fix exists: http4s/http4s 987d658.

  • Protection none
  • Action unverified
  • Review automated Upstream data
  • Record active
Decided by Exploit code for this candidate, published in a reviewed catalogue or a GitHub repository with 5 or more stars, or in use per CISA or VulnCheck; not only a CISA verdict, a forecast, or nothing at all
Finding This CVE is not listed in CISA KEV or VulnCheck KEV, CISA Vulnrichment records no active exploitation, no reviewed exploit catalogue carries an entry for it, and no GitHub PoC repository for it has 5 or more stars. Nobody has published exploit code worth tracing, so it is not a candidate for a rule ahead of the ones where somebody has; an upstream fix path does exist, so the remediation half of the candidacy still holds. This is a statement about what has been published, not about whether the defect is reachable or serious.
Candidate fix https://github.com/http4s/http4s/commit/987d6589ef79545b9bb2324ac4bdebf82d9a0171 : a commit: the change itself

CVSS

7.5 HIGH v3.1 CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H 3 metrics

We show the highest score from the newest CVSS version. Scores from different versions can't be compared, and the first score listed is sometimes a 0.0 placeholder.

VersionScoreBandVectorAssignerType
CVSS 3.1 7.5 HIGH CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H security-advisories@github.com Secondary published
CVSS 3.1 7.5 HIGH CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H NVD Primary
CVSS 2.0 5.0 none AV:N/AC:L/Au:N/C:N/I:N/A:P NVD Primary

Affected software and releases

Maven packages

Affected and fixed versions, from OSV.dev
PackageIntroducedFixedLast affected
org.http4s:http4s-blaze-server_2.12 0 0.21.17 unbounded
org.http4s:http4s-blaze-server_2.13 0 0.21.17 unbounded

Products and versions

3 products, 3 version entries
SourceVendorProductSchemeAffected versions
osv org.http4s http4s-blaze-server_2.12 generic < 0.21.17
osv org.http4s http4s-blaze-server_2.13 generic < 0.21.17
nvd typelevel http4s generic < 0.21.17

References

URLTags
https://github.com/http4s/http4s/commit/987d6589ef79545b9bb2324ac4bdebf82d9a0171 commit
https://github.com/http4s/blaze/security/advisories/GHSA-xmw9-q7x9-j5qc WEB
https://github.com/http4s/http4s/security/advisories/GHSA-xhv5-w9c5-2r2w WEB

Timeline

Published2021-02-02By the CVE Program.
NVD record modified2026-06-17NVD's own last-modified date for this record.