Volatility MCP

Integra a análise de memória do Volatility 3 com FastAPI e MCP, expondo plugins de forense de memória via APIs REST.

Documentação

Seu Assistente de IA em Forense de Memória

Visão Geral

O Volatility MCP integra perfeitamente a poderosa análise de memória do Volatility 3 com FastAPI e o Model Context Protocol (MCP). Experimente a forense de memória sem barreiras, pois plugins como pslist e netscan tornam-se acessíveis por meio de APIs REST limpas, conectando artefatos de memória diretamente a assistentes de IA e aplicações web.

Recursos

  • Integração com Volatility 3: Utiliza o framework Volatility 3 para análise de imagens de memória.
  • Backend FastAPI: Fornece APIs RESTful para interagir com plugins do Volatility.
  • Suporte a Front End Web (recurso futuro): Projetado para conectar-se a um front end baseado na web para análise interativa.
  • Model Context Protocol (MCP): Permite comunicação padronizada com clientes MCP como o Claude Desktop.
  • Suporte a Plugins: Suporta vários plugins do Volatility, incluindo pslist para listagem de processos e netscan para análise de conexões de rede.

Arquitetura

A arquitetura do projeto consiste nos seguintes componentes:

  • Cliente MCP: Cliente MCP como o Claude Desktop que interage com o backend FastAPI.
  • Servidor FastAPI: Um servidor baseado em Python que expõe plugins do Volatility como endpoints de API.
  • Volatility 3: O framework de forense de memória que realiza a análise.

Essa arquitetura permite que os usuários analisem imagens de memória por meio de clientes MCP como o Claude Desktop. Os usuários podem usar prompts em linguagem natural para realizar análises de forense de memória, como mostre-me a lista de processos na imagem de memória x, ou mostre-me todas as conexões externas feitas.

Começando

Pré-requisitos

  • Python 3.7+ instalado no seu sistema
  • Binário do Volatility 3 instalado (veja Guia de Instalação do Volatility 3) e adicionado ao seu caminho de ambiente chamado VOLATILITY_BIN

Instalação

  1. Clone o repositório:

    git clone <repository_url>
    cd <repository_directory>
    
  2. Instale as dependências Python necessárias:

    pip install -r requirements.txt
    
  3. Inicie o servidor FastAPI para expor as APIs do Volatility 3:

    uvicorn volatility_fastapi_server:app 
    
  4. Instale o Claude Desktop (veja Claude Desktop

  5. Para configurar o Claude Desktop como um cliente MCP do Volatility, navegue até Claude → Configurações → Desenvolvedor → Editar Config, localize o arquivo claude_desktop_config.json e insira os seguintes detalhes de configuração

  6. Observe que a opção -i no arquivo config.json especifica o caminho do diretório do seu arquivo de imagem de memória.

        {
         "mcpServers": {
           "vol": {
             "command": "python",
             "args": [
               "/ABSOLUTE_PATH_TO_MCP-SERVER/vol_mcp_server.py", "-i",     
               "/ABSOLUTE_PATH_TO_MEMORY_IMAGE/<memory_image>"
             ]
           }
         }
     }
    

Alternativamente, atualize este arquivo diretamente:

/Users/YOUR_USER/Library/Application Support/Claude/claude_desktop_config.json

Uso

  1. Inicie o servidor FastAPI conforme descrito acima.
  2. Conecte um cliente MCP (por exemplo, Claude Desktop) ao servidor FastAPI.
  3. Inicie o prompt fazendo perguntas sobre a imagem de memória em questão, como mostrar os processos em execução, criar um gráfico de relacionamento em árvore para o processo x ou mostrar todas as conexões externas RFC1918.

image image image image

Recursos e Melhorias Futuras

  • Integração Nativa com Python do Volatility: Incorporar o SDK Python do Volatility diretamente na base de código, em vez de usar o binário do Volatility via subprocesso.
  • Integração com Yara: Implementar funcionalidade para despejar um processo da memória e escaneá-lo com regras Yara para análise de malware.
  • Análise Multi-Imagem: Permitir a análise de múltiplas imagens de memória simultaneamente para correlacionar eventos e identificar padrões em diferentes sistemas.
  • Adicionar mais plugins do Volatility: adicionar mais plugins do Volatility para expandir o escopo da análise de memória.
  • Melhorias na GUI: Desenvolver uma interface web amigável para análise interativa e visualização de memória.
  • Geração Automatizada de Relatórios: Automatizar a geração de relatórios detalhados resumindo os resultados da análise de memória.
  • Detecção Avançada de Ameaças: Incorporar técnicas avançadas para detectar ameaças sofisticadas e anomalias na memória.

Contribuindo

Contribuições são bem-vindas! Siga estes passos para contribuir:

  1. Faça um fork deste repositório.
  2. Crie um novo branch (git checkout -b feature/my-feature).
  3. Faça commit das suas alterações (git commit -m 'Add some feature').
  4. Envie para o seu branch (git push origin feature/my-feature).
  5. Abra um pull request.

MseeP.ai Security Assessment Badge