High

http4k: Unbounded gzip decompression in `ServerFilters.GZip` / `RequestFilters.GunZip` allowed memory-exhaustion DoS

  • Disclosed: 17.08.2026
  • Updated: 11.10.2026 12:22

Impact

ServerFilters.GZip and RequestFilters.GunZip (and the underlying Gzip functions used to decompress request bodies) did not impose any cap on the decompressed size. A small malicious gzip-encoded request body (on the order of kilobytes) could decompress to gigabytes, exhausting the JVM heap and denying service to other clients.

Who is affected: any http4k server that accepts gzip-encoded requests via ServerFilters.GZip or RequestFilters.GunZip. Exploitable by any unauthenticated client. The vulnerability was introduced on 2017-08-01 (commit 2618fe08f9) and was present for ~9 years.

Patches

Line Fixed in Edition
v6.x (Community) 6.49.0.0 Community
v5.x (LTS) 5.42.0.0 Enterprise — contact enterprise@http4k.org
v4.x (LTS) 4.51.0.0 Enterprise — contact enterprise@http4k.org

The fix caps decompression at 10MB by default; oversized requests through ServerFilters.GZip / RequestFilters.GunZip now return 413 Request Entity Too Large, and decompressing elsewhere throws SizeLimitExceededException. The keyed hmacSHA256 helper and other safe paths are unaffected.

Workarounds

For deployments that cannot upgrade immediately:

  • Replace the GZip / GunZip filters with custom versions that wrap the decompressed InputStream in a size-limited reader, or
  • Strip gzip-encoded request support at the edge (CDN, reverse proxy, or load balancer).

References

Affected software

Click a technology to see all vulnerabilities affecting it.

PlatformPackageVulnerable versionsFixed in
Java / Kotlin (Maven) org.http4k:http4k-core >= 6.0.0.0, < 6.49.0.0, >= 5.0.0.0, < 5.42.0.0, <= 4.48.2.0 6.49.0.0, 5.42.0.0

References

CVSS score 7.5/10
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weakness (CWE)
CWE-409
Platform
Java / Kotlin (Maven)
Package
org.http4k:http4k-core
Disclosed
17.08.2026
Updated
11.10.2026 12:22

Sources and licenses

OSV / GitHub Advisory Database - GHSA-g4w2-6h2r-3m3w - CC BY 4.0

Vulnerability history: org.http4k:http4k-core

All published vulnerabilities of this package (Java / Kotlin (Maven)), newest first. Shows whether this is a one-off slip or a package that needs watching.

Total entries
4
First → latest
06.2026 08.2026
Without a fix
0
Exploited in attacks
0

Severity breakdown

  • High 2
  • Medium 2

Disclosures per year

  1. 2026: 4
  1. http4k: Unbounded gzip decompression in `ServerFilters.GZip` / `RequestFilters.GunZip` allowed memory-exhaustion DoS this entry
    High · 7.5 CVE-2026-53659 >= 6.0.0.0, < 6.49.0.0, >= 5.0.0.0, < 5.42.0.0, <= 4.48.2.0 6.49.0.0, 5.42.0.0
  2. Medium CVE-2026-100725 >= 6.0.0.0, < 6.48.0.0, >= 5.0.0.0, < 5.42.0.0, < 4.51.0.0 6.48.0.0, 5.42.0.0, 4.51.0.0
  3. Medium CVE-2026-100724 >= 6.0.0.0, < 6.49.0.0, >= 5.0.0.0, < 5.42.0.0, < 4.51.0.0 6.49.0.0, 5.42.0.0, 4.51.0.0

Know which vulnerabilities affect your application

With the DockRay integration and software inventory enabled, DockRay checks reported component versions against known vulnerabilities and notifies you about confirmed matches. Coverage depends on the supported technology and available advisory data.

Connect your application
DockRay newsletter

Application security in your inbox

Important vulnerabilities, actionable guidance and practical advice for your applications. Choose your technologies and follow what matters to your project.

  • A daily digest of new vulnerabilities, critical ones included.
  • Notifications about important updates.
  • Practical advice on application security and monitoring.

Leave empty to receive updates for every technology.

Free to subscribe. Unsubscribe with one click in any email.