自动化渗透测试平台

Unburden 是一个利用LLM和MCP服务器的自动化渗透测试平台,通过自然语言编排工作流程,自主选择工具、执行命令并呈现结构化结果。

  • by ghostvyle
  • Python
  • 本地部署
  • 5 星标
  • 更新于
在 GitHub 查看 ghostvyle/Unburden

使用说明

Unburden–使用LLM和MCP服务器的自动渗透测试平台

自主渗透测试•网络侦察•OSINT•漏洞利用执行


概述

倾诉 是一个使用LLM和MCP服务器的自动渗透测试平台,通过自然语言编排工作流。与手动运行Nmap、Metasploit或OSINT实用程序等工具不同,您可以用简单的语言描述您想要什么——代理自主选择工具、执行命令并呈现结构化结果。

它集成了 84安全工具 跨4个MCP(模型上下文协议)服务器,由本地LLM(Qwen3:14B通过Ollama)和LlamaIdex代理框架提供支持。

特性

🔍 网络

  • 主机发现 --ARP扫描、ping、ifconfig
  • 端口扫描 --与8个工具(SYN、TCP、UDP、版本检测、操作系统指纹识别)完全集成Nmap
  • 服务标识 --自动服务和版本检测

🛡️ 剥削

  • Metasploit框架 --用于漏洞利用搜索、配置、执行和会话管理的12个工具
  • 反向壳 --支持Meterpreter的自动有效载荷生成
  • 会话管理 --交互式会话控制、命令执行和文件操作

🌐 公开来源情报

  • 61 OSINT工具 --域名查找、电子邮件收集、社交媒体分析、数据泄露搜索
  • 自动化情报收集 --来自多个来源的结构化输出

📊 报告

  • 自动生成报告 --渗透测试结果汇编成Markdown报告
  • 聊天记录 --通过搜索、导出和导入实现完整的对话持久性
  • 日志管理 --下载并查看原始工具输出

截图

主界面 渗透测试模式

建筑

Unburden跟随a 三层架构:

┌─────────────────────────────────────────────┐
│  Presentation Layer                         │
│  React + TypeScript + Vite + TailwindCSS    │
├──────────────────┬──────────────────────────┤
│                  │ HTTP REST                │
├──────────────────┴──────────────────────────┤
│  Business Logic Layer                       │
│  FastAPI + Uvicorn                          │
│  ├── Agent Manager (LlamaIndex)             │
│  ├── MCP Client Manager                     │
│  └── LLM Manager (Ollama + Qwen3:14B)      │
├─────────────────────────────────────────────┤
│  External Services Layer                    │
│  ├── Nmap MCP Server      (8 tools)         │
│  ├── Metasploit MCP Server (12 tools)       │
│  ├── OSINT MCP Server     (61 tools)        │
│  ├── Network MCP Server    (3 tools)        │
│  └── Ollama API           (Qwen3:14B)       │
└─────────────────────────────────────────────┘

关键技术:

组件 技术
前端 React 18、TypeScript、Vite、TailwindCSS
后端API FastAPI 0.116,Uvicorn,Python 3.11+
AI代理 LlamaIdex 0.13(代理工作流)
LLM Qwen3:14B通过Ollama(局部推理)
工具协议 模型上下文协议(MCP)1.12
开发 Metasploit框架(pymetasploit3)
扫描 Nmap(CLI包装器)

先决条件

本土的

  • Linux (在Kali Linux/Ubuntu上测试)
  • Python 3.11+
  • Node.js 18+ 和npm
  • 奥拉玛 随着 qwen3:14b 模型已拉
  • Metasploit框架 (msfrpcd)
  • 扫描器 全系统安装

安装

1.克隆存储库

git clone https://github.com/your-org/Unburden.git
cd Unburden

2.设置Python环境

python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

3.设置前端

cd src/frontend
npm install
npm run build
cd ../..

4.拉动LLM模型

ollama pull qwen3:14b

5.配置环境变量

cp src/frontend/.env.example src/frontend/.env

编辑 src/frontend/.env 如果远程部署(默认适用于 localhost).

用法

快速开始

./Unburden.sh

这将:

  1. 激活Python虚拟环境
  2. 开始 msfrpcd (Metasploit RPC守护进程)
  3. 在上启动应用程序服务器 端口7777

接入点

URL 描述
http://localhost:7777/app Web界面
http://localhost:7777/docs API文档(Swagger)
http://localhost:7777/health 健康检查端点

工作流示例

  1. 创建新聊天 → Click [NEW CHAT]
  2. 启用渗透测试模式 → Click [PENTEST: OFF] 切换到 [ON]
  3. 设定目标 → 出现提示时输入目标IP
  4. 用自然语言提问:
    Discover active hosts on the vboxnet0 network
    
  5. 代理将自主选择适当的工具(例如。, arp_scan),执行它,并返回结构化结果
  6. 生成报告 → Click [GEN] 汇编调查结果

项目结构

Unburden/
├── Unburden.sh                 # Launch script (native)
├── requirements.txt            # Python dependencies
├── README.md                   # Project documentation
├── assets/                     # Static assets
├── config/                     # LLM profiles & runtime config
├── src/
│   ├── Unburden.py             # Main entry point
│   ├── backend/
│   │   ├── main.py             # FastAPI application setup
│   │   ├── agent/              # LlamaIndex agent manager
│   │   ├── chat/               # Chat history & session management
│   │   ├── config/             # Backend configuration
│   │   ├── mcp/                # MCP client & LLM manager
│   │   ├── models/             # Pydantic schemas
│   │   ├── reports/            # Report generation
│   │   ├── routes/             # FastAPI route handlers
│   │   └── utils/              # Shared utilities
│   └── frontend/
│       ├── src/                # React components
│       ├── package.json        # Frontend dependencies
│       └── vite.config.ts      # Build configuration
├── mcp_servers/
│   ├── config/                 # MCP server registry
│   └── servers/
│       ├── metasploit/         # Metasploit MCP server (12 tools)
│       ├── nmap/               # Nmap MCP server (8 tools)
│       ├── osint/              # OSINT MCP server (61 tools)
│       └── network/            # Network utilities MCP server (3 tools)
└── docs/                       # Documentation & thesis

MCP服务器

每个MCP服务器都是一个独立的进程,通过以下方式进行通信 工作室 使用 模型上下文协议:

服务器 工具 说明
扫描器 8 主机发现、端口扫描、服务检测、操作系统指纹识别
Metasploit 12 利用搜索/执行、会话管理、反向shell
公开来源情报 61 域名查找、电子邮件收集、违规搜索、社交分析
网络 3 Ping,接口信息,ARP扫描

服务器已在中注册 mcp_servers/config/system_mcp_servers.json 并在启动时同时连接。


许可证

保留所有权利。此项目是专有的,未经明确许可,不得复制、修改或分发。


Unburden v1.0.0 •网络安全人工智能助理