Saltar al contenido
PhiloCyber logo
Índice de la guía

Protocolo MCP e inventario autorizado

Parte
06
Estado
Revisado
Edición
v2 / 01.09.2026
Tiempo estimado de lectura
3 min

Edición del 1 de septiembre de 2026

Las fuentes conservan sus fechas de consulta. El laboratorio identifica la simulación determinística y la integración con modelo por separado.

Superficie: MCP (Model Context Protocol) ATLAS: AML.T0084 (Discover AI Agent Configuration), AML.T0084.001 (Tool Definitions) OWASP: MCP01:2025 Token Mismanagement & Secret Exposure, MCP07:2025 Insufficient Authentication & Authorization, MCP08:2025 Lack of Audit & Telemetry (v0.1 beta) Riesgo: Medio-Alto

Objetivo defensivo

Dos identidades de prueba ven catálogos distintos en PhiloCorp. Antes de marcar una anomalía, compará sus permisos: la diferencia puede ser justamente el control que querías encontrar.

Validar que el inventario de servidores y herramientas MCP de PhiloCorp aplique la identidad y autorización que correspondan al transporte, mínimo privilegio y trazabilidad. Las descripciones, annotations y resultados de tools son datos no confiables y nunca conceden autorización.

Ojo al enumerar: desde MCP 2026-07-28 el protocolo es stateless y tools/list puede variar según la autorización presentada en cada request (por ejemplo, devolviendo solo las tools que los scopes del caller permiten). Un catálogo distinto entre dos cuentas de prueba puede ser comportamiento correcto de mínimo privilegio, no evasión: lo que hay que verificar es que la diferencia se explica por la autorización documentada. El listado no es una frontera de acceso: una invocación construida directamente también debe pasar por autorización, esté o no visible en el catálogo de ese cliente.

En mensajes MCP 2026-07-28, verificá los campos requeridos de params._meta, incluidos versión de protocolo y capacidades del cliente. Los JSON-RPC abreviados de documentación no son necesariamente solicitudes completas. El bloque siguiente es una ficha de inventario, no un mensaje del protocolo.

Laboratorio seguro

Acción permitida: consultar únicamente el catálogo de philocorp-demo, con cuenta de prueba, scope de solo lectura y un marcador de prueba. Acción prohibida: leer archivos de configuración reales, historiales, copias de respaldo, tokens, metadatos de infraestructura o recursos fuera del laboratorio.

inventory_review:
  server: philocorp-demo-mcp
  fields: [tool_name, declared_scope, effect, manifest_hash]
  include_values: false
  expected_marker: PHILO_TEST_06_MCP_INVENTORY
  1. Confirmá versión del protocolo y transporte. Para HTTP protegido, registrá identidad del sujeto y scopes; para stdio, registrá identidad del proceso, origen del servidor y permisos efectivos sin copiar credenciales.
  2. Compará el catálogo de prueba con el manifiesto aprobado, sin invocar tools de cambio de estado.
  3. Repetí el listado con la segunda identidad de prueba y compará el catálogo esperado para sus permisos. Revisá todas las páginas si la respuesta usa paginación, sin ampliar el inventario aprobado.
  4. Registrá tool, efecto declarado, decisión de autorización, correlation ID y hash de manifiesto. Verificá que el evento pueda atribuirse al sujeto o proceso de prueba sin registrar el token.
  5. Presentá una solicitud directa a una tool de laboratorio excluida para esa identidad y comprobá la denegación antes del efecto. Una tool ausente del listado puede seguir existiendo en el servidor; lo que importa es que la autorización de la operación no dependa de ocultar su nombre.

policy_denied es una etiqueta local para el registro de prueba, no un código de error estándar de MCP. Conservá también la respuesta real del transporte y el motivo interno sanitizado.

Evidencia: manifiesto aprobado, catálogos por identidad, registro de denegación y correlation ID.

Condiciones de detención: secreto o dato no sintético visible, recurso fuera de philocorp-demo, cambio de estado, red no aprobada, o diferencia de manifiesto.

Remediación

Cuando el servidor HTTP esté protegido, exigí autorización por request con OAuth 2.1, tokens con audiencia propia del servidor (RFC 8707), scopes acotados y descubrimiento vía Protected Resource Metadata (RFC 9728). Para stdio, no apliques el flujo OAuth de MCP: aislá el proceso, limitá las credenciales del entorno y controlá el origen del binario. En todos los transportes, aplicá revisión de manifiestos y mínimo privilegio por tool. Si el servidor usa MCP 2025-11-25 o anterior, si usa sesiones: identificadores no predecibles, ciclo de vida y vinculación al sujeto autorizado. Nunca aceptes tokens emitidos para otro servicio (token passthrough está explícitamente prohibido por la especificación).

Protocolo MCP e inventario autorizado | PhiloCyber