Skip to content
KitploitKITPLOIT
HerramientasExploitsBlog
Log in
Enviar
HerramientasExploitsBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

FeedsContactoPrivacidad© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
MCPTrace — Plugin de Volatility 3 que extrae candidatos de mensajes MCP/JSON-RPC de volcados de memoria de Windows y Linux, preservando los bytes sin procesar, las direcciones y el SHA-256 para su verificación. | Kitploit
Herramientas/GitHubGitHub/kowntaewook/mcptrace
Forensia de MemoriaAnálisis ForenseRecopilación de InformaciónAnálisis de MalwareForensia DigitalRespuesta a IncidentesSeguridad de IAAnálisis de Registros
GitHubkowntaewook/mcptrace

MCPTrace

Plugin de Volatility 3 que extrae candidatos de mensajes MCP/JSON-RPC de volcados de memoria de Windows y Linux, preservando los bytes sin procesar, las direcciones y el SHA-256 para su verificación.

746hace 7 díasAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
Ver Repositorio

MCPTrace

MCPTrace es un plugin de Volatility 3 para extraer candidatos de mensajes MCP/JSON-RPC de volcados de memoria de Windows y Linux. Examina la memoria de los procesos en busca de solicitudes, respuestas, notificaciones, nombres de herramientas y argumentos de llamadas, y luego registra el contenido recuperado junto con su ubicación en memoria.

El proyecto se centra en la evidencia que un analista puede inspeccionar y verificar. Cada artefacto conserva sus bytes originales, el ID de proceso, la dirección virtual, la codificación, la longitud y el hash SHA-256. Los resultados pueden exportarse como JSONL para su posterior análisis o comparación con otros registros. MCPTrace opera sobre una imagen de memoria adquirida y no requiere un LLM ni una API de IA externa.

Características

  • Extrae artefactos JSON-RPC en UTF-8 y UTF-16LE de la memoria de proceso legible.
  • Identifica métodos y formas de respuesta relacionados con MCP, incluidos los nombres y argumentos de tools/call.
  • Conserva los bytes y direcciones originales para su posterior verificación contra la imagen.
  • Sugiere relaciones solicitud/respuesta utilizando el mismo PID y el ID de solicitud tipado.
  • Aplica reglas opcionales definidas por el analista a los argumentos de las herramientas, como comprobaciones de rutas o URL.
  • Exporta artefactos y resúmenes por proceso, incluidos bytes ilegibles, errores y límites de búsqueda.

Los objetivos de análisis actuales son Windows x64 y Linux x86-64. El nombre del plugin hace referencia al sistema operativo de la imagen de memoria, independientemente del SO utilizado para ejecutar Volatility.

Cómo funciona

MCPTrace utiliza la enumeración de procesos y la traducción de direcciones de Volatility. En Windows, recorre los Virtual Address Descriptors (VAD) del proceso; en Linux, recorre las Virtual Memory Areas (VMA). Estas asignaciones definen qué rangos de direcciones del proceso se examinan. Ambos adaptadores comparten el mismo código de carving de mensajes, correlación, políticas y exportación.

Dentro de los rangos legibles, el escáner busca marcadores literales de versión de JSON-RPC y localiza objetos JSON candidatos a su alrededor. Maneja objetos anidados, caracteres escapados, llaves dentro de cadenas y mensajes que abarcan fragmentos de lectura contiguos. El JSON con claves duplicadas o identificadores no admitidos se rechaza en lugar de reinterpretarse silenciosamente. La relevancia MCP se determina a partir de nombres de métodos conocidos, formas de respuesta e IDs de solicitud asociados; no es una validación completa del esquema MCP.

La memoria ausente se mantiene como ausente. El lector no rellena los huecos con ceros ni une bytes entre VAD/VMA separados. Con --include-partial, los fragmentos no analizados pueden mostrarse por separado, sin inventar IDs o argumentos faltantes. Los rangos grandes no mapeados pueden omitirse utilizando la información de la tabla de páginas, y los rangos de direcciones ilegibles permanecen visibles en las estadísticas del escaneo.

La correlación es deliberadamente conservadora. Un ID numérico como 1 es distinto del ID de cadena "1", y los mensajes en procesos diferentes no se vinculan automáticamente. Las múltiples representaciones distintas asociadas a un ID se marcan como ambiguas. Las relaciones candidatas no reconstruyen por sí solas una sesión, la dirección de los mensajes ni una línea temporal de ejecución.

