Description
The Vert.x Web static handler component cache can be manipulated to deny the access to static files served by the handler using specifically crafted request URI.
The issue comes from an improper implementation of the C. rule of section 5.2.4 of RFC3986 and is fixed in Vert.x Core component (used by Vert.x Web): https://github.com/eclipse-vertx/vert.x/pull/5895
Steps to reproduce
Given a file served by the static handler, craft an URI that introduces a string like bar%2F..%2F after the last / char to deny the access to the URI with an HTTP 404 response. For example https://example.com/foo/index.html can be denied with https://example.com/foo/bar%2F..%2Findex.html
Mitgation
Disabling Static Handler cache fixes the issue.
StaticHandler staticHandler = StaticHandler.create().setCachingEnabled(false);
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| Eclipse Vert.x | Eclipse Vert.x | 4.0.0 – ≤ 4.5.23, 5.0.0 – ≤ 5.0.6 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Red Hat
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Red Hat Jboss Enterprise Application Platform Eus 7 | eap7-apache-cxf +3 | 3.4.10-4.SP2_redhat_00004.1.el7eap | RHSA-2026:33371 |
| Red Hat Jboss Enterprise Application Platform Eus 7 | eap7-undertow | 2.0.41-8.SP9_redhat_00001.1.el7eap | RHSA-2026:33371 |
| Red Hat Jboss Enterprise Application Platform Eus 7 | eap7-wildfly +4 | 7.3.18-3.GA_redhat_00001.1.el7eap | RHSA-2026:33371 |
Wolfi
| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Wolfi rolling | apicurio-registry | 3.1.6-r1 | — |
| Wolfi rolling | druid | 35.0.1-r8 | — |
| Wolfi rolling | keycloak-26.4-iamguarded-compat | No fix yet | — |
| Wolfi rolling | keycloak-26.5 +2 | 26.5.7-r0 | — |
| Wolfi rolling | spark-4.0-scala-2.13 | 4.0.1-r7 | — |
| Wolfi rolling | spark-4.1-scala-2.13 | 4.1.1-r3 | — |
| Wolfi rolling | strimzi-kafka-operator-kafka-init +6 | 0.50.0-r0 | — |
| Wolfi rolling | wildfly-openjdk-17 +1 | 38.0.1-r2 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Maven | io.vertx:vertx-core | < 4.5.24 | 4.5.24 | GHSA-cphf-4846-3xx9 |
| Maven | io.vertx:vertx-core | >= 5.0.0.CR1, < 5.0.7 | 5.0.7 | GHSA-cphf-4846-3xx9 |
Advisories 4
- RHSA-2026:33371 Red Hat Security Advisory: Red Hat JBoss Enterprise Application Platform 7.3.18 security update Red Hat Security Advisories (RHSA) · Oct 20, 2026
- WID-SEC-2026-0977 Keycloak: Mehrere Schwachstellen BSI CERT-Bund (WID) · Oct 13, 2026
- WID-SEC-2026-0761 Red Hat JBoss Enterprise Application Platform: Schwachstelle ermöglicht Denial of Service BSI CERT-Bund (WID) · Jul 1, 2026
- WID-SEC-2026-0965 IBM Maximo Asset Management: Schwachstelle ermöglicht Denial of Service BSI CERT-Bund (WID) · Apr 6, 2026