Description
@fastify/static up to and including version 10.1.0 fails to reject dot-dot path segments in request pathnames before the file-resolution stage. This is a bypass of the earlier fix for CVE-2026-6414, which only covered encoded forward slashes. Because the underlying send library normalizes dot segments before applying its own path-traversal guard, an unauthenticated attacker can bypass any route-scoped middleware and read files inside the static root that live under the guarded URL prefix. The bypass does not allow access outside the configured static root by itself, it defeats route-guard filtering only. The issue is patched in @fastify/static 10.1.1.
Published: 2026-07-23
Score: 7.5 High
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

@fastify/static, versions up to 10.1.0, does not reject dot-dot path segments before the file‑resolution stage, allowing an attacker to bypass route‑scoped middleware and disclose files located under the static root. The flaw is a repetition of a previously fixed path‑traversal issue, but the current bug also affects unencoded "../" segments. The underlying send library normalizes dot segments before applying its own guard, which means the request reaches the router with a path that can be interpreted relative to the static directory, leading to unintended file disclosure. This weakness is documented as CWE‑22 – Path Traversal.

Affected Systems

The issue impacts the @fastify/static package used in Node.js web applications. All releases through 10.1.0 are affected; the vulnerability was addressed in version 10.1.1. No other vendors or products are listed.

Risk and Exploitability

The CVSS score of 7.5 reflects significant confidentiality impact, while the EPSS < 1% indicates a low but nonzero likelihood of exploitation in the wild. The vulnerability is not present in CISA’s KEV catalog. An unauthenticated attacker can craft a request with "../" segments to traverse within the static root, bypassing route guards that rely on path normalization. Because the flaw does not let the attacker escape the configured root, the damage is limited to files already exposed through the static service, but sensitive application resources could still be revealed.

Generated by OpenCVE AI on August 3, 2026 at 22:59 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade @fastify/static to version 10.1.1 or later. This removes the path‑traversal handling bug.
  • Ensure that the static directory does not contain sensitive files that could be disclosed. Move such files outside the static root or rename them.
  • If upgrading is delayed, consider temporarily disabling or removing the vulnerable @fastify/static middleware while protecting the application with additional route guards or a reverse proxy that strips dot‑segments before request dispatch.

Generated by OpenCVE AI on August 3, 2026 at 22:59 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-83w8-p2f5-377r @fastify/static vulnerable to route guard bypass via path traversal
History

Mon, 27 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
First Time appeared Fastify
Fastify fastify-static
Vendors & Products Fastify
Fastify fastify-static

Thu, 23 Jul 2026 03:45:00 +0000

Type Values Removed Values Added
Description @fastify/static up to and including version 10.1.0 fails to reject dot-dot path segments in request pathnames before the file-resolution stage. This is a bypass of the earlier fix for CVE-2026-6414, which only covered encoded forward slashes. Because the underlying send library normalizes dot segments before applying its own path-traversal guard, an unauthenticated attacker can bypass any route-scoped middleware and read files inside the static root that live under the guarded URL prefix. The bypass does not allow access outside the configured static root by itself, it defeats route-guard filtering only. The issue is patched in @fastify/static 10.1.1.
Title @fastify/static vulnerable to route guard bypass via path traversal
Weaknesses CWE-22
References
Metrics cvssV3_1

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


Subscriptions

Fastify Fastify-static
cve-icon MITRE

Status: PUBLISHED

Assigner: openjs

Published:

Updated: 2026-07-23T14:14:46.933Z

Reserved: 2026-07-08T15:21:49.362Z

Link: CVE-2026-15074

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Analyzed

Published: 2026-07-23T04:16:31.980

Modified: 2026-07-28T17:02:14.703

Link: CVE-2026-15074

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T23:00:04Z

Weaknesses
  • CWE-22

    Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')