Media

Http4s: ResourceService and Webjar Service path escape via percent-encoded separators

  • Publicada: 15.09.2026
  • Actualizado: 11.10.2026 13:20

The static content handlers ResourceService and WebjarService URL decode each path segment and then reject only segments that are exactly "", ".", or "..". A percent-encoded separator (%2F) lets an attacker smuggle a ../ segment past that filter and escape the configured base, reading resources that should not be public.

On Windows, a similar attack exists with (%5C).

Impact

Disclosure of classpath or webjar resources outside the configured base.

Preconditions

  • Application uses ResourceService (with a non-root base path) or WebjarService
  • At least one classpath entry is served from a directory (e.g. sbt run, exploded .war)
  • Backend forwards %2F/%5C without normalizing (e.g., Ember, Blaze)

Fixes

The patch rejects any decoded path segment containing / (%2F) or \ (%5C) with a 400 Bad Request in ResourceService and WebjarService.

FileService was not exploitable, but the same guards are applied for consistency and to remove its reliance on path normalization.

Workarounds

  • Deploy as a fat jar, with no filesystem directories on the classpath.
  • Front the service with a proxy that rejects/normalizes %2F and %5C in the request path.

Software afectado

Haz clic en una tecnología para ver todas sus vulnerabilidades.

PlataformaPaqueteVersiones vulnerablesCorregida en
Java / Kotlin (Maven) org.http4s:http4s-server_2.12 < 0.23.35 0.23.35
Java / Kotlin (Maven) org.http4s:http4s-server_2.13 < 0.23.35, >= 1.0.0-M1, < 1.0.0-M47 0.23.35, 1.0.0-M47
Java / Kotlin (Maven) org.http4s:http4s-server_3 < 0.23.35, >= 1.0.0-M1, < 1.0.0-M47 0.23.35, 1.0.0-M47

Referencias

Puntuación CVSS 5.9/10
Vector CVSS
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Debilidad (CWE)
CWE-22
Plataforma
Java / Kotlin (Maven)
Paquete
org.http4s:http4s-server_2.12, org.http4s:http4s-server_2.13, org.http4s:http4s-server_3
Publicada
15.09.2026
Actualizado
11.10.2026 13:20

Fuentes y licencias

OSV / GitHub Advisory Database - GHSA-crq5-92j2-j7wv - CC BY 4.0

Historial de vulnerabilidades: org.http4s:http4s-server_2.12

Todas las vulnerabilidades publicadas de este paquete (Java / Kotlin (Maven)), de la más reciente a la más antigua. Muestra si es un fallo aislado o un paquete que hay que vigilar.

Entradas en total
4
Primera → última
03.2020 09.2026
Sin corrección
0
Explotada en ataques
0

Distribución por gravedad

  • Crítica 2
  • Alta 1
  • Media 1

Divulgaciones por año

  1. 2020: 1
  2. 2021: 2
  3. 2022: 0
  4. 2023: 0
  5. 2024: 0
  6. 2025: 0
  7. 2026: 1
  1. Http4s: ResourceService and Webjar Service path escape via percent-encoded separators esta entrada
    Media · 5.9 CVE-2026-69201 < 0.23.35 0.23.35
  2. Alta · 8.7 CVE-2021-41084 < 0.21.29, >= 0.22.0, < 0.22.5, >= 0.23.0, < 0.23.4 0.21.29, 0.22.5, 0.23.4
  3. Crítica · 9.1 CVE-2021-39185 < 0.21.27, >= 0.22.0, < 0.22.3, >= 0.23.0, < 0.23.2 0.21.27, 0.22.3, 0.23.2
  4. Crítica · 7.6 CVE-2020-5280 < 0.18.26, >= 0.19.0, < 0.20.20, >= 0.21.0, < 0.21.2 0.18.26, 0.20.20, 0.21.2

Identifica las vulnerabilidades de tu aplicación

Con la integración de DockRay y el inventario de software activado, DockRay compara las versiones notificadas de los componentes con las vulnerabilidades conocidas y avisa de las coincidencias confirmadas. La cobertura depende de la tecnología compatible y de los avisos disponibles.

Conectar tu aplicación
Newsletter DockRay

La seguridad de tus aplicaciones en tu correo

Vulnerabilidades importantes, recomendaciones concretas y consejos prácticos para tus aplicaciones. Elige tus tecnologías y sigue lo que importa para tu proyecto.

  • Un resumen diario de nuevas vulnerabilidades, también las críticas.
  • Avisos sobre actualizaciones importantes.
  • Consejos prácticos sobre seguridad y monitorización de aplicaciones.

Déjalo vacío para recibir avisos de todas las tecnologías.

Suscripción gratuita. Date de baja con un clic en cualquier correo.