PT-2026-29424 · Fastmcp · Fastmcp
Jaynornj
+1
·
Publicado
2026-03-31
·
Atualizado
2026-06-03
·
CVE-2026-32871
CVSS v3.1
10
Crítica
| Vetor | AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
Nome do Software Vulnerável e Versões Afetadas
FastMCP versões (versões afetadas não especificadas)
Descrição
O
OpenAPIProvider no FastMCP é suscetível a uma vulnerabilidade de Server-Side Request Forgery (SSRF) autenticada devido à codificação de URL insuficiente de parâmetros de caminho. Especificamente, o método build url() substitui diretamente os valores dos parâmetros nos modelos de URL sem codificação adequada, e urllib.parse.urljoin() interpreta sequências ../ como travessia de diretório. Isso permite que um invasor que controla um parâmetro de caminho ignore o prefixo de API pretendido e acesse endpoints de backend arbitrários, herdando os cabeçalhos de autorização do provedor MCP. A vulnerabilidade reside no arquivo fastmcp/utilities/openapi/director.py. A função vulnerável é build url(). O endpoint da API é construído usando um modelo de caminho como /api/v1/users/{user id}. O parâmetro vulnerável é user id. Uma prova de conceito demonstra o acesso a um endpoint administrativo (/admin/delete-all) criando um payload malicioso contendo ../../../admin/delete-all? como o valor para o parâmetro user id. Isso permite acesso não autorizado a APIs internas, possível escalonamento de privilégios e exfiltração de dados.Recomendações
Codifique em URL todos os valores de parâmetros de caminho antes da substituição para evitar que caracteres reservados sejam interpretados como delimitadores de caminho. O método
build url() atualizado deve usar urllib.parse.quote(str(param value), safe="") para codificar com segurança os valores dos parâmetros.Exploit
Correção
SSRF
Encontrou algum problema na descrição? Tem algo a acrescentar? Fique à vontade para nos escrever 👾
Enumeração de Fraquezas
Identificadores relacionados
Produtos afetados
Fastmcp