CVE-2026-112712 PUBLISHED

@fastify/middie vulnerable to path-scoped middleware bypass via scope prefix mismatch

Assigner: openjs
Reserved: 19.10.2026 Published: 20.10.2026 Updated: 20.10.2026

@fastify/middie is the Express-style middleware engine for Fastify. In versions from 9.0.0 through 9.3.5, the use() function joined a path-scoped middleware's mount path to the plugin scope prefix in a way that could diverge from the path Fastify's router serves, most often when the scope prefix ended in a slash, and also for array mount paths and for mount paths written without a leading slash. When the two paths disagreed, the middleware was silently skipped while the route handler still ran, so path-scoped middleware such as authentication, authorization, or rate limiting could be bypassed by a single unauthenticated request. The issue is fixed in @fastify/middie 9.3.6, and users should upgrade to 9.3.6 or later. As a workaround, enforce authorization in a Fastify hook such as preHandler that runs after the router has resolved the request.

Metrics

CVSS Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
CVSS Score: 9.1

Product Status

Vendor @fastify/middie
Product @fastify/middie
Versions Default: unaffected
  • affected from 9.0.0 to 9.3.6 (excl.)
  • Version 9.3.6 is unaffected

Credits

  • zachariah-mithani reporter
  • mcollina remediation developer
  • UlisesGascon remediation developer

References

Problem Types

  • CWE-436: Interpretation Conflict CWE