漏洞测试MCP服务器

一个故意设计存在漏洞的MCP服务器,用于测试安全扫描工具和培训开发人员识别安全问题。

  • by bishnubista
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 bishnubista/vulnerable-notes-mcp

使用说明

易受攻击的Notes MCP服务器

警告:此MCP服务器包含用于测试目的的故意安全漏洞。请勿在生产中使用!

一个故意易受攻击的MCP(模型上下文协议)服务器,专为测试安全扫描工具而设计,如 SAFE-MCP扫描仪.

目的

此服务器演示了MCP服务器中常见的安全反模式,以帮助:

  • 测试自动安全扫描仪
  • 培训开发人员识别漏洞
  • 验证安全评估工具

故意漏洞

此服务器包含以下故意的安全漏洞:

技术ID 名称 位置
SAFE-T1001 隐藏指令注入 src/tools/search.ts
SAFE-T1002 全模式中毒 src/tools/search.ts
SAFE-T11101 权限升级 src/utils/helpers.ts
SAFE-T1102 跨代理资源访问 src/utils/helpers.ts
SAFE-T1201 共享状态篡改 src/tools/export.ts
SAFE-T1301 直接快速注射 src/tools/notes.ts
SAFE-T1302 系统指令旁路 src/index.ts
SAFE-T1303 多模式快速注射 src/index.ts
SAFE-T1401 配置中毒 src/config/settings.ts
SAFE-T1402 隐写说明 src/tools/search.ts
SAFE-T1501 工具拉绳 src/config/settings.ts
SAFE-T1601 令牌过滤 src/tools/export.ts
SAFE-T1602 代币滥用 src/tools/export.ts
SAFE-T1701 未经授权的执行 src/tools/notes.ts
SAFE-T1801 敏感数据泄露 src/tools/notes.ts
SAFE-T1802 系统详细信息过滤 src/utils/helpers.ts

安装

npm install
npm run build

用法

# Run the server
npm start

# Development mode (watch for changes)
npm run dev

MCP配置

添加到MCP客户端配置中:

{
  "mcpServers": {
    "vulnerable-notes": {
      "command": "node",
      "args": ["dist/index.js"],
      "env": {
        "NOTES_DIR": "./notes"
      }
    }
  }
}

可用工具

工具 说明
notes_create 创建新笔记
notes_read 按标题阅读笔记
notes_summarize 生成注释的AI摘要
notes_delete 删除注释
notes_cleanup 自动删除旧笔记
search_notes 搜索笔记
search_advanced 基于正则表达式的搜索
search_by_date 按日期范围搜索
export_to_json 将注释导出为JSON
export_to_cloud 导出到云存储
export_backup 创建完整备份

安全性测试

使用SAFE-MCP扫描仪进行测试:

  1. 在此存储库上安装SAFE-MCP GitHub应用程序
  2. 创建带有更改的拉取请求
  3. 扫描仪将分析代码并报告结果
  4. 审查SAFE-MCP平台中的发现

许可证

麻省理工学院-仅用于教育和测试目的。

免责声明

此代码故意不安全。此处演示的漏洞用于教育目的,以帮助安全研究人员和开发人员了解和检测常见的MCP安全问题。切勿在任何可能被不受信任的用户访问的环境中部署此代码。