一套全面的安全MCP(模型上下文协议)服务器实现,用于与企业级安全加固平台集成的安全基础设施。
本项目经过全面的安全加固,以解决关键漏洞并实施最佳安全实践:
参见SECURITY.md了解全面的安全指南、配置最佳实践以及漏洞报告程序。
# 1. 克隆仓库
git clone https://github.com/jmstar85/SecurityInfrastructure.git
cd SecurityInfrastructure
# 2. 安装安全依赖
pip install -r requirements.txt
# 3. 安全配置凭证
cp .env.example .env
# 使用您的平台凭证编辑.env(参见安全指南)
# 4. 添加到Claude Desktop配置
# 将config-example.json的内容复制到您的Claude Desktop配置中
# 位置:~/Library/Application Support/Claude/claude_desktop_config.json(macOS)
# 更新路径和环境变量以使用安全值
# 验证配置安全性
python -c "
import json
with open('.env', 'r') as f:
content = f.read()
if 'REPLACE_WITH_YOUR' in content:
print('⚠️ 请在.env中更新占位符凭证')
else:
print('✅ 配置似乎已定制')
"
# 测试服务器安全性
python src/splunk_server.py # 在localhost:8080运行
python src/crowdstrike_server.py # 在localhost:8081运行
python src/misp_server.py # 在localhost:8082运行
search-events:执行具有注入防护的净化SPL查询
# 示例:安全搜索失败登录尝试
query = "index=security sourcetype=auth action=failure" # 自动净化
earliest_time = "-24h" # 验证的时间格式
search-detections:使用FQL验证和白名单查询检测
# 示例:安全搜索高严重性检测
filter_query = "max_severity:'high'" # 验证注入模式
sort = "created_timestamp.desc" 仅限白名单排序选项
search-events:查询威胁情报时进行输入净化search-attributes:搜索IOCs时防止XSS和注入攻击
# 示例:安全搜索基于IP的IOCs
type = "ip-dst" # 输入净化和验证
category = "网络活动" # 内容过滤以确保安全
SecurityInfrastructure/
├── src/ # 安全的MCP服务器实现
│ ├── splunk_server.py # Splunk SIEM集成(加固)
│ ├── crowdstrike_server.py # CrowdStrike EDR集成(加固)
│ └── misp_server.py # Microsoft MISP集成(加固)
├── config/ # 安全配置模板
│ ├── mcp-settings.json # MCP客户端配置(净化)
│ └── splunk.yaml # Splunk配置模板
├── tests/ # 安全验证测试
├── SECURITY.md # 安全指南和最佳实践
├── config-example.json # 安全配置模板
├── .env.example # 环境变量模板(安全)
├── .gitignore # 综合的凭证保护
├── requirements.txt # 最小安全依赖
├── INSTALLATION.md # 详细的安装指南
├── setup-guide.md # 快速安装模板
└── docker-compose.yml # 容器配置
注意: 前端组件、不必要的Node.js文件和开发工件已被删除,以最小化攻击面并优化安全态势。
配置文件位置:
~/Library/Application Support/Claude/claude_desktop_config.json%APPDATA%\Claude\claude_desktop_config.json安全配置模板:
{
"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"
}
}
}
}
⚠️ 安全提示: 切勿将真实凭证提交到版本控制。使用提供的模板并替换占位符为实际值。
一旦通过Claude Desktop安全配置,您可以使用自然语言与您的安全平台交互:
“搜索过去6小时内失败的SSH登录尝试”
“查找来自IP 192.168.1.100的所有身份验证事件”
“显示昨天的高优先级安全警报”
“搜索安全索引中包含‘恶意软件’的事件”
“显示今天的所有高严重性检测”
“查找具有行为模式的终端检测”
“按创建时间列出最近的检测”
“搜索特定主机名上的检测”
“搜索与特定威胁参与者相关的事件”
“查找所有IP地址指示器”
“查找上周的域名指示器”
“搜索关于网络钓鱼的已发布的威胁情报事件”
此项目包括全面的安全验证:
# 运行安全验证测试
python -m pytest tests/ -v
# 验证配置安全性
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} 包含占位符凭证')
else:
print(f'✅ {f} 看起来已配置')
"
git checkout -b feature/security-enhancement)git commit -am '添加安全功能')git push origin feature/security-enhancement)本项目旨在进行安全研究和教育,重点在于安全实现实践。
如果您发现安全漏洞,请:
⭐ 如果您觉得这个安全实现有用,请给它一个星!
最新安全更新: 2024年12月 - 全面的安全加固,漏洞修复和优化。