CVE-2026-6860: Medium severity Eclipse Vert.x vulnerability

Published May 6, 2026
·
Updated

A TCP client can perform a TLS handshake and present the server name extension with a server name that is accepted by a server wildcard name, e.g. if the server is configured with a certificate accepting .example.com, any XYZ.example.com where xyz is a valid name can be used.

Other sources

Potential unbounded server-side SNI SslContext cache growth in Vert.x TLS handling, with possible resource-exhaustion / DoS impact.

On affected versions, matching server-side SNI names are cached via computeIfAbsent(serverName, ...) in a serverName-keyed SslContext cache, and I could not find any bound, TTL, or eviction for that cache.

The implementation differs slightly by branch, but the same sink appears to be present in released versions 4.3.4 through 5.0.8: - 4.3.x: SSLHelper - 4.4.x / 4.5.x: SslChannelProvider - 5.0.x and current master: SslContextProvider

It appears that when server-side SNI is enabled, and wildcard or otherwise broad hostname mappings are used, an unauthenticated client can send many distinct matching SNI names and cause the server to retain increasing numbers of SslContext entries over time, leading to increasing memory consumption and possible DoS conditions.

A check was performed on the related TCP SNI path across affected versions, the QUIC SNI path on 5.x, and the wildcard hostname resolution helpers used during certificate selection.

Steps to reproduce

1. Configure a Vert.x server with setSsl(true) and setSni(true). 2. Use a keystore or mapping where many distinct SNI names match a wildcard or similarly broad rule. 3. Send repeated connections with distinct matching SNI values. 4. Observe that the SNI cache size grows with the number of unique matching names.

Local observations: - initial sniEntrySize() = 0 - after 20 unique matching names: 20 - after 40 unique matching names: 40 - repeating previously seen matching names did not grow the cache further - non-matching SNI names did not create new cache entries

What are the affected versions?

Affected released versions confirmed on origin: - 4.3.4 through 4.3.8 - 4.4.0 through 4.4.9 - 4.5.0 through 4.5.25 - 5.0.0 through 5.0.8

Not affected by the same sink: - 4.0.x through 4.2.x - 4.3.0 through 4.3.3

Are there any ways to mitigate this issue?

- Disable server-side SNI if it is not needed. - Avoid wildcard or otherwise high-cardinality hostname mappings where feasible. - Apply connection or rate limiting in front of the service.

GitHub

Affected Software

6 affected components
maven/io.vertx:vertx-core>=5.0.0<=5.0.8
maven/io.vertx:vertx-core>=4.5.0<=4.5.25
maven/io.vertx:vertx-core>=4.4.0<=4.4.9
maven/io.vertx:vertx-core>=4.3.4<=4.3.8
Eclipse Vert.x>=4.3.4<=4.5.26
Eclipse Vert.x>=5.0.0<=5.0.11

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Configuration

    Disable server-side SNI if it is not needed (the issue is described as occurring when server-side SNI is enabled with broad/wildcard hostname mappings).

    Vert.x TLS server (server-side SNI) server-side SNI = disable
  2. Compensating control

    Apply connection or rate limiting in front of the service.

  3. Compensating control

    Avoid wildcard or otherwise high-cardinality hostname mappings where feasible.

  4. Compensating control

    Ensure SNI server name acceptance does not rely on overly broad wildcard mappings; use narrower hostname mappings so many distinct SNI names cannot match a single broad certificate rule (e.g., avoid configurations where *.example.com would accept many XYZ.example.com names).

Event History

May 6, 2026
CVE Published
via MITRE·09:55 AM
Data Sourced
via MITRE·09:55 AM
Description
Data Sourced
via Red Hat·10:02 AM
DescriptionSeverityAffected Software
Data Sourced
via NVD·10:16 AM
RemedyDescriptionSeverityWeaknessAffected Software
May 9, 2026
Advisory Published
via GitHub·12:38 AM
Data Sourced
via GitHub·12:38 AM
DescriptionSeverityAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2026-6860?

CVE-2026-6860 is considered a moderate severity vulnerability due to its potential for unbounded server name validation.

2

How do I fix CVE-2026-6860?

To fix CVE-2026-6860, upgrade to a patched version of io.vertx:vertx-core that is beyond the vulnerable versions mentioned.

3

Which versions of io.vertx:vertx-core are affected by CVE-2026-6860?

CVE-2026-6860 affects io.vertx:vertx-core versions from 4.3.4 to 5.0.8 inclusively.

4

What kind of attack does CVE-2026-6860 expose my server to?

CVE-2026-6860 exposes your server to potential man-in-the-middle attacks due to improper server name validation.

5

Is CVE-2026-6860 specific to any particular deployment?

CVE-2026-6860 specifically impacts applications utilizing wildcard certificates in their TLS configurations.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203