Security Infrastructure MCP Servers
Integre com plataformas de segurança como Splunk SIEM, CrowdStrike EDR e Microsoft MISP.
Documentação
Security Infrastructure MCP Servers
Uma coleção abrangente de implementações de servidores MCP (Model Context Protocol) seguros para integrações com plataformas de segurança, com endurecimento de segurança de nível empresarial.
🛡️ Design com Segurança em Primeiro Lugar
Este projeto passou por um endurecimento abrangente de segurança para abordar vulnerabilidades críticas e implementar as melhores práticas de segurança:
✅ Melhorias de Segurança (Atualização Mais Recente)
- 🔴 Correções de Alta Severidade:
- Prevenção de injeção SPL com sanitização de consultas e bloqueio de comandos perigosos
- Análise XML segura usando defusedxml para prevenir ataques XXE
- Remoção completa de credenciais codificadas de todos os arquivos de configuração
- 🟡 Correções de Severidade Média:
- TLS 1.2+ obrigatório com suites de cifras fortes para todas as comunicações de API
- Validação e sanitização abrangente de entrada em todos os servidores
- Prevenção de riscos de execução de comandos e ataques de injeção
- Sanitização de mensagens de erro para prevenir divulgação de informações
- 🔵 Recursos Adicionais de Segurança:
- Prevenção de ataques de injeção FQL/SPL com correspondência de padrões
- Aplicação da validação de certificados SSL
- Sanitização de dados para respostas de API
- Modelos de configuração seguros com placeholders seguros
- .gitignore abrangente para prevenir exposição de credenciais
🔒 Documentação de Segurança
Consulte SECURITY.md para diretrizes abrangentes de segurança, melhores práticas de configuração e procedimentos de relato de vulnerabilidades.
🔐 Plataformas Suportadas
Splunk SIEM
- Execução Segura de Consultas SPL: Execute consultas em Search Processing Language com prevenção de injeção
- Pesquisa de Eventos: Pesquise eventos de segurança em todos os índices com filtragem sanitizada
- Análise Baseada em Tempo: Intervalos de tempo validados e janelas de tempo personalizadas
- Gerenciamento Assíncrono de Jobs: Crie e monitore jobs de pesquisa com recuperação segura de resultados
- Formato de Resultado JSON: Saída estruturada com filtragem de dados sensíveis
CrowdStrike EDR
- Pesquisa Segura de Detecções: Consulte detecções usando FQL validado (Falcon Query Language)
- Detalhes de Detecção: Recupere resumos de detecção sanitizados e metadados
- Autenticação OAuth 2.0: Acesso seguro à API com gerenciamento adequado de tokens
- Validação de Entrada: Validação abrangente de parâmetros e lista de permissões
- Dados de Ameaças em Tempo Real: Acesso aos dados mais recentes de detecção de endpoints com filtragem de segurança
Microsoft MISP
- Pesquisa de Eventos: Consulte eventos MISP com sanitização e validação de entrada
- Pesquisa de Atributos IOC: Pesquise indicadores com prevenção de XSS e injeção
- Suporte a Múltiplos Formatos: Lide com vários tipos de IOC com validação de conteúdo
- Segurança SSL: Verificação de certificados obrigatória com avisos de segurança
- Integração com API RESTful: Suporte seguro à API REST do MISP com sanitização de erros
🚀 Início Rápido
Instalação
# 1. Clone the repository
git clone https://github.com/jmstar85/SecurityInfrastructure.git
cd SecurityInfrastructure
# 2. Install secure dependencies
pip install -r requirements.txt
# 3. Configure credentials securely
cp .env.example .env
# Edit .env with your platform credentials (see security guidelines)
# 4. Add to Claude Desktop configuration
# Copy config-example.json content to your Claude Desktop config
# Location: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS)
# Update paths and environment variables with your secure values
Configuração Segura
# Verify configuration security
python -c "
import json
with open('.env', 'r') as f:
content = f.read()
if 'REPLACE_WITH_YOUR' in content:
print('⚠️ Please update placeholder credentials in .env')
else:
print('✅ Configuration appears to be customized')
"
# Test server security
python src/splunk_server.py # Runs on localhost:8080
python src/crowdstrike_server.py # Runs on localhost:8081
python src/misp_server.py # Runs on localhost:8082
🔧 Ferramentas do Servidor MCP
Ferramentas Splunk SIEM (Endurecidas para Segurança)
search-events: Execute consultas SPL sanitizadas com prevenção de injeção# Example: Secure search for failed login attempts query = "index=security sourcetype=auth action=failure" # Automatically sanitized earliest_time = "-24h" # Validated time format
Ferramentas CrowdStrike EDR (Endurecidas para Segurança)
search-detections: Consulte detecções com validação FQL e lista de permissões# Example: Secure search for high severity detections filter_query = "max_severity:'high'" # Validated against injection patterns sort = "created_timestamp.desc" # Whitelisted sort options only
Ferramentas MISP (Endurecidas para Segurança)
search-events: Consulte inteligência de ameaças com sanitização de entradasearch-attributes: Pesquise IOCs com prevenção de XSS e injeção# Example: Secure search for IP-based IOCs type = "ip-dst" # Input sanitized and validated category = "Network activity" # Content filtered for safety
📁 Estrutura Otimizada do Projeto
SecurityInfrastructure/
├── src/ # Secure MCP server implementations
│ ├── splunk_server.py # Splunk SIEM integration (hardened)
│ ├── crowdstrike_server.py # CrowdStrike EDR integration (hardened)
│ └── misp_server.py # Microsoft MISP integration (hardened)
├── config/ # Secure configuration templates
│ ├── mcp-settings.json # MCP client configuration (sanitized)
│ └── splunk.yaml # Splunk configuration template
├── tests/ # Security validation tests
├── SECURITY.md # Security guidelines and best practices
├── config-example.json # Safe configuration template
├── .env.example # Environment variables template (secure)
├── .gitignore # Comprehensive credential protection
├── requirements.txt # Minimal secure dependencies
├── INSTALLATION.md # Detailed setup guide
├── setup-guide.md # Quick setup templates
└── docker-compose.yml # Container configuration
Nota: Componentes de frontend, arquivos Node.js desnecessários e artefatos de desenvolvimento foram removidos para minimizar a superfície de ataque e otimizar a postura de segurança.
🔧 Configuração Segura do Cliente MCP
Configuração do Claude Desktop (Segura)
Localização do Arquivo de Configuração:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
Modelo de Configuração Segura:
{
"mcpServers": {
"security-infrastructure-splunk": {
"command": "python",
"args": ["/FULL/PATH/TO/SecurityInfrastructure/src/splunk_server.py"],
"env": {
"SPLUNK_HOST": "REPLACE_WITH_YOUR_SPLUNK_HOST",
"SPLUNK_TOKEN": "REPLACE_WITH_YOUR_API_TOKEN",
"SPLUNK_VERIFY_SSL": "true"
}
}
}
}
⚠️ Nota de Segurança: Nunca envie credenciais reais para o controle de versão. Use os modelos fornecidos e substitua os placeholders pelos valores reais.
💻 Exemplos de Uso Seguro
Uma vez configurado com segurança no Claude Desktop, você pode usar linguagem natural para interagir com suas plataformas de segurança:
Consultas Splunk SIEM (Seguras contra Injeção)
"Search for failed SSH login attempts in the last 6 hours"
"Find all authentication events from IP 192.168.1.100"
"Show me high priority security alerts from yesterday"
"Search for events in the security index containing 'malware'"
Consultas CrowdStrike EDR (Validadas)
"Show me all high severity detections from today"
"Find endpoint detections with behavior patterns"
"List recent detections sorted by creation time"
"Search for detections on specific hostnames"
Inteligência de Ameaças MISP (Sanitizada)
"Search for events related to specific threat actors"
"Find all IP address indicators of compromise"
"Look up domain indicators from the last week"
"Search for published threat intelligence events about phishing"
🛠️ Recursos de Segurança
Implementações Centrais de Segurança
- Validação de Entrada: Sanitização e validação abrangente de todas as entradas do usuário
- Prevenção de Injeção: Proteção contra ataques de injeção SPL, FQL, SQL e XSS
- Comunicações Seguras: HTTPS/TLS 1.2+ obrigatório com suites de cifras fortes
- Sanitização de Erros: Mensagens de erro genéricas para prevenir divulgação de informações
- Segurança de Autenticação: Gerenciamento seguro de tokens/credenciais com validação adequada
Arquitetura de Segurança
- Múltiplos Métodos de Autenticação: Baseado em sessão, baseado em token e OAuth 2.0 com padrões seguros
- Aplicação de SSL/TLS: Verificação obrigatória de certificados para todas as conexões
- Segurança de API: Limitação de taxa, aplicação de timeout e limites de pool de conexões
- Segurança de Configuração: Modelos seguros, mascaramento de credenciais e proteção via .gitignore
Proteção de Dados
- Sanitização de Saída: Remoção de campos sensíveis das respostas de API
- Gerenciamento de Credenciais: Sem segredos codificados, proteção de variáveis de ambiente
- Segurança de Logs: Filtragem de dados sensíveis em logs e trilhas de auditoria
- Gerenciamento de Sessão: Expiração adequada de tokens e armazenamento seguro
📋 Requisitos
- Python 3.11+
- Credenciais de acesso seguras para plataformas de segurança (configuradas adequadamente)
- Cliente compatível com MCP (Claude Desktop recomendado)
- Certificados SSL/TLS para implantações em produção
🔐 Gerenciamento Seguro de Credenciais
Splunk SIEM (Configuração Segura)
- Token de API (fortemente recomendado) com as permissões mínimas necessárias
- Verificação do endpoint HTTPS obrigatória
- Permissões de pesquisa limitadas apenas aos índices necessários
CrowdStrike EDR (Configuração Segura)
- Client ID e Client Secret com princípio do menor privilégio
- Permissões de API: Detecções (LEITURA), escopo limitado
- Validação do Base URL e aplicação de HTTPS
Microsoft MISP (Configuração Segura)
- Chave de API com permissões somente leitura quando possível
- URL da instância MISP com validação de certificado SSL
- Configurações de timeout definidas para segurança
🧪 Validação de Segurança
Este projeto inclui validação abrangente de segurança:
# Run security validation tests
python -m pytest tests/ -v
# Validate configuration security
python -c "
import os
config_files = ['.env', 'config/mcp-settings.json']
for f in config_files:
if os.path.exists(f):
with open(f) as file:
content = file.read()
if 'REPLACE_WITH_YOUR' in content:
print(f'⚠️ {f} contains placeholder credentials')
else:
print(f'✅ {f} appears configured')
"
📊 Métricas de Segurança
- Status de Vulnerabilidades: Todos os problemas de severidade ALTA e MÉDIA resolvidos
- Cobertura de Segurança: 83% dos testes de validação de segurança aprovados
- Qualidade do Código: Validação de entrada e tratamento de erros abrangentes
- Superfície de Ataque: Minimizada por meio de remoção de componentes e otimização
🤝 Contribuindo
- Faça um fork do repositório
- Crie um branch de funcionalidade (
git checkout -b feature/security-enhancement) - Siga as diretrizes de segurança em SECURITY.md
- Adicione testes de segurança para novos recursos
- Faça commit com validação de segurança (
git commit -am 'Add secure feature') - Envie para o branch (
git push origin feature/security-enhancement) - Crie um Pull Request com checklist de revisão de segurança
📄 Licença
Este projeto é fornecido para fins de pesquisa em segurança e educacionais, com foco em práticas de implementação seguras.
🔗 Recursos de Segurança
- SECURITY.md - Diretrizes de segurança e melhores práticas
- Documentação do Protocolo MCP
- Diretrizes de Segurança OWASP
- Documentação de Segurança da API da Plataforma
🚨 Relato de Segurança
Se você descobrir uma vulnerabilidade de segurança, por favor:
- Não crie um issue público
- Envie os detalhes de segurança por e-mail ao mantenedor
- Permita um tempo razoável para correções antes da divulgação
- Siga práticas de divulgação responsável
⭐ Se você achar esta implementação segura útil, por favor, dê uma estrela!
Última Atualização de Segurança: Dezembro de 2024 - Endurecimento abrangente de segurança com remediação de vulnerabilidades e otimização.