CVE-2026-14198
CVE-2026-14198 is a critical-severity vulnerability in Fastify Fastify/middie with a CVSS 3.x base score of 9.1. It is not currently listed as actively exploited by CISA, and its EPSS exploit-prediction score is low. The underlying weakness is classified as CWE-436.
Key facts
- Severity: Critical (CVSS 3.x base score 9.1)
- EPSS exploit prediction: 0% (22nd percentile)
- Actively exploited: Not listed in CISA KEV
- Weakness: CWE-436
- Affected product: Fastify Fastify/middie
- Published:
- Last modified:
Description
@fastify/middie versions 9.1.0 through 9.3.2 decode the encoded slash %2F inside path parameter values before matching middleware paths, while Fastify's underlying router preserves the encoding during route lookup. The two layers disagree on the canonical request path, so the middleware fails to match a URL that the route handler does match. When middleware is used for authentication, authorization, rate limiting, or auditing on parameterized paths, an attacker can reach the protected handler by sending a single crafted URL with an encoded slash in the parameter position. The bypass is HTTP method agnostic and requires no authentication or special preconditions. Patches: upgrade to @fastify/middie 9.3.3. Workarounds: avoid parameterized middleware paths for security decisions, or enforce authentication at the route handler or via a Fastify hook that runs after the router has resolved the request.
Frequently asked questions
- What is CVE-2026-14198?
- @fastify/middie versions 9.1.0 through 9.3.2 decode the encoded slash %2F inside path parameter values before matching middleware paths, while Fastify's underlying router preserves the encoding during route lookup. The two layers disagree on the canonical request path, so the middleware fails to match a URL that the route handler does match. When middleware is used for authentication, authorization, rate limiting, or auditing on parameterized paths, an attacker can reach the protected handler by sending a single crafted URL with an encoded slash in the parameter position. The bypass is HTTP method agnostic and requires no authentication or special preconditions. Patches: upgrade to @fastify/middie 9.3.3. Workarounds: avoid parameterized middleware paths for security decisions, or enforce authentication at the route handler or via a Fastify hook that runs after the router has resolved the request.
- How severe is CVE-2026-14198?
- CVE-2026-14198 has a CVSS 3.x base score of 9.1, rated critical severity. It is exploitable over network with low attack complexity, requires no privileges and no user interaction. Impact on confidentiality is high, integrity high, and availability none.
- Is CVE-2026-14198 being actively exploited?
- It is not currently listed in CISA's KEV catalog. Its EPSS exploit-prediction score is 0% (22nd percentile), an estimate of the probability of exploitation in the next 30 days.
- What products are affected by CVE-2026-14198?
- CVE-2026-14198 affects Fastify Fastify/middie. See the affected-products list for the exact vulnerable versions.
- How do I fix CVE-2026-14198?
- Review the linked vendor and NVD advisories for patched versions and mitigations, then upgrade or apply the recommended workaround. Given its critical severity, prioritise patching exposed systems.
- When was CVE-2026-14198 published?
- CVE-2026-14198 was published on 2026-07-01 and last updated on 2026-07-02.
References
- https://cna.openjsf.org/security-advisories.html
- https://github.com/fastify/middie/security/advisories/GHSA-2v46-jxjm-7q3v
Affected products (1)
- cpe:2.3:a:fastify:fastify\/middie:*:*:*:*:*:node.js:*:*
More vulnerabilities in Fastify Fastify/middie
- CVE-2026-6270 — Critical (CVSS 9.1): @fastify/middie versions 9.3.1 and earlier do not register inherited middleware directly on child plugin engine…
- CVE-2026-2880 — Critical (CVSS 9.1): A vulnerability in @fastify/middie versions < 9.2.0 can result in authentication/authorization bypass when using…
- CVE-2026-22031 — High (CVSS 8.4): @fastify/middie is the plugin that adds middleware support on steroids to Fastify. A security vulnerability exists in…
- CVE-2026-14181 — High (CVSS 7.5): @fastify/middie versions 9.1.0 through 9.3.2 fail to guard the URL normalization step used by the standalone engine…
- CVE-2026-33804 — High (CVSS 7.4): @fastify/middie versions 9.3.1 and earlier are vulnerable to middleware bypass when the deprecated Fastify…
All CVEs affecting Fastify Fastify/middie →
Other CWE-436 vulnerabilities
- CVE-2023-24813 — Critical (CVSS 10.0): Dompdf is an HTML to PDF converter written in php. Due to the difference in the attribute parser of Dompdf and…
- CVE-2026-8034 — Critical (CVSS 9.8): A server-side request forgery (SSRF) vulnerability was identified in the GitHub Enterprise Server notebook viewer that…
- CVE-2021-45327 — Critical (CVSS 9.8): Gitea before 1.11.2 is affected by Trusting HTTP Permission Methods on the Server Side when referencing the vulnerable…
- CVE-2020-10180 — Critical (CVSS 9.8): The ESET AV parsing engine allows virus-detection bypass via a crafted BZ2 Checksum field in an archive. This affects…
- CVE-2019-19589 — Critical (CVSS 9.8): The Lever PDF Embedder plugin 4.4 for WordPress does not block the distribution of polyglot PDF documents that are…
- CVE-2026-41248 — Critical (CVSS 9.1): Clerk JavaScript is the official JavaScript repository for Clerk authentication. createRouteMatcher in @clerk/nextjs,…