Read the docs
TI-2021-04393 Aliases CVE-2021-21293GHSA-xmw9-q7x9-j5qc

Unbounded connection acceptance leads to file handle exhaustion

Priority LOW 37CWE-400Published · Updated

Key facts

Attack vector
Network
Privileges required
None
User interaction
None
Attack complexity
Low
Impact type
Denial of service
Confidentiality · integrity · availability
None · None · High
Fix status
Fixed

Attack profile from CVSS 3.1 · CNA. Fix status from CNA and GitHub. Impact type from CWE-400.

Summary

blaze is a Scala library for building asynchronous pipelines, with a focus on network IO. All servers running blaze-core before version 0.14.15 are affected by a vulnerability in which unbounded connection acceptance leads to file handle exhaustion. Blaze, accepts connections unconditionally on a dedicated thread 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. The vast majority of affected users are using it as part of http4s-blaze-server <= 0.21.16. http4s provides a mechanism for limiting open connections, but 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. The issue is fixed in version 0.14.15 for "NIO1SocketServerGroup". A "maxConnections" parameter is added, with a default value of 512. Concurrent connections beyond this limit are rejected. To run unbounded, which is not recommended, set a negative number. The "NIO2SocketServerGroup" has no such setting and is now deprecated. There are several possible workarounds described in the refrenced GitHub Advisory GHSA-xmw9-q7x9-j5qc.

Why it matters now

EPSS 0.02143 82nd percentileScored 2026-11-07
Fix Fixed blaze (http4s): 0.14.15org.http4s:blaze-core_2.11 (Maven): 0.14.15+2 more products

SSVC decision points

Not available: CISA has not published SSVC decision points for this record.

Affected products

VendorProductAffected versionsFixed inStatusSource
http4sblazebefore 0.14.150.14.15Patch availableCNA
—org.http4s:blaze-core_2.11 (Maven)before 0.14.150.14.15Patch availableGHSA-xmw9-q7x9-j5qc
—org.http4s:blaze-core_2.12 (Maven)before 0.14.150.14.15Patch availableGHSA-xmw9-q7x9-j5qc
—org.http4s:blaze-core_2.13 (Maven)before 0.14.150.14.15Patch availableGHSA-xmw9-q7x9-j5qc
  • blaze Vendorhttp4s Affected before 0.14.15 Fixed in 0.14.15 Patch available CNA
  • org.http4s:blaze-core_2.11 (Maven) Vendor— Affected before 0.14.15 Fixed in 0.14.15 Patch available GHSA-xmw9-q7x9-j5qc
  • org.http4s:blaze-core_2.12 (Maven) Vendor— Affected before 0.14.15 Fixed in 0.14.15 Patch available GHSA-xmw9-q7x9-j5qc
  • org.http4s:blaze-core_2.13 (Maven) Vendor— Affected before 0.14.15 Fixed in 0.14.15 Patch available GHSA-xmw9-q7x9-j5qc

CPE configurations NVD · 1

CPEVersionsRoleVendor
cpe:2.3:a:typelevel:blaze:*:*:*:*:*:*:*:*before 0.14.15Vulnerablehttp4s
  • cpe:2.3:a:typelevel:blaze:*:*:*:*:*:*:*:* Versions before 0.14.15 Vulnerable ·http4s

Remediation

  • Fix · CNA blaze (http4s) Fixed in 0.14.15
  • Fix · GHSA-xmw9-q7x9-j5qc org.http4s:blaze-core_2.11 (Maven) Fixed in 0.14.15 Advisory →
  • Fix · GHSA-xmw9-q7x9-j5qc org.http4s:blaze-core_2.12 (Maven) Fixed in 0.14.15 Advisory →
  • Fix · GHSA-xmw9-q7x9-j5qc org.http4s:blaze-core_2.13 (Maven) Fixed in 0.14.15 Advisory →

Timeline

  1. 2026-10-02 Threatist record created from CVE-2021-21293
  2. 2026-10-03 Alias added: GHSA-xmw9-q7x9-j5qc

References

Sources