The vulnerability is a denial-of-service caused by an unbounded cache for server-side SNI SslContext objects in Vert.x. When a client connects using TLS with SNI, the server caches the SslContext corresponding to the provided SNI hostname. The vulnerability description and the provided patch (commit cde2517fca4cd9f77e1ad51e0c92fb02a249cc87) confirm that this cache was implemented using an unbounded ConcurrentHashMap.
The analysis of the patch for the master branch of eclipse-vertx/vert.x pinpoints the vulnerable function as io.vertx.core.internal.tls.SslContextProvider.sslContext. This function uses computeIfAbsent on the sslContextMaps map, using the client-controlled serverName as the key. An attacker can repeatedly connect with new, unique SNI names, causing the map to grow without bounds, leading to excessive memory consumption and a DoS.
The fix applied in the patch is to replace the ConcurrentHashMap with a custom, size-limited LruCache, thus bounding the growth of the cache and preventing the DoS attack. While the vulnerability description mentions that other classes (SSLHelper, SslChannelProvider) are affected in older versions, the provided patch only modifies SslContextProvider, which is the affected class in recent versions.