CVE-2026-69201 Http4s: ResourceService and Webjar Service path escape via percent-encoded separators
Attackers can access classpath resources outside the configured base via percent-encoded separators in Http4s ResourceService and WebjarService.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-69201?
CVE-2026-69201 is a medium-severity path traversal vulnerability in http4s, published on 15 Sep 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
Http4s is a Scala interface for HTTP services. Prior to 0.23.35 and 1.0.0-M47, ResourceService and WebjarService decode each URL path segment but reject only segments exactly equal to an empty string, a dot, or two dots. A request containing percent-encoded slash or backslash separators can turn an accepted segment into a parent-directory traversal after decoding, allowing access to classpath or WebJar resources outside the configured base when a directory-backed classpath is served and the backend preserves the encoded separator. The patch rejects decoded segments containing slash or backslash in ResourceService and WebjarService, and applies the same guard to the non-exploitable FileService for consistency. This issue is fixed in versions 0.23.35 and 1.0.0-M47.
Weakness: CWE-22
Which versions are affected by CVE-2026-69201?
10 open source packages ship an affected version, including org.http4s:http4s-server_2.13, org.http4s:http4s-server_2.12 and org.http4s:http4s-server_3.
| Package | Affected | Fixed in |
|---|---|---|
org.http4s:http4s-server_2.13 Maven | All versions | 0.23.35 |
org.http4s:http4s-server_2.13 Maven | All versions | 0.23.35 |
org.http4s:http4s-server_2.13 Maven | From 1.0.0-M1 | 1.0.0-M47 |
org.http4s:http4s-server_2.13 Maven | From 1.0.0-M1 | 1.0.0-M47 |
org.http4s:http4s-server_2.12 Maven | All versions | 0.23.35 |
org.http4s:http4s-server_2.12 Maven | All versions | 0.23.35 |
4 more packages
org.http4s:http4s-server_3 Maven | All versions | 0.23.35 |
org.http4s:http4s-server_3 Maven | All versions | 0.23.35 |
org.http4s:http4s-server_3 Maven | From 1.0.0-M1 | 1.0.0-M47 |
org.http4s:http4s-server_3 Maven | From 1.0.0-M1 | 1.0.0-M47 |
How do I fix CVE-2026-69201?
Upgrade org.http4s:http4s-server_2.13 to a fixed version for your release line: 0.23.35 or 1.0.0-M47.
Upgrade, and resolve every user-supplied path against an allowed base folder before opening it. More about Path traversal.
Is CVE-2026-69201 being exploited?
There is no known exploitation of CVE-2026-69201 in the wild and no public exploit code.
Sources
Also known as GHSA-crq5-92j2-j7wv.