Instalación

Requiere Python 3.10+. La instalación incluye la dependencia fijada del framework, volatility3==2.28.2. Mantenga disponible el directorio plugins/ del repositorio: el paquete de Python se instala con pip, mientras que -p plugins carga los adaptadores de Volatility.

git clone https://github.com/Kowntaewook/MCPTrace.git
cd MCPTrace
python -m venv .venv

Activa el entorno para tu shell:

  • Windows PowerShell: .\.venv\Scripts\Activate.ps1
  • Shell de Linux/macOS: source .venv/bin/activate

Luego instala MCPTrace:

python -m pip install .

Uso

Ejecute los siguientes ejemplos desde la raíz del repositorio con el entorno virtual activo. Reemplace las rutas de imagen y los PID con su evidencia y procesos objetivo. Los clientes y servidores MCP pueden ejecutarse en procesos separados, por lo que debe inspeccionar ambos cuando sea relevante.

Windows

Verifique que Volatility pueda interpretar la imagen y enumerar sus procesos antes de ejecutar MCPTrace. La preparación de símbolos de Windows puede requerir acceso a la red.

vol -f windows.raw windows.info.Info
vol -f windows.raw windows.pslist.PsList
mkdir output-windows
vol -p plugins -f windows.raw -o output-windows windows.mcptrace.MCPTrace --pid 4242 5252 --dump

Linux

Coloque los símbolos ISF que coincidan con la compilación exacta del kernel del volcado en symbols/linux/. Si linux.pslist.PsList no puede resolver sus requisitos de kernel o de capa, resuelva la configuración de imagen/símbolos antes de interpretar la salida de MCPTrace.

vol -s symbols -f linux.lime linux.pslist.PsList
mkdir output-linux
vol -p plugins -s symbols -f linux.lime -o output-linux linux.mcptrace.MCPTrace --pid 4242 --dump
  • Omita --pid para escanear todos los procesos, o pase varios PID: --pid 4242 5252.
  • --dump exporta archivos JSONL por proceso al directorio especificado por -o.
  • Use vol -p plugins windows.mcptrace.MCPTrace -h (o el equivalente en Linux) para ver todas las opciones.

Para obtener una representación JSON de la tabla de resultados completa, coloque la opción global -r json antes del nombre del plugin. Esto es independiente de las exportaciones JSONL por proceso producidas por --dump.

vol -p plugins -f windows.raw -r json windows.mcptrace.MCPTrace --pid 4242 > findings.json

Opciones comunes

OpciónPropósito
--pid 4242 5252Selecciona los ID de proceso; omítelo para examinar todos los procesos enumerados por el adaptador.
--dumpExporta los artefactos mostrados y los resúmenes de escaneo como JSONL usando el directorio global -o.
--include-partialIncluye fragmentos sin procesar y sin analizar, sin reconstruir los campos faltantes.
--include-rpcMuestra también candidatos genéricos de JSON-RPC sin relevancia MCP confirmada.
--policy PATHAplica reglas locales a los argumentos de las herramientas; consulta los ejemplos de Windows y Linux.
--suspicious-onlyMuestra las coincidencias de la política y los resúmenes; requiere una política no vacía.
--max-records NLimita los registros candidatos por proceso antes del filtrado; valor predeterminado: 10000.
--max-object-bytes NLimita el tamaño de un objeto JSON completo; valor predeterminado: 65536 bytes.
--max-bytes NLimita los bytes de rango de direcciones intentados por proceso; 0 significa sin límite.

Los hallazgos de la política describen coincidencias con las reglas proporcionadas por el analista. Una coincidencia no establece actividad maliciosa. Revisa las rutas, los hosts y los nombres de herramientas de los ejemplos antes de aplicarlos a un caso diferente.

Lectura de la salida

Un archivo como mcptrace.pid-4242.jsonl contiene un registro de metadatos, registros de artefactos y un resumen final del escaneo. Los metadatos identifican el proceso, el sistema operativo de destino y el espacio de direcciones. Los registros de artefactos conservan tanto el mensaje analizado como los bytes exactos recuperados.

Descargar herramienta