MCP RCE Guard
Defensa RCE Capa-3 para servidores MCP mediante síntesis de políticas
Pilar foundation 9. Cierra la clase RCE por inyección de tools que los sidecar-scanners (mcp-armor) y wrappers stdio (mcp-stdio-shellguard) no atrapan. Sintetiza políticas por tool desde semánticas declaradas y las aplica en tiempo de ejecución. MIT, TypeScript.
Qué problema resuelve
Un servidor MCP que lanza un subproceso entrega, en ese momento, todo lo que el proceso principal tiene permitido. No hay una forma estándar de escribir qué puede leer, escribir, lanzar o contactar ese subproceso, así que en la práctica nadie lo escribe. Esta biblioteca le da una forma tipada y validada.
Cómo funciona
Emite descriptores de política de aislamiento para las tres plataformas que los tienen: perfiles landlock para Linux 5.13 o superior, perfiles Scheme de sandbox-exec para macOS y especificaciones cgroups-v2 de memoria, número de procesos y CPU. Al lado hay predicados de comportamiento que examinan un comando de subproceso buscando la forma de vulnerabilidades RCE conocidas, entre ellas el fallo del SDK de MCP de abril de 2026, CVE-2026-27124, el caso de Nginx MCP y sumideros de evaluación como node -e o python -c. La coincidencia por token exacto mantiene fuera de los hallazgos las banderas de arranque inocuas. La salida de red está denegada por defecto, con comodines, coincidencias exactas, sufijos y puertos, y cada decisión de aislamiento se añade a un registro NDJSON que solo crece.
Cuándo usarlo
Cógelo si estás construyendo el lado del anfitrión y quieres una descripción reproducible de lo que puede hacer un subproceso, más un escáner que reconozca formas de vulnerabilidad conocidas antes de desplegar. Los tokens canario son la otra mitad: emites uno y luego vigilas la salida, las escrituras de archivos y el tráfico de red por si reaparece.
Cuándo no usarlo
El README es directo al respecto y esta página también: la versión 0.1 emite descriptores, no los aplica. Aquí no se hace ninguna llamada al sistema, así que por sí sola no contiene un subproceso hostil en la frontera del núcleo. El anfitrión tiene que traducir un descriptor a la llamada de la plataforma, y el ayudante que hace eso es la entrega 0.2. El registro de auditoría además va sin firmar por ahora.
Stars
★ 0
installs
↓ 439
Clones (14d)
⊟ 25
Lenguaje
TypeScript
Actualizado
2026-08-21
Instalación
npx -y mcp-rce-guard