Volatility MCP Server

Un servidor MCP para análisis forense de memoria utilizando el framework Volatility 3.

Documentación

Servidor MCP de Volatility

Un servidor de Protocolo de Contexto de Modelo (MCP) que integra el framework de análisis forense de memoria Volatility 3 con Claude y otros LLM compatibles con MCP.

Por Qué Esto Importa

En India, los investigadores forenses digitales enfrentan un enorme atraso de casos debido a la gran población del país y las crecientes tasas de ciberdelincuencia. Esta herramienta ayuda a abordar este desafío al:

  • Permitir que los investigadores analicen volcados de memoria usando lenguaje natural simple en lugar de comandos complejos
  • Reducir la experiencia técnica necesaria para realizar análisis forenses de memoria
  • Acelerar el proceso de análisis mediante la automatización
  • Ayudar a eliminar el atraso de casos y entregar resultados más rápidos al sistema judicial

Al hacer que el análisis forense de memoria sea más accesible, esta herramienta puede reducir significativamente la carga sobre los expertos forenses y mejorar la respuesta de ciberseguridad en toda India.

Descripción General

Este proyecto conecta las potentes capacidades de análisis forense de memoria del Framework Volatility 3 con Modelos de Lenguaje Grande (LLM) a través del Protocolo de Contexto de Modelo (MCP). Permite realizar análisis forenses de memoria usando lenguaje natural al exponer los plugins de Volatility como herramientas MCP que pueden ser invocadas directamente por Claude u otros LLM compatibles con MCP.

Características

  • Análisis Forense de Memoria en Lenguaje Natural: Pídele a Claude que analice volcados de memoria usando lenguaje natural
  • Análisis de Procesos: Examina procesos en ejecución, relaciones padre-hijo y procesos ocultos
  • Análisis Forense de Red: Identifica conexiones de red en volcados de memoria
  • Detección de Malware: Encuentra posible inyección de código y otros artefactos maliciosos
  • Análisis de DLL: Examina DLL y módulos cargados
  • Objetos de Archivo: Escanea objetos de archivo en memoria
  • Plugins Personalizados: Ejecuta cualquier plugin de Volatility con argumentos personalizados
  • Descubrimiento de Volcados de Memoria: Encuentra automáticamente volcados de memoria en un directorio

Requisitos

  • Python 3.10 o superior
  • Framework Volatility 3
  • Claude Desktop u otro cliente compatible con MCP
  • SDK de Python para MCP (paquete mcp)

Instalación

  1. Clona este repositorio:

    git clone https://github.com/yourusername/volatility-mcp-server.git
    
  2. Instala los paquetes de Python requeridos:

    pip install mcp httpx
    
  3. Configura la ruta de Volatility en el script:

    • Abre volatility_mcp_server.py y actualiza la variable VOLATILITY_DIR para que apunte a tu ruta de instalación de Volatility 3.
  4. Configura Claude Desktop:

    • Abre tu archivo de configuración de Claude Desktop ubicado en:
      • Windows: %APPDATA%\Claude\claude_desktop_config.json
      • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
    • Agrega la configuración del servidor:
    {
      "mcpServers": {
        "volatility": {
          "command": "python",
          "args": [
            "/path/to/volatility_mcp_server.py"
          ],
          "env": {
            "PYTHONPATH": "/path/to/volatility3"
          }
        }
      }
    }
    
    • Reemplaza /path/to/ con la ruta real a tus archivos.
  5. Reinicia Claude Desktop para aplicar los cambios.

Uso

Después de la configuración, puedes simplemente hacer preguntas en lenguaje natural a Claude sobre tus volcados de memoria:

  • "Lista todos los procesos en el volcado de memoria en C:\ruta\al\dump.vmem"
  • "Muéstrame las conexiones de red en C:\ruta\al\dump.vmem"
  • "Ejecuta malfind para verificar inyección de código en el volcado de memoria"
  • "¿Qué DLL están cargadas en el ID de proceso 4328?"
  • "Verifica procesos ocultos en C:\ruta\al\dump.vmem"

Herramientas Disponibles

El servidor expone los siguientes plugins de Volatility como herramientas MCP:

  1. list_available_plugins - Muestra todos los plugins de Volatility que puedes usar
  2. get_image_info - Proporciona información sobre un archivo de volcado de memoria
  3. run_pstree - Muestra la jerarquía de procesos
  4. run_pslist - Lista procesos de la lista de procesos
  5. run_psscan - Escanea procesos, incluidos aquellos que podrían estar ocultos
  6. run_netscan - Muestra conexiones de red en el volcado de memoria
  7. run_malfind - Detecta posible inyección de código
  8. run_cmdline - Muestra argumentos de línea de comandos para procesos
  9. run_dlllist - Lista DLL cargadas para procesos
  10. run_handles - Muestra identificadores de archivos y otros identificadores del sistema
  11. run_filescan - Escanea objetos de archivo en memoria
  12. run_memmap - Muestra el mapa de memoria para un proceso específico
  13. run_custom_plugin - Ejecuta cualquier plugin de Volatility con argumentos personalizados
  14. list_memory_dumps - Encuentra volcados de memoria en un directorio

Flujo de Trabajo de Análisis Forense de Memoria

Este servidor MCP permite un flujo de trabajo simplificado de análisis forense de memoria:

  1. Triaje Inicial:

    • "Muéstrame el árbol de procesos en memory.vmem"
    • "Lista todas las conexiones de red en memory.vmem"
  2. Investigación de Procesos Sospechosos:

    • "¿Qué línea de comandos se usó para iniciar el proceso 1234?"
    • "Muéstrame todas las DLL cargadas por el proceso 1234"
    • "¿Qué identificadores de archivos están abiertos en el proceso 1234?"
  3. Búsqueda de Malware:

    • "Ejecuta malfind en memory.vmem para verificar inyección de código"
    • "Muéstrame procesos con relaciones padre-hijo inusuales"
    • "Encuentra procesos ocultos en memory.vmem"

Solución de Problemas

Si encuentras problemas:

  1. Problemas de Ruta:

    • Asegúrate de que todas las rutas sean absolutas y usen dobles barras invertidas en rutas de Windows
    • Verifica que el archivo de volcado de memoria exista y sea legible
  2. Problemas de Permisos:

    • Ejecuta Claude Desktop como Administrador
    • Verifica que Python y el directorio de Volatility tengan permisos adecuados
  3. Errores de Volatility:

    • Asegúrate de que Volatility 3 funcione correctamente por sí solo
    • Intenta ejecutar el mismo comando directamente en tu línea de comandos
  4. Errores de MCP:

    • Revisa los registros de Claude Desktop para errores de MCP
    • Asegúrate de que el paquete de Python de MCP esté instalado correctamente

Extensión

Este servidor puede extenderse al:

  1. Agregar más plugins de Volatility
  2. Crear flujos de trabajo de análisis personalizados
  3. Integrar con otras herramientas forenses
  4. Agregar capacidades de generación de informes

Licencia

Licencia MIT