Description
Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, An Ember server with HTTP/2 enabled through withHttp2 does not enforce SETTINGS_MAX_CONCURRENT_STREAMS for peer-created streams. One unauthenticated connection can open an unbounded number of streams, each retaining per-stream state until heap exhaustion. The same unchecked allocation is reachable in an ember-client through server-initiated PUSH_PROMISE frames because enablePush is not enforced. This issue is fixed in versions 0.23.35 and 1.0.0-M47.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| http4s | http4s | < 0.23.35, >= 1.0.0-M1, < 1.0.0-M47 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | org.http4s:http4s-ember-core_2.12 | < 0.23.35 | 0.23.35 | GHSA-9vwc-pc8p-253q |
| Maven | org.http4s:http4s-ember-core_2.13 | < 0.23.35 | 0.23.35 | GHSA-9vwc-pc8p-253q |
| Maven | org.http4s:http4s-ember-core_2.13 | >= 1.0.0-M1, < 1.0.0-M47 | 1.0.0-M47 | GHSA-9vwc-pc8p-253q |
| Maven | org.http4s:http4s-ember-core_3 | < 0.23.35 | 0.23.35 | GHSA-9vwc-pc8p-253q |
| Maven | org.http4s:http4s-ember-core_3 | >= 1.0.0-M1, < 1.0.0-M47 | 1.0.0-M47 | GHSA-9vwc-pc8p-253q |