Description
@fastify/express is a Fastify plugin that runs Express middleware inside Fastify. In versions 4.0.5 through 4.0.8, when Fastify runs with the non-default ignoreDuplicateSlashes option enabled, the plugin matches path-scoped Express middleware against a URL whose duplicate-slash normalization has also collapsed the separator after an absolute-form request target's scheme, so Fastify's router resolves the request to the scoped path and runs the handler while the Express layer no longer sees that path. As a result, a request using an absolute-form target can reach a handler on a scoped route such as an admin path while the middleware for authentication, authorization, or rate limiting is skipped. An unauthenticated attacker needs only the non-default ignoreDuplicateSlashes option to be enabled. The issue is fixed in @fastify/express 4.0.9, and users should upgrade to 4.0.9 or later. As a workaround, enforce authentication in a Fastify hook such as preHandler that runs after the router resolves the request, or leave ignoreDuplicateSlashes at its default.
Published: 2026-10-27
Score: 9.1 Critical
EPSS: n/a
KEV: No
Impact: Unauthorized privileged route access
Action: Immediate Patch
AI Analysis

Impact

@fastify/express is a Fastify plugin that allows Express middleware to run inside Fastify. Between versions 4.0.5 and 4.0.8, when Fastify is configured with ignoreDuplicateSlashes set to true, the plugin compares path‑scoped Express middleware against a request URL whose duplicate slashes are collapsed after the scheme. This causes Fastify’s router to resolve the request to a scoped path and execute the handler, but the Express layer no longer sees that path. As a result, requests that use an absolute‑form target can reach handlers on scoped routes—such as an admin path—while any Express middleware for authentication, authorization, or rate‑limiting is bypassed.

Affected Systems

The vulnerability exists in the @fastify/express package, specifically versions 4.0.5 through 4.0.8. Upgrading to version 4.0.9 or later resolves the issue. No other vendors or products are listed as affected.

Risk and Exploitability

The CVSS score of 9.1 indicates a critical severity. The EPSS score is not available, and the vulnerability is not listed in CISA’s KEV catalog. Exploitation requires that the application be running with the non‑default ignoreDuplicateSlashes option enabled and that a request use an absolute‑form target. The likely attack path is a remote HTTP request from an external client. Because the flaw is configuration‑dependent, the likelihood of exploitation in the wild is moderate.

Generated by OpenCVE AI on October 27, 2026 at 13:24 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Upgrade @fastify/express to version 4.0.9 or later, as this contains the official fix.
  • If an upgrade is not possible, set Fastify’s ignoreDuplicateSlashes option to its default value (false) to prevent the duplicate‑slash normalization that triggers the bypass.
  • Add a Fastify preHandler hook that performs authentication, authorization, or rate limiting before the request is handled, ensuring that any bypass of Express middleware does not allow execution of privileged handlers.

Generated by OpenCVE AI on October 27, 2026 at 13:24 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Tue, 27 Oct 2026 11:45:00 +0000

Type Values Removed Values Added
Description @fastify/express is a Fastify plugin that runs Express middleware inside Fastify. In versions 4.0.5 through 4.0.8, when Fastify runs with the non-default ignoreDuplicateSlashes option enabled, the plugin matches path-scoped Express middleware against a URL whose duplicate-slash normalization has also collapsed the separator after an absolute-form request target's scheme, so Fastify's router resolves the request to the scoped path and runs the handler while the Express layer no longer sees that path. As a result, a request using an absolute-form target can reach a handler on a scoped route such as an admin path while the middleware for authentication, authorization, or rate limiting is skipped. An unauthenticated attacker needs only the non-default ignoreDuplicateSlashes option to be enabled. The issue is fixed in @fastify/express 4.0.9, and users should upgrade to 4.0.9 or later. As a workaround, enforce authentication in a Fastify hook such as preHandler that runs after the router resolves the request, or leave ignoreDuplicateSlashes at its default.
Title @fastify/express vulnerable to path-scoped middleware bypass via absolute-form request targets
Weaknesses CWE-436
References
Metrics cvssV3_1

{'score': 9.1, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N'}


Subscriptions

No data.

cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-10-27T11:27:59.364Z

Reserved: 2026-10-19T14:59:03.468Z

Link: CVE-2026-112362

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-27T12:17:04.970

Modified: 2026-10-27T12:17:04.970

Link: CVE-2026-112362

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-27T13:30:04Z

Weaknesses