Token导航 LogoToken导航TokenDH.com
Compuute Scan logo
安全风控stdio官方级别未说明来源级核验

Compuute Scan

MCP Server

compuute-scan

开源安全扫描工具,用于检测MCP服务器的沙箱、代码执行、依赖和供应链风险,支持多种语言。

工具数

0

提示词数

0

GitHub Stars

0

资源数

0
安全开源工具JavaScript多语言支持

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

Compuute

提供方

Compuute

最后核验

2026/5/17 20:23

运行时

Node.js

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

命令预览

npx compuute-scan ./path/to/mcp-server

详细介绍

复合 扫描

MCP服务器的开源安全扫描程序。使用官方MCP SDK检测所有语言的沙盒、代码执行、依赖关系和供应链风险:TypeScript、JavaScript、Python、Go、Rust、C#、Java和Kotlin。零依赖。

](#) ![License](#license) ![CI](https://github.com/Compuute/compuute-scan/actions/workflows/ci.yml)

v0.6.0--现在使用。NET、Java和Kotlin支持。 与该官员一同获释 微软MCP C#SDK v1.0 (2026年3月)和官方Java/Spring MCP SDK。第一个使用官方MCP SDK覆盖所有语言的安全扫描程序。

______________________________________________________________________

它的作用

compuute-scan 在部署之前分析MCP(模型上下文协议)服务器源代码的安全漏洞。它完全离线运行,不需要API密钥,并涵盖 L0发现, L1喷砂,以及 依赖级别风险 --每个MCP服务器所需的基础安全层。

通过官方MCP SDK支持每种语言: TypeScript、JavaScript、Python、Go、Rust、C#、Java和Kotlin。符合MCP 2025-11-25规范,与官方Microsoft C#SDK、Java/Spring SDK和社区TypeScript/Python/Go/Rust SDK兼容。

快速开始

npx compuute-scan ./path/to/mcp-server

或者使用Docker隔离(建议用于客户端代码):

git clone https://github.com/Compuute/compuute-scan.git
cd compuute-scan
docker compose build
./scan.sh clone https://github.com/org/mcp-server.git
./scan.sh run mcp-server --output audit-report.md

安装

# npm (global)
npm install -g compuute-scan

# npx (no install)
npx compuute-scan ./mcp-server

# Docker (isolated scanning)
git clone https://github.com/Compuute/compuute-scan.git
cd compuute-scan
docker compose build

要求: Node.js 18+。不 npm install 需要——零外部依赖。

它扫描什么

VIGIL安全层

图层焦点可用性
10个发现——传输检测、工具清单、依赖关系固定开源
L1级沙盒-- eval(), exec.Command, pickle.loads,路径遍历,CORS,SSL旁路开源
二级授权——RBAC、机密、JWT、PII/GDPR、加密计算机专业审计
三级工具完整性——SSRF、SQL注入、快速注入、供应链计算机专业审计
L4监控——审计日志记录、速率限制、错误泄漏、ReDoS计算机专业审计

开源规则(L0+L1)

每个文件37条规则+2条否定规则+3项依赖性检查 涵盖代码执行、沙盒、发现和供应链:

类别示例
代码执行eval(), exec.Command, pickle.loads, yaml.load, Runtime.exec, Process.Start
反序列化BinaryFormatter, ObjectInputStream, SoapFormatter --禁止。NET和Java接收器
路径遍历未初始化的文件路径,丢失 realpath() 检查
CORS配置错误通配符起源于Express、Starlette、rs/cors、ASP。NET核心 AllowAnyOrigin,春天 @CrossOrigin
SSL/TLS旁路verify=False, rejectUnauthorized: false, InsecureSkipVerify, danger_accept_invalid_certs
SQL注入Python f-string,Go fmt.Sprintf,生锈 format!()C SqlCommand,Java JDBC字符串连接
命令注入在所有8种语言中使用不受信任的输入执行Shell
认证旁路 C [AllowAnonymous],春天 permitAll() 关于敏感端点
内存安全生锈 unsafe {} 块,缺失 #[deny(unsafe_code)]
不安全随机Math.random(), random.choices(), rand.Intn() 用于安全上下文
模板注入去吧 text/template 用于HTML输出
安全标头头盔/安全头中间件缺失
已知CVE(离线)40多个顶级npm/PyPI/Go包,包含精心策划的易受攻击版本范围
依赖年龄在当前版本之后打包两个或多个主要版本
许可证合规性Copyleft许可证(GPL、AGPL、LGPL、SSPL) node_modules
发现运输检测、工具库存、跨8个包管理器的依赖性锁定

语言特定规则

语言MCP SDK状态密钥检测
Types/JS官方(人物)eval, child_processCORS、npm钩子、未固定的git deps
python官方(人物)pickle、YAML不安全加载、f-string SQL、Starlette CORS、, verify=False
官方exec.Command+sh, fmt.Sprintf SQL, InsecureSkipVerify, text/template XSS, rs/cors
官方unsafe {}, Command::new + format!,SQL通过 format!, danger_accept_invalid_certs
C网官方(微软,2026年3月)Process.Start, SqlCommand 海螺, [AllowAnonymous], BinaryFormatter, AllowAnyOrigin
Java官方(Spring/Java)Runtime.execJDBC连接, ObjectInputStream,春天 permitAll, @CrossOrigin(*)
Kotlin通过Java SDK与Java相同——JDBC、ObjectInputStream、Spring安全

解析的依赖关系文件

package.json, requirements.txt, pyproject.toml, go.mod, Cargo.toml, .csproj, pom.xml, build.gradle, build.gradle.kts.

警卫检测

扫描仪检查 ±15线窗口 围绕缓解模式的每个发现(validatePath(), sanitize(), realpath()等等)。报告中仍有缓解的发现,严重程度降低了一级——没有什么隐藏的,但噪音减少了。

负面检查

检测 缺席 整个代码库的安全控制:没有输入验证(zod/pydantic),没有安全头(helm)。仅靠模式匹配无法捕捉到的架构风险。

全面安全评估

开源扫描程序涵盖了基础的L0-L1风险和依赖性级别检查。生产MCP部署,特别是那些受NIS2、DORA或GDPR约束的部署,需要通过跨文件污染跟踪和合规性证据进行更深入的分析:

你得到什么分析
L2授权RBAC、秘密管理、JWT/OAuth、PII/GDPR合规性、弱加密知识图驱动
L3工具完整性SSRF、注射、即时中毒、反应中的PII、供应链毒物跟踪
L4运行时监控审计日志记录、速率限制、错误泄漏、ReDoS跨文件行为

OWASP Top 10(10/10)。NIS2第21条(7/7)。GDPR(6/6)。多拉(4/7)。 开源层标识。审计层跟踪攻击路径,生成可归档的合规性证据,并根据可达性(而不仅仅是存在性)进行优先级排序。

预订计算专业审计 --完整的L0-L4评估,包括OWASP、NIS2、GDPR和DORA的合规性映射。

Docker隔离扫描

对于客户参与, scan.sh 提供了一个强化的工作流程,扫描的代码永远不会接触到主机文件系统:

┌──────────────┐         ┌──────────────────────┐
│  clone       │         │  scan                │
│  (git only)  │────────▶│  --network none      │
│  bridge net  │  volume │  read-only fs        │
└──────────────┘         │  cap_drop ALL        │
                         │  no-new-privileges   │
                         │  512MB / 1 CPU       │
                         └──────────────────────┘
属性克隆容器扫描容器
网络网桥(仅限git) --零网络堆栈
文件系统只读+tmpfs只读
功能仅限NET_RAW都掉下来了
用户非root(scanner)非根(scanner)
资源0.5个CPU,256MB1个CPU,512MB
./scan.sh clone https://github.com/org/mcp-server.git   # Clone to isolated volume
./scan.sh run mcp-server --output audit.md               # Scan — zero network
./scan.sh local ~/code --output local-audit.md           # Scan local dir (mounted :ro)
./scan.sh list                                            # List cloned repos
./scan.sh clean mcp-server                                # Remove client code

CLI选项

compuute-scan 
 [options]

  --output, -o         Write report to file
  --json                     Output as JSON
  --sarif                    Output as SARIF (GitHub Code Scanning)
  --layer             Filter by VIGIL layer
  --min-severity      Filter: critical, high, medium, low
  --fail-on-severity  Exit code 1 if findings >= severity (for CI)
  --verbose                  Show files being scanned
  --help, -h                 Show help

CI集成

# GitHub Actions example
- run: npx compuute-scan ./src --fail-on-severity high --sarif --output results.sarif
- uses: github/codeql-action/upload-sarif@v3
  with:
    sarif_file: results.sarif

添加规则

从v0.5.0开始,扫描仪按以下模块组织 src/ 并连接成 compuute-scan.js 通过 scripts/build.js。不要编辑顶级 compuute-scan.js 直接生成输出。

规则活在 src/rules-l1.js 作为对象:

{
  id: 'L1-037',
  title: 'Description',
  layer: 'L1',
  severity: 'high',
  owasp: 'A03:2021 Injection',
  nis2: 'Art. 21(2)(e)',
  description: 'What the rule detects',
  recommendation: 'How to fix it',
  test: (line) => /pattern/.test(line),
  guards: [/mitigationPattern/],
}

构建和运行测试:

npm run build      # regenerates compuute-scan.js from src/
npm test           # runs the 231-assertion suite
npm run verify     # runs the supply-chain integrity check

更改日志.md 发布历史和 ROADMAP.md 对于计划中的功能。

测试

npm test

该测试套件运行231个断言,涵盖URL验证、评分、凭证编辑、速率限制、内联忽略处理、配置加载、函数边界检测、每个规则的规则模式匹配、依赖CVE/age检查和端到端自扫描。

许可证

麻省理工学院——见 许可证.

联系

公司 AB --代理AI安全 daniel@compuute.se | compuute.cn

目录标签

目录标签

安全开源工具JavaScript多语言支持安全扫描本地部署MCP服务器依赖检测

接入字段

传输方式(transport,传输协议)

stdio

鉴权方式(authType,认证方式)

oauth

运行时(runtime,运行环境)

Node.js

来源包(packageName,安装包名)

compuute-scan

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

stdiooauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

来源信息

继续浏览同类 MCP