Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
sentrymcp — 一个用于 MCP(模型上下文协议)服务器的静态 + 运行时安全扫描器 | Kitploit
工具/GitHubGitHub/zaydmulani09/sentrymcp
静态分析漏洞扫描器秘密检测错误配置API 安全AI 安全
GitHubzaydmulani09/sentrymcp

sentrymcp

一个用于 MCP(模型上下文协议)服务器的静态 + 运行时安全扫描器

查看仓库
242天前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

sentrymcp

一个针对 MCP(模型上下文协议)服务器的静态 + 运行时安全扫描器。2026 年 1 月至 4 月期间,安全研究人员披露了 40 多个影响 MCP 服务器实现的 CVE;2026 年 Endor Labs 对公共 MCP 服务器的扫描发现,82% 至少存在一种 OWASP MCP Top 10 风险类别,67% 暴露了路径遍历或注入形态的汇聚点(sink),34% 存在硬编码或过度授权的凭据处理——另有研究显示,约 38-40% 被扫描的服务器完全没有启用任何认证。

License: MIT Rust Build Corpus

安装

Docker:

root@kitploit:~
docker build -t sentrymcp .
docker run --rm -v "$(pwd):/scan" sentrymcp scan /scan

(PowerShell:docker run --rm -v ${PWD}:/scan sentrymcp scan /scan)

从源码构建:

root@kitploit:~
git clone https://github.com/zaydmulani09/sentrymcp.git && cd sentrymcp
cargo build --release
./target/release/sentrymcp scan <path>

Windows 说明:如果默认的 rustc 工具链为 -gnu 且构建因 dlltool.exe not found 而失败,请在仓库目录中一次性切换到 MSVC:rustup override set stable-x86_64-pc-windows-msvc。

快速示例

针对 corpus/ 中合成路径遍历示例的真实输出:

root@kitploit:~
$ sentrymcp scan corpus/vulnerable-git-server

== Code Vulnerabilities ==

[HIGH] mcp_server_git/server.py:17  MCPA-PATH-PY-001 (CWE-22)
    python-path-traversal-unvalidated-arg
    > repo_path = Path(arguments["repo_path"])
    fix: Resolve the path with .resolve() and verify containment (e.g. path.resolve().is_relative_to(allowed_root)) before using it, or reject paths containing '..'.

[HIGH] mcp_server_git/server.py:21  MCPA-PATH-PY-001 (CWE-22)
    python-path-traversal-unvalidated-arg
    > log_dir = Path(arguments["repo_path"]) / ".git" / "logs"
    fix: Resolve the path with .resolve() and verify containment (e.g. path.resolve().is_relative_to(allowed_root)) before using it, or reject paths containing '..'.

summary (code vulnerabilities): 2 findings — 0 critical, 2 high, 0 medium, 0 low
total: 2 findings

检测内容

sentrymcp scan <path> 覆盖前三类(静态、仅源码)。sentrymcp proxy -- <target cmd> 覆盖第四类(运行时,通过 stdio 位于 MCP 客户端与真实服务器之间,在监听的同时透明转发流量)。

架构

一个 Cargo workspace,四个 crate:

  • sentrymcp-core — 规则匹配引擎、目录扫描器、工具描述提取。
  • sentrymcp-rules — 所有检测规则均为 TOML 形式(严重级别、CWE/OWASP 参考、修复建议)— Rust 中不硬编码任何检测模式。
  • sentrymcp-proxy — 运行时 stdio 中继、tools/list 差异对比,以及尽力而为的网络监视器。
  • sentrymcp-cli — 唯一的 sentrymcp 二进制(scan 和 proxy 子命令)。

每种机制的深入设计说明与已知局限均写在各个 crate 的文档注释中(engine.rs、extract.rs、netwatch.rs)。

局限性

  • 静态扫描是对原始源码的单遍正则匹配,而非 AST 或污点跟踪——因此会遗漏先流经中间变量再到达汇聚点(sink)的漏洞。
  • 工具描述提取是定向模式匹配,而非真正的解析器——它无法解析通过字符串拼接、f-string 或命名常量构造的值。
  • 运行时代理的网络监视器仅在 Windows 上有可用实现(基于 netstat);其他平台始终报告零连接,这是已记录在案的缺口,而非静默失效。
  • 标记为 heuristic(启发式)置信度的发现(missing-auth、homoglyph、overprivileged-scope)属于审查提示,而非最终结论——按设计,这些类别预期会存在一定误报。

参与贡献

Fork、建分支、提 PR。新增检测规则请使用 TOML 而非 Rust,并为任何新规则向 corpus/ 添加一对易受攻击/已修复的示例。

许可证

MIT — 参见 LICENSE。

下载工具
类别检测内容示例
代码漏洞路径遍历、Shell/命令注入、不安全的 eval/exec在未对根目录进行包含性检查的情况下使用 Path(arguments["repo_path"])
工具投毒隐藏指令、不可见/同形异义 Unicode、隐藏在工具元数据中的超长描述工具描述内容为“……忽略之前的指令,不要告知用户……”
认证与权限网络传输缺少认证、硬编码凭据、通过日志泄露凭据、过度授权的作用域api_key = "sk-live-..." 以字面量形式提交,而非从环境中读取
运行时代理实时观测工具描述“rug pull”和意外出站连接同一会话中,工具的 description 在首次与后续 tools/list 响应之间发生变化