CVE-2026-32871 FastMCP OpenAPI Provider has an SSRF & Path Traversal Vulnerability
Attackers can exploit path traversal in URL construction to perform Server-Side Request Forgery and access internal backend APIs.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Over the internet
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2026-32871?
CVE-2026-32871 is a critical server-side request forgery vulnerability in PrefectHQ fastmcp, published on 2 Apr 2026. An attacker can exploit it over the internet without logging in, with no action from the victim.
Official description
FastMCP is a Pythonic way to build MCP servers and clients. Prior to version 3.2.0, the OpenAPIProvider in FastMCP exposes internal APIs to MCP clients by parsing OpenAPI specifications. The RequestDirector class is responsible for constructing HTTP requests to the backend service. A vulnerability exists in the _build_url() method. When an OpenAPI operation defines path parameters (e.g., /api/v1/users/{user_id}), the system directly substitutes parameter values into the URL template string without URL-encoding. Subsequently, urllib.parse.urljoin() resolves the final URL. Since urljoin() interprets ../ sequences as directory traversal, an attacker controlling a path parameter can perform path traversal attacks to escape the intended API prefix and access arbitrary backend endpoints. This results in authenticated SSRF, as requests are sent with the authorization headers configured in the MCP provider. This issue has been patched in version 3.2.0.
Weakness: CWE-918
Which versions are affected by CVE-2026-32871?
3 open source packages ship an affected version, including fastmcp. It affects 1 product.
| Package | Affected | Fixed in |
|---|---|---|
fastmcp PyPI | All versions | 3.2.0 |
fastmcp PyPI | All versions | 3.2.0 |
fastmcp PyPI | All versions | 3.2.0 |
Products include Jlowin Fastmcp.
How do I fix CVE-2026-32871?
Upgrade fastmcp to 3.2.0 or later.
Upgrade, and send outbound requests through an allow-list that blocks internal addresses. More about Server-side request forgery.
Is CVE-2026-32871 being exploited?
It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-32871 exists.
Other vulnerabilities in PrefectHQ fastmcp
- CVE-2026-27124 FastMCP: Missing Consent Verification in OAuth Proxy Callback Facilitates Confused Deputy Vulnerabilities
- CVE-2025-69196 FastMCP OAuth Proxy token reuse across MCP servers
- CVE-2025-64340 FastMCP has a Command Injection vulnerability - Gemini CLI
- CVE-2025-62801 FastMCP vulnerable to windows command injection in FastMCP Cursor installer via server_name
- CVE-2025-62800 FastMCP vulnerable to reflected XSS in client's callback page
Sources
Also known as CLSA-2026-1788514996, ECHO-bd91-e96b-0efc, GHSA-vv7q-7jx5-f767, PYSEC-2026-338, ROOT-APP-PYPI-CVE-2026-32871.