Http4s: HTTP/2 Denial of Service with Ember Backend
Default status is the baseline for the product, each version can override it (e.g. patched versions marked unaffected).
| Vendor | Product | Default status | Versions | |||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| http4s | http4s | affected |
|
|||||||||
| org.http4s | http4s-ember-core_2.12 | affected |
|
|||||||||
| org.http4s | http4s-ember-core_2.13 | affected |
|
|||||||||
| org.http4s | http4s-ember-core_3 | affected |
|
No data.
No data.
| Vendor | Product | Versions | ||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Http4s | Http4s |
|
||||||||||||
| Org.http4s | Http4s-ember-core 2.12 |
|
||||||||||||
| Org.http4s | Http4s-ember-core 2.13 |
|
||||||||||||
| Org.http4s | Http4s-ember-core 3 |
|
| Source | ID | Title |
|---|---|---|
Github GHSA |
GHSA-vmm3-xgcx-67hm | http4s has HTTP/2 Denial of Service with Ember Backend |
No CVSS v3.1
No CVSS v3.0
No CVSS v2
This CVE is not in the KEV list.
Exploit prediction score: < 1% (0.524% probability within 30 days)
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Http4s
Http4s http4s Org.http4s Org.http4s http4s-ember-core 2.12 Org.http4s http4s-ember-core 2.13 Org.http4s http4s-ember-core 3 |
|
| Vendors & Products |
Http4s
Http4s http4s Org.http4s Org.http4s http4s-ember-core 2.12 Org.http4s http4s-ember-core 2.13 Org.http4s http4s-ember-core 3 |
| Type | Values Removed | Values Added |
|---|---|---|
| Description | Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, an unauthenticated HTTP/2 peer can cause an out-of-memory denial of service in the Ember backend with HTTP/2 enabled. The Hpack wrapper in ember-core/shared/src/main/scala/org/http4s/ember/core/h2/Hpack.scala concatenates HEADERS and CONTINUATION frame fragments and decodes them into a single List, but maxHeaderSize accounting does not include indexed headers or HPACK per-header overhead. A small compressed header block can therefore expand into a much larger decoded representation that remains in memory for processing. Servers exposed to untrusted HTTP/2 traffic and clients directed to an untrusted HTTP/2 server are affected, and concurrent malicious connections can exhaust the process heap. This issue is fixed in versions 0.23.35 and 1.0.0-M47. | |
| Title | Http4s: HTTP/2 Denial of Service with Ember Backend | |
| Weaknesses | CWE-409 | |
| References |
| |
| Metrics |
cvssV4_0
|