Bug 2455350 (CVE-2026-5680) - CVE-2026-5680 undertow-core: Undertow: Denial of Service via WebSocket permessage-deflate processing
Summary: CVE-2026-5680 undertow-core: Undertow: Denial of Service via WebSocket permes...
Keywords:
Status: NEW
Alias: CVE-2026-5680
Deadline: 2026-07-04
Product: Security Response
Classification: Other
Component: vulnerability
Version: unspecified
Hardware: All
OS: Linux
high
high
Target Milestone: ---
Assignee: Product Security DevOps Team
QA Contact:
URL:
Whiteboard:
Depends On: 2526161 2526162
Blocks:
TreeView+ depends on / blocked
 
Reported: 2026-04-06 10:30 UTC by OSIDB Bzimport
Modified: 2026-09-22 15:35 UTC (History)
52 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed:
Embargoed:


Attachments (Terms of Use)


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHSA-2026:70228 0 None None None 2026-09-22 12:56:04 UTC
Red Hat Product Errata RHSA-2026:70229 0 None None None 2026-09-22 13:00:38 UTC
Red Hat Product Errata RHSA-2026:70230 0 None None None 2026-09-22 12:58:34 UTC
Red Hat Product Errata RHSA-2026:70277 0 None None None 2026-09-22 15:35:40 UTC

Description OSIDB Bzimport 2026-04-06 10:30:05 UTC
Summary:
Undertow’s PerMessageDeflateFunction.largerBuffer() uses exponential doubling

Requirements To Exploit:
Any application using Undertow’s WebSocket with permessage-deflate is

affected. This includes:

WildFly application server (uses Undertow as its web layer)

Red Hat JBoss Enterprise Application Platform (JBoss EAP)

Any standalone Undertow WebSocket application using

PerMessageDeflateHandshake

The vulnerability requires only a standard WebSocket connection with

permessage-deflate negotiated, no authentication, no special configuration.

Component Affected:
io.undertow:undertow-core

Version Affected:
Undertow 2.3.18.Final

Patch Available:
no

Version Fixed:
N/A

Cvss:
Score: 7.5 HIGH
Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Impact:
IMPORTANT

Steps To Reproduce:
I have attached a self-contained Maven project (undertow-websocket-poc.tar.gz)

containing 6 tests:

Baselines:

Baseline 1a: Valid Origin -> upgrade accepted, message delivered

Baseline 1b: Invalid Origin -> HTTP 403 rejected

Mitigation:
Add a maxDecompressedBufferSize parameter to PerMessageDeflateHandshake

(e.g. default 10 MB) that limits the largerBuffer() growth

Add a maximum doubling count or absolute buffer cap in largerBuffer()

Add a maxDecompressionRatio check (reject if wire:decompressed > 100x)

Add a maxFragmentsPerMessage limit in WebSocketChannel

Add Ping rate limiting in WebSocketChannel before generating Pong

Expose these limits in the PerMessageDeflateHandshake constructor

Comment 2 Jon Orris 2026-09-22 12:56:01 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 8.1 for RHEL 8

Via RHSA-2026:70228 https://access.redhat.com/errata/RHSA-2026:70228

Comment 3 Jon Orris 2026-09-22 12:58:30 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 8.1 for RHEL 10

Via RHSA-2026:70230 https://access.redhat.com/errata/RHSA-2026:70230

Comment 4 Jon Orris 2026-09-22 13:00:34 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 8.1 for RHEL 9

Via RHSA-2026:70229 https://access.redhat.com/errata/RHSA-2026:70229

Comment 5 Jon Orris 2026-09-22 15:35:37 UTC
This issue has been addressed in the following products:

  Red Hat JBoss Enterprise Application Platform 8.1

Via RHSA-2026:70277 https://access.redhat.com/errata/RHSA-2026:70277


Note You need to log in before you can comment on or make changes to this bug.