CVE-2026-76169: fastify vulnerable to authentication bypass via malformed URLs reaching encapsulated not-found handlers
Fastify routes a malformed URL under one plugin prefix to the custom not-found handler of a different sibling plugin, invoking the handler registered last and skipping the preHandler declared in its setNotFoundHandler(). When the request method has no route in the main router, a malformed request target reaches Fastify’s internal not-found router before URL decoding and is dispatched through a single shared handler pointer, regardless of prefix and without the normal request lifecycle. An unauthenticated request to a public prefix can therefore reach an authentication-protected not-found handler registered under a different prefix and receive its full response, breaking prefix encapsulation and bypassing the authentication hook. Applications whose private or tenant fallbacks return protected data from a not-found handler are affected.
References
- cna.openjsf.org/security-advisories.html
- github.com/advisories/GHSA-p68q-wchp-6fh7
- github.com/fastify/fastify/commit/93c239a380f3f2778bb7565fcdf777e91cfe1fbc
- github.com/fastify/fastify/releases/tag/v5.12.2
- github.com/fastify/fastify/security/advisories/GHSA-p68q-wchp-6fh7
- nvd.nist.gov/vuln/detail/CVE-2026-76169
Code Behaviors & Features
Detect and mitigate CVE-2026-76169 with GitLab Dependency Scanning
Secure your software supply chain by verifying that all open source dependencies used in your projects contain no disclosed vulnerabilities. Dependency Scanning using SBOM also detects vulnerabilities from proprietary advisories that this site does not include. Learn more about Dependency Scanning using SBOM →