Detectar riesgo de SSRF (Server-Side Request Forgery) en una herramienta
detect_ssrf_riskAnaliza el código fuente de una herramienta MCP que hace una petición HTTP a una URL (traer una página, llamar un webhook, un scraper) en busca de señales de riesgo de SSRF: una llamada HTTP (fetch, axios, requests, urlopen, curl_exec, y equivalentes) cuya URL depende de una variable/entrada externa sin ninguna validación reconocible cerca (lista de hosts permitidos, chequeo de IP privada, o una librería conocida contra SSRF), una referencia directa a una IP privada/loopback o a un endpoint de metadata de la nube (AWS/GCP/Azure — el patrón real usado para robar credenciales temporales de la nube) dentro de la propia llamada, verificación de certificado TLS desactivada junto con una petición externa, seguir redirecciones automáticamente sin revalidar el destino final, y ausencia de restricción de esquema (http/https) aunque sí se valide la IP. Motivada por un censo real de 2026 sobre 9.695 servidores MCP escaneados: SSRF fue el 8.5% de los 4.982 problemas encontrados, dentro de un 60% de servidores con algún problema de seguridad. Es un análisis estático por patrones de texto (no ejecuta el código) — mismo enfoque que detect_poisoned_tool_descriptions. Requiere una llave de acceso válida (usos gratis o créditos) — ver POST /crear-llave.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"codigo": "<codigo>"
},
"name": "detect_ssrf_risk"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| codigo | Yes | El código fuente de la función/herramienta que hace la petición HTTP, en texto plano. | |
| lenguaje | No | Solo informativo (ej. "javascript", "python") — la detección ya cubre varios lenguajes a la vez, este campo no cambia el resultado. |