Summary
Path traversal in Fastify (CVE-2026-15631). Confidential information can be exposed externally. Exploitable via prefix. Mitigation: upgrade to >= 11.6.0 or later.
Original description
The description as published by the source.
Impact: @fastify/http-proxy versions from 9.4.0 up to and including 11.5.0 fail to validate the resolved WebSocket destination path against the configured rewrite prefix. The WebSocket routing path in WebSocketProxy.findUpstream resolves the destination via the WHATWG URL constructor, which collapses dot segments, so a crafted upgrade request with path traversal sequences can escape the rewrite prefix and reach upstream endpoints that were not meant to be exposed by the proxy. This is a variant of CVE-2021-21322 in a code path that never went through the HTTP fix in fastify/reply-from. Exploitation requires a non-normalizing WebSocket client, since browsers and the ws package normalize the request path before sending, but raw HTTP clients or downstream proxies that forward the request target unchanged make the attack reachable in production topologies.
Patches: upgrade to @fastify/http-proxy 11.6.0.
Workarounds: none.
Source: NIST National Vulnerability Database NVD
AI summary
Written by an external AI model and may contain mistakes. Check the original description and references below before acting on it.
Fastifyのバージョン9.4.0から11.5.0において、WebSocketの宛先パスが適切に検証されず、作成されたパス・トラバーサルのシーケンスによって意図されていない上位のエンドポイントにアクセス可能な脆弱性があります。これは、プロキシによって公開されるべきでないエンドポイントに到達可能にします。この問題は、Fastifyのバージョン11.6.0にアップグレードすることで修正されています。
Fastifyのバージョン9.4.0から11.5.0において、WebSocketの宛先パスが適切に検証されない脆弱性。
@fastify/http-proxyのバージョン9.4.0から11.5.0
意図しない上位エンドポイントにアクセス可能となるセキュリティリスク。
@fastify/http-proxyをバージョン11.6.0にアップグレードする。
暫定回避策はなし。
特定のWebSocketクライアントまたはダウングレードプロキシを用いて検証可能。
References
- patch cna.openjsf.org
- patch github.com