CVE-2018-12541: Excessive memory allocation
6.5
CVSS Score
3.1
Basic Information
CVE ID
GHSA ID
EPSS Score
0.79101%
CWE
Published
10/17/2018
Updated
3/28/2023
KEV Status
No
Technology
Java
Technical Details
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H
Package Name | Ecosystem | Vulnerable Versions | First Patched Version |
---|---|---|---|
io.vertx:vertx-core | maven | >= 3.0.0, < 3.5.4 | 3.5.4 |
Vulnerability Intelligence
Miggo AI
Root Cause Analysis
The vulnerability stems from how WebSocket HTTP upgrade requests were handled. The pre-patch implementation in HttpServerImpl.java
's handleMessage()
method wrote all incoming HttpContent
chunks into a buffer without checking accumulated size. This allowed unbounded memory consumption during WebSocket handshakes. The GitHub commit shows the fix added a 8192-byte limit check in this method, and the CVE description explicitly references this buffering behavior as the flaw. The test case added in WebsocketTest.java
confirms the 413 response logic was missing before the patch.