Modelo de Amenaza de Puerta de Decisión
Resumen
Decision Gate es un plano de control determinista y reproducible para la divulgación controlada y el avance de etapas. Evalúa condiciones respaldadas por evidencia, emite decisiones auditables y admite verificación fuera de línea a través de runpacks. No ejecuta conversaciones de agentes.
La Puerta de Decisión está compuesta por:
- Control plane core (scenario engine, evidence evaluation, run state, runpack Núcleo del plano de control (motor de escenarios, evaluación de evidencia, estado de ejecución, constructor/verificador de runpack).
- Servidor MCP (JSON-RPC sobre stdio/HTTP/SSE) y herramientas de línea de comandos.
- Federación de proveedores (proveedores integrados más proveedores MCP externos).
- Capa de despacho/corretaje (resolución y entrega de carga útil).
- Storage layers (SQLite or in-memory run state + schema registry, optional Capas de almacenamiento (SQLite o estado de ejecución en memoria + registro de esquemas, almacenamiento de objetos opcional para runpacks).
Documentación relacionada
- Visión general del repositorio y postura de seguridad:
README.mdySECURITY.md. - Orientación operativa y controles: Guía de seguridad.
- Standards and investigation workflow:
Docs/standards/codebase_engineering_standards.md, Normas y flujo de trabajo de investigación:Docs/standards/codebase_engineering_standards.md,Docs/standards/agent_investigation_guide.md. - Architecture references:
Docs/architecture/decision_gate_auth_disclosure_architecture.md,Docs/architecture/decision_gate_evidence_trust_anchor_architecture.md,Docs/architecture/decision_gate_runpack_architecture.md,Docs/architecture/decision_gate_namespace_registry_rbac_architecture.md, Referencias de arquitectura:Docs/architecture/decision_gate_auth_disclosure_architecture.md,Docs/architecture/decision_gate_evidence_trust_anchor_architecture.md,Docs/architecture/decision_gate_runpack_architecture.md,Docs/architecture/decision_gate_namespace_registry_rbac_architecture.md,Docs/architecture/decision_gate_provider_capability_architecture.md. - Component READMEs:
crates/decision-gate-core/README.md,crates/decision-gate-mcp/README.md, READMEs de componentes:crates/decision-gate-core/README.md,crates/decision-gate-mcp/README.md,crates/decision-gate-broker/README.md,crates/decision-gate-providers/README.md.
Objetivos de Seguridad
- Evaluación determinista sin mutación oculta del estado.
- Evidence-backed disclosure only; fail closed on missing, invalid, or Divulgación respaldada por evidencia únicamente; falla cerrada ante evidencia faltante, inválida o no verificable.
- Auditabilidad y detección de manipulación para el estado de ejecución y runpacks.
- Exposición de datos minimizada; por defecto a resúmenes seguros y evidencia redactada.
- Clear trust boundaries between control plane, providers, dispatch targets, Límites de confianza claros entre el plano de control, proveedores, objetivos de despacho y almacenamiento.
- Acceso a herramientas y operaciones de registro con el principio de menor privilegio y autorización explícita.
- Uso de recursos limitados (tamaño de la solicitud, tamaño de la respuesta del proveedor, límites de tasa).
Non-Goals / Fuera de Alcance
- Proteger la confidencialidad después de que los datos se divulgan a sistemas posteriores.
- Proteger contra el compromiso total del host o del núcleo sin controles externos.
- Asegurando proveedores externos de MCP, sumideros aguas abajo o aplicaciones cliente.
- Atestación de hardware, garantías de enclave seguro o servicios de custodia de claves.
- Firma criptográfica de runpacks o registros de esquema (más allá de los campos de metadatos).
- Terminación de TLS y confianza en el proxy (responsabilidad de implementación).
Activos
- Especificaciones de escenarios, condiciones y etiquetas de políticas (lógica de seguridad).
- Run state logs: triggers, gate evaluations, decisions, packets, submissions, Registros de estado de ejecución: disparadores, evaluaciones de puertas, decisiones, paquetes, envíos, llamadas a herramientas.
- Valores de evidencia, hashes, anclajes y firmas.
- Configuración de la autoridad del espacio de nombres y asignaciones de espacio de nombres.
- Data shape registry records (JSON Schemas), versions, and optional signing Registros del registro de forma de datos (JSON Schemas), versiones y metadatos de firma opcionales.
- Despachar cargas, sobres y recibos.
- Ejecutar artefactos de Runpack, manifiestos e informes de verificación.
- Contratos de proveedores (contratos de capacidad) y esquemas.
- Registros de auditoría (autorización de herramientas, verificación previa, ACL de registro, autorización de inquilinos, uso).
- Configuration files, provider auth tokens, registry ACL/principal mappings, Archivos de configuración, tokens de autenticación del proveedor, mapeos de ACL/principal del registro y claves de verificación de firma.
- Run state store (SQLite or in-memory), schema registry store, and runpack Ejecutar el almacenamiento de estado (SQLite o en memoria), el almacenamiento del registro de esquemas y el directorio de salida de runpack.
- Cubos de almacenamiento de objetos para artefactos y archivos de runpack (compatibles con S3).
- Contenido del catálogo de documentos y cualquier documento adicional ingerido desde el disco.
Modelo de Adversario
- Adversarios de estados-nación con pleno conocimiento del comportamiento de Decision Gate.
- Clientes no confiables o comprometidos que emiten disparadores o llamadas a herramientas.
- Proveedores de evidencia maliciosos o defectuosos y servidores MCP externos.
- Insiders comprometidos con acceso a configuración, almacenamiento o registros.
- Atacantes de red capaces de realizar MITM, reproducir o interrumpir el tráfico.
- Autores de escenarios maliciosos o erróneos que pueden definir especificaciones inseguras.
- Malicious schema registrants or policy administrators who can poison registry Registrantes de esquemas maliciosos o administradores de políticas que pueden envenenar las entradas del registro.
- Attackers controlling content references or broker sources (SSRF/exfiltration Atacantes que controlan referencias de contenido o fuentes de intermediarios (riesgo de SSRF/exfiltración).
- Attackers who can tamper with on-disk provider contracts, configs, or runpack Atacantes que pueden manipular contratos de proveedores en disco, configuraciones o artefactos de runpack.
Límites de Confianza
- Los transportes del servidor MCP (stdio, HTTP, SSE): todas las entradas JSON-RPC no son de confianza.
- Definición del escenario de entrada: las especificaciones pueden codificar la lógica de divulgación y el acceso a datos.
- Límite del proveedor de evidencia: proveedores integrados vs proveedores MCP externos.
- Namespace authority backend (Asset Core or registry): namespace validation is Autoridad del espacio de nombres backend (Asset Core o registro): la validación del espacio de nombres es externa y debe fallar de manera segura.
- Contratos de proveedor y archivos de configuración en disco.
- Backend del registro de esquemas (en memoria/SQLite) y decisiones de ACL del registro.
- Ejecutar el almacenamiento de estado y los artefactos de runpack: tratar el almacenamiento como no confiable.
- Runpack object storage (S3-compatible) and metadata: treat as untrusted and Almacenamiento de objetos Runpack (compatible con S3) y metadatos: tratar como no confiable y verificar los hashes de cada artefacto.
- Fuentes de corredor (http/archivo/en línea) y sumideros (sistemas externos).
- Objetivos de despacho y sistemas descendentes que reciben divulgaciones.
- Entorno de verificación fuera de línea y lectores de artefactos.
- Tenant authorization adapters and usage meters (if configured) are external Los adaptadores de autorización de inquilinos y los medidores de uso (si están configurados) son puntos de decisión externos.
- Ingesta de extra_paths de Docs (disco local) y recursos/listar/leer de MCP.
Puntos de Entrada y Superficies de Ataque
- MCP JSON-RPC methods:
tools/list,tools/call,resources/list, Métodos MCP JSON-RPC:tools/list,tools/call,resources/list,resources/read. - MCP tools:
scenario_define,scenario_start,scenario_status,scenario_next,scenario_submit,scenario_trigger,evidence_query,runpack_export,runpack_verify,providers_list,provider_contract_get,provider_check_schema_get,schemas_list,schemas_register,schemas_get,scenarios_list,precheck,decision_gate_docs_search. - CLI commands:
serve,runpack export,runpack verify, authoring Comandos de CLI:serve,runpack export,runpack verify, autoría validar/normativizar. - Archivo de configuración y variable de entorno
DECISION_GATE_CONFIG. - Procesos de proveedores MCP externos y puntos finales HTTP.
- Built-in providers:
env,json,http,time(filesystem, environment, Proveedores integrados:env,json,http,time(sistema de archivos, entorno, red). - External content references for packet payloads (
http://,https://, Referencias de contenido externo para cargas útiles de paquetes (http://,https://,file://,inline:). - Rutas de configuración, contratos de proveedor, comandos/URLs de proveedor, rutas adicionales de documentación.
- Destinos de almacenamiento de Runpack (directorio de salida local o almacenamiento de objetos).
Controles de Seguridad e Invariantes
- Canonical JSON hashing (RFC 8785) with non-finite float rejection for specs, Hashing JSON canónico (RFC 8785) con rechazo de flotantes no finitos para especificaciones, registros, paquetes de ejecución y hashes.
- Evaluación de tres estados con
Unknowntratado como no aprobado. - Evidence hash normalization; optional signature verification (ed25519) when Normalización del hash de evidencia; verificación de firma opcional (ed25519) cuando está configurado.
- Provider contract registry validates provider check params and allowed El registro de contratos de proveedores valida los parámetros de verificación de proveedores y los comparadores permitidos; la validación estricta de comparadores/tipos está activada por defecto.
- Namespace authority checks enforce tenant/namespace scoping and fail closed Las verificaciones de autoridad de espacio de nombres imponen el alcance de inquilinos/espacios de nombres y fallan de manera cerrada en catálogos desconocidos o no disponibles.
- Evidence trust lanes enforced (verified by default); dev-permissive explicitly Se aplican carriles de confianza de evidencia (verificados por defecto); el modo dev-permissive reduce explícitamente la confianza a afirmada solo para proveedores no exentos.
- Schema registry ACL enforces role/policy-class access and can require signing El ACL del registro de esquemas impone el acceso basado en roles/clases de políticas y puede requerir la firma de metadatos; las operaciones del registro son auditadas.
- Anchor policy enforcement rejects evidence missing required anchors and La aplicación de la política de anclaje rechaza la evidencia que falta anclajes requeridos y propaga los requisitos de anclaje en la verificación de runpack.
- Size and path limits for config files, provider contracts, run state stores, Límites de tamaño y ruta para archivos de configuración, contratos de proveedor, almacenes de estado de ejecución, ingestión de documentos, artefactos de runpack y claves de objeto-almacen.
- JSON provider enforces root-bound relative paths and emits
El proveedor de JSON impone rutas relativas vinculadas a la raíz y emite anclajes
file_path_rootedconroot_id+pathnormalizado. - RET logic hard limits: DSL inputs capped at 1 MiB with nesting depth 32; serialized requirement inputs capped at 1 MiB with default max depth 32; plan execution stack depth capped at 64 frames; constant pools capped at 65,536 entradas.
- HTTP/SSE and stdio request body limits; provider-specific response size Límites del cuerpo de la solicitud HTTP/SSE y stdio; límites de tamaño de respuesta específicos del proveedor y tiempos de espera.
- Límites de solicitudes en vuelo y limitación de tasa opcional para llamadas a la herramienta MCP.
- MCP tool calls require explicit authn/authz (local-only by default; bearer or Las llamadas a la herramienta MCP requieren autenticación/autorización explícita (solo local por defecto; listas de permitidos de portador o mTLS cuando están configuradas) con registro de auditoría.
- Tool visibility filters list/call surfaces; docs search/resources can be Los filtros de visibilidad de herramientas enumeran/superficies de llamada; la búsqueda de documentos/recursos puede ser desactivada.
- El gancho de autorización del inquilino (si está configurado) controla las llamadas a la herramienta y se audita.
- Precheck is read-only: asserted evidence validated against schemas, no run La prevalidación es de solo lectura: evidencia afirmada validada contra esquemas, sin mutación del estado de ejecución ni divulgaciones.
- Resúmenes seguros para el estado orientado al cliente; redacción de evidencia según la política.
scenario_submit.payloadandscenario_trigger.payloadare persisted as runscenario_submit.payloadyscenario_trigger.payloadse persisten como registros de ejecución e incluidos en los paquetes de ejecución; trátalos como canales de datos de auditoría no secretos.- SQLite run state uses canonical JSON + hash verification on load; runpack El estado de ejecución de SQLite utiliza JSON canónico + verificación de hash al cargar; los manifiestos de runpack utilizan hashes de archivos + hash raíz para la integridad.
Amenazas y Mitigaciones
Autenticación, Autorización y Control de Acceso
- Unauthorized tool access: local-only defaults, bearer/mTLS modes, per-tool Acceso no autorizado a herramientas: valores predeterminados solo locales, modos bearer/mTLS, listas de permitidos por herramienta, filtros de visibilidad de herramientas y registro de auditoría.
- Tenant/namespace abuse: namespace authority checks, default namespace Abuso de inquilinos/nombres de espacio: comprobaciones de autoridad de nombres de espacio, denegación por defecto del nombre de espacio predeterminado, ganchos de autorización de inquilinos y ACLs de registro.
- Registry poisoning/leakage: ACL rules and optional signing metadata Envenenamiento/fugas del registro: reglas de ACL y requisitos opcionales de metadatos de firma con registros de auditoría.
Validación y análisis de entrada
- Untrusted JSON-RPC/config inputs: strict typed decoding, comparator Entradas JSON-RPC/config no confiables: decodificación estrictamente tipada, validación de comparadores, normalización de JSON canónico y límites de tamaño/ruta.
- JSONPath/YAML parsing in
jsonprovider: root-bound relative paths (absolute Análisis de JSONPath/YAML en el proveedorjson: rutas relativas vinculadas a la raíz (rutas absolutas rechazadas), verificaciones de recorrido, límites de tamaño y manejo estructurado de errores. - Provider contract tampering: contract path validation and canonical hashing Manipulación del contrato del proveedor: validación de la ruta del contrato y hash canónico de las cargas útiles del contrato.
Integridad y Autenticidad de la Evidencia
- Malicious or faulty providers: trust lanes, optional signature verification, Proveedores maliciosos o defectuosos: carriles de confianza, verificación de firma opcional, aplicación de políticas de anclaje y hash de evidencia canónica.
- External MCP providers: response size limits, timeouts, and correlation ID Proveedores externos de MCP: límites de tamaño de respuesta, tiempos de espera y saneamiento del ID de correlación; tratar como procesos no confiables o servicios remotos.
Divulgación y Exposición de Datos
- Evidence leakage through tools: evidence redaction policies for
Filtración de evidencia a través de herramientas: políticas de redacción de evidencia para
evidence_queryy comentarios descenario_next; resúmenes seguros por defecto. - Sensitive data in submit/trigger payloads: payloads are intentionally durable for audit/replay; mitigated by integration policy (no raw secrets, use opaque manejadores y almacenes de secretos externos).
- Policy bypass in dispatch: optional policy engine (
permit_all,deny_all, Bypass de políticas en el despacho: motor de políticas opcional (permit_all,deny_all, o reglas estáticas) controla la divulgación antes del despacho.
Almacenamiento e Integridad de Runpack
- Run state tampering: SQLite store verifies canonical hash on load and fails Manipulación del estado de ejecución: la tienda SQLite verifica el hash canónico al cargar y falla cerrada; las versiones del estado de ejecución son solo de anexado (con poda de retención opcional).
- Runpack tampering: verifier checks artifact hashes, root hash, and anchor policy; no built-in signing (external signing/WORM required for no repudio).
Proveedores Externos, Fuentes y Despacho
- Broker sources (http/file/inline) used for payload resolution: content hash verification, content type checks, size limits, no redirects (HTTP), and aplicación opcional de la ruta raíz (archivo).
- Built-in providers: allowlists/denylists and size limits for
env, root restrictions and size limits forjson, and host allowlists + https-only valores predeterminados parahttp.
Disponibilidad y Agotamiento de Recursos
- Large requests/responses:
max_body_bytes, provider response caps, schema size limits, runpack artifact limits, and optional rate limiting/inflight límites. - Tiempo de espera del proveedor: tiempos de espera del proveedor HTTP y límites de respuesta del proveedor MCP.
Cadena de Suministro y Entorno de Ejecución
- External providers execute with local privileges; use OS sandboxing, scoped Los proveedores externos ejecutan con privilegios locales; utilizan sandboxing del sistema operativo, credenciales limitadas y permisos mínimos.
- Provider contracts, configs, and docs extra_paths are local file inputs and Los contratos de proveedores, configuraciones y documentos extra_paths son entradas de archivos locales y deben estar protegidos por ACLs del sistema de archivos y controles de integridad.
Multi-Inquilino y Aislamiento
- Tenant/namespace IDs are labels, not access controls: enforce authn/authz, Los IDs de inquilino/espacio de nombres son etiquetas, no controles de acceso: hacer cumplir la autenticación/autorización, los ganchos de autorización del inquilino y las ACL del registro en implementaciones compartidas.
Auditoría y Observabilidad
- Auth decisions, registry access, tenant authz, and usage are logged with Las decisiones de autorización, el acceso al registro, la autorización del inquilino y el uso se registran con eventos de auditoría estructurados; los registros de prechequeo son solo hash por defecto.
Referencias de Implementación (Controles y Protecciones)
Núcleo de Ejecución
- Canonical JSON hashing and non-finite float rejection:
Hashing JSON canónico y rechazo de flotantes no finitos:
crates/decision-gate-core/src/core/hashing.rs. - Tri-state comparator evaluation:
Evaluación del comparador de tres estados:
crates/decision-gate-core/src/runtime/comparator.rs. - Trust lane enforcement and anchor policy validation:
crates/decision-gate-core/src/runtime/engine.rs, Aplicación de la vía de confianza y validación de políticas ancla:crates/decision-gate-core/src/runtime/engine.rs,crates/decision-gate-core/src/core/evidence.rs. - Safe summaries:
Resúmenes seguros:
crates/decision-gate-core/src/core/summary.rs. - Runpack build/verify and artifact size limits:
Ejecutar la construcción/verificación de Runpack y límites de tamaño de artefacto:
crates/decision-gate-core/src/runtime/runpack.rs.
Servidor MCP y Herramientas
- Authn/authz, tool allowlists, bearer parsing, and auth audit:
Authn/authz, listas de herramientas permitidas, análisis de portadores y auditoría de autenticación:
crates/decision-gate-mcp/src/auth.rs,crates/decision-gate-config/src/config.rs. - Request limits (max body, inflight, rate limiting) and transport handling:
Límites de solicitud (cuerpo máximo, en vuelo, limitación de tasa) y manejo de transporte:
crates/decision-gate-mcp/src/server.rs,crates/decision-gate-config/src/config.rs. - Correlation ID sanitization:
Sanitización del ID de correlación:
crates/decision-gate-mcp/src/correlation.rs. - Tool visibility, docs gating, evidence redaction, and precheck handling:
Visibilidad de herramientas, control de documentos, redacción de evidencia y manejo de prechequeo:
crates/decision-gate-mcp/src/tools.rs. - Audit event payloads:
Cargas útiles de eventos de auditoría:
crates/decision-gate-mcp/src/audit.rs. - Tenant authz and usage meter seams:
Costuras de autorización de inquilinos y medidor de uso:
crates/decision-gate-mcp/src/tenant_authz.rs,crates/decision-gate-mcp/src/usage.rs. - Provider contract validation + strict comparator validation:
Validación del contrato del proveedor + validación de comparador estricto:
crates/decision-gate-mcp/src/capabilities.rs,crates/decision-gate-mcp/src/validation.rs. - Evidence signature verification and MCP provider response caps:
Verificación de la firma de evidencia y límites de respuesta del proveedor MCP:
crates/decision-gate-mcp/src/evidence.rs.
Proveedores y Corredor
- Built-in provider limits and policies:
crates/decision-gate-providers/src/env.rs,crates/decision-gate-providers/src/json.rs, Límites y políticas de proveedores integrados:crates/decision-gate-providers/src/env.rs,crates/decision-gate-providers/src/json.rs,crates/decision-gate-providers/src/http.rs,crates/decision-gate-providers/src/time.rs. - Provider allow/deny policy:
Política de permitir/denegar proveedores:
crates/decision-gate-providers/src/registry.rs. - Broker payload validation and source restrictions:
crates/decision-gate-broker/src/broker.rs,crates/decision-gate-broker/src/source/file.rs, Validación de carga del broker y restricciones de origen:crates/decision-gate-broker/src/broker.rs,crates/decision-gate-broker/src/source/file.rs,crates/decision-gate-broker/src/source/http.rs,crates/decision-gate-broker/src/source/inline.rs.
Almacenamiento y Contratos
- SQLite run state + schema registry integrity and size limits:
Estado de ejecución de SQLite + integridad del registro de esquemas y límites de tamaño:
crates/decision-gate-store-sqlite/src/store.rs. - In-memory stores (tests/demos only):
Almacenes en memoria (solo pruebas/demos):
crates/decision-gate-core/src/runtime/store.rs. - Object-store runpack export key validation:
Validación de la clave de exportación de runpack del objeto de almacenamiento:
crates/decision-gate-mcp/src/runpack_object_store.rs. - Config file size/path validation and defaults:
Validación del tamaño/ruta del archivo de configuración y valores predeterminados:
crates/decision-gate-config/src/config.rs. - Canonical tool and schema contracts:
Contratos de herramienta y esquema canónicos:
crates/decision-gate-contract/src/tooling.rs,crates/decision-gate-contract/src/schemas.rs. - CLI authoring/runpack tooling:
Herramientas de autoría/ejecución de CLI:
crates/decision-gate-cli/src/main.rs.
Requisitos Operacionales
- Restrict MCP access to authenticated transports (mTLS, IPC ACLs, reverse Restringir el acceso a MCP a transportes autenticados (mTLS, IPC ACLs, autenticación de proxy inverso) y hacer cumplir TLS para HTTP/SSE (o terminación explícita en el upstream).
- Configure
server.authfor non-loopback deployments; rotate tokens and Configurarserver.authpara implementaciones que no sean de bucle; rotar tokens y mantener listas de herramientas permitidas. - Mantener dev-permissive deshabilitado en producción; requerir carriles de confianza verificados.
- Require signature verification for external providers where integrity Requerir verificación de firma para proveedores externos donde la integridad sea importante; gestionar la distribución de claves de manera segura.
- Configure allowlists for
env,json, andhttpproviders; avoid Configure listas de permitidos para los proveedoresenv,jsonyhttp; evite el acceso a archivos sin restricciones. - Restrict
schemas_register,schemas_get,schemas_list,precheck, andscenarios_listto trusted callers (tool allowlists + tenant authz + registry ACLs). Restrict provider discovery tools with tool allowlists andprovider_discoverylistas de permitidos/prohibidos. - Configure schema registry ACL rules and signing metadata requirements where Configure las reglas de ACL del registro de esquemas y los requisitos de metadatos de firma donde la procedencia sea importante; proteja el almacenamiento del registro.
- Limit or disable
runpack_exportfor untrusted callers; restrict output Limitar o deshabilitarrunpack_exportpara llamadores no confiables; restringir las rutas de salida y los prefijos del almacén de objetos. - Store run state and runpacks in tamper-evident storage; sign manifests Almacenar el estado de ejecución y los runpacks en un almacenamiento a prueba de manipulaciones; firmar los manifiestos externamente cuando se requiera no repudio.
- Aplicar sandboxing a nivel de sistema operativo para proveedores externos y fuentes de intermediarios.
- Set
server.max_body_bytes,server.limits, and provider timeouts to Establecerserver.max_body_bytes,server.limitsy los tiempos de espera del proveedor para prevenir el agotamiento de recursos. - Disable docs search/resources in untrusted environments or restrict extra Desactivar la búsqueda de documentos/recursos en entornos no confiables o restringir rutas adicionales a ubicaciones de solo lectura.
Postura de Fallo
- Fallar cerrado ante evidencia faltante, inválida o no verificable.
- Rechazar configuraciones, llamadas a herramientas y registros de esquemas no válidos.
- No divulgar datos sobre resultados
Desconocidoso ambiguos.
Modelo de Amenaza Delta (2026-02-01)
- Added explicit coverage for docs search/resources, tool visibility filters, Se añadió cobertura explícita para la búsqueda de documentos/recursos, filtros de visibilidad de herramientas, saneamiento de ID de correlación y redacción de cargas de auditoría.
- Ampliación de las protecciones para corredores/fuentes y cobertura de validación de claves de almacenamiento de objetos.
- Mapeo de controles de seguridad a ubicaciones de código concretas para trazabilidad.
- Se añadieron límites explícitos de tamaño/profundidad de entrada de autoría en la normalización de contratos.
- Se añadió una política de permitir/denegar el host de origen HTTP con guardias de IP privadas/locales de enlace.
- Se abren fuentes de archivos seguras para enlaces simbólicos forzados para divulgaciones de archivos con privilegios de root.