PurpleAILAB/Decepticon
GitHub: PurpleAILAB/Decepticon
基于多智能体的自主红队测试平台,通过 AI 智能体自动化执行渗透测试全流程。
Stars: 864 | Forks: 161
[](README.md)
[](./docs/README_KO.md)
Decepticon - Vibe Hacking 智能体
https://github.com/user-attachments/assets/92e1dffd-92af-4d63-b682-c4a1810586a9
[CLI Demo](.github/cli.gif)
[CLI Demo](.github/cli.gif)
📚 目录
- [💡 Community Contribution ](#-community-contribution) - [💡 What is Vibe Hacking ?](#-what-is-vibe-hacking-) - [💡 Why Decepticon?](#-why-decepticon) - [Quick Start](#-quick-start) - [Key features](#key-features) - [Agents](#-agents) - [🔴 Red Team Agents](#-red-team-agents) - [🔵 Utility Agents](#-utility-agents) - [Multi-Agent-System Architecture](#multi-agent-system-architecture) - [Replay](#replay) - [Installation](#-installation) - [Advanced AI Models](#-advanced-ai-models) - [☁️ Cloud Models](#️-cloud-models) - [🏠 Local Models (Ollama)](#-local-models-ollama) - [MCP Support](#-mcp-support) - [Supported MCP Transports](#-supported-mcp-transports) - [`mcp_config.json` Structure](#-mcp_configjson-structure) - [Example](#-example) - [⚠️ Experimental Technology Disclaimer](#️-experimental-technology-disclaimer) - [🤝 Contributing](#-contribution) - [What You Can Contribute](#-what-you-can-contribute) - [Migrate Security Tools to MCP Format](#-migrate-security-tools-to-mcp-format) - [Develop ReAct-style Red Team Agents](#-develop-react-style-red-team-agents) - [Architect Multi-Agent Flows](#-architect-multi-agent-flows) - [How to Contribute](#-how-to-contribute) - [Join the Community](#-join-the-community) - [📝 License](#-license)

## 💡 什么是 **Vibe Hacking** ?
**Vibe Hacking** 是由 PurpleAILAB 定义的进攻性安全领域新范式。
与依赖手动执行的传统红队方法不同,在 Vibe Hacking 中,**AI 智能体自主执行红队任务**。
## 💡 为什么选择 **Decepticon**?
随着智能体变得越来越复杂,攻击者也随之进化。
从 AI 驱动的网络钓鱼到自学习恶意软件,攻击技术正变得日益自动化和智能化。
为了有效防御 AI 驱动的威胁,**我们必须行动得更快**——而且**我们必须先发制人**。
**Decepticon** 正是为这一目的而设计:在攻击者实现自动化之前,利用 AI 智能体自动化红队测试。
Decepticon 构建于 **LangChain/LangGraph** 的坚实基础之上,并与蓬勃发展的 AI 智能体生态系统共同成长。通过利用驱动 AI 未来的前沿框架,我们确保了兼容性、可扩展性以及通过社区协作实现的持续创新。
将重复性和手动任务委托给智能体,专注于直觉和决策,从而实现 **网络安全主管** 的真正本质。
## 快速开始
### 1. 设置环境
```
uv venv
uv sync
or
uv pip install -e .
```
### 2. 复制环境文件
```
cp .env.example .env
```
### 3. Docker (10分 ~ 20分)
```
docker-compose up -d --build
```
### 4. 运行 MCP 服务器
#### 选项 1: 使用提供的脚本
- 在 Windows 上:
```
./run_mcp.ps1
```
- 在 macOS/Linux 上:
```
./run_mcp.sh
```
#### 选项 2: 手动运行
```
python src/tools/mcp/(your mcp server).py
```
### 4. 运行 CLI 或 Web 界面
```
python frontend/cli/cli.py
streamlit run frontend/streamlit_app.py
```
## 核心功能
### 智能体
#### 🔴 红队智能体
- **侦察智能体**: 网络扫描、服务枚举、漏洞发现
- **初始访问智能体**: 漏洞利用、凭证攻击、系统入侵
- **权限提升智能体**(计划中): 权限提升和横向移动
- **防御规避智能体**(计划中): 反检测和隐蔽技术
- **持久化智能体**(计划中): 维持访问和后门安装
- **执行智能体**(计划中): 命令执行和载荷部署
#### 🔵 实用工具智能体
- **规划智能体**: 协调整个行动的战略大脑
- **摘要智能体**: 分析汇总、报告和文档编制
- **主管智能体**(计划中): 工作流编排和决策路由
### 多智能体系统架构
**灵活的架构选项:**
- **群体架构**: 智能体之间直接的对等通信与协作
- **主管架构**(计划中): 由主管管理工作流的集中式控制
- **混合架构**(计划中): 结合直接通信与集中监督的混合方法
- **您的自定义架构**
### 重播
重播功能的实现旨在最大化 Decepticon 开源社区内的协作与知识共享。
请通过 PR 分享您的使用方法和执行结果!
1. **执行结果保存**在 `logs/` 文件夹下
2. **重播功能**: 点击聊天历史按钮,重播存储在 `logs/` 文件夹下的 JSON 格式日志
3. **社区分享**: 使用导出功能与社区分享!
## 安装
### 1. **克隆仓库**
```
git clone https://github.com/PurpleCHOIms/Decepticon.git
cd Decepticon
```
### 2. **安装依赖**
**UV (推荐)**
```
# 创建虚拟环境
uv venv
# 安装依赖
uv pip install -e .
```
### 3. 环境文件 .env
```
# 创建环境文件
cp .env.example .env
```
```
# 配置 API 密钥
# LLM API
OPENAI_API_KEY=your-api-key
ANTHROPIC_API_KEY=your-api-key
OPENROUTER_API_KEY=your-api-key
# Langsmith
LANGSMITH_TRACING=true
LANGSMITH_ENDPOINT="https://api.smith.langchain.com"
LANGSMITH_API_KEY=your-api-key
LANGSMITH_PROJECT=Decepticon
LANGGRAPH_API_URL=http://127.0.0.1:2024
```
### 4. Docker 设置
```
# 启动包含目标的 Kali Linux 容器
docker-compose up -d
```
### 5. 运行 MCP 服务器
```
python src/tools/mcp/(your mcp server).py
```
### 8. 命令行界面
```
# 运行命令行界面
python frontend/cli/cli.py
```
### 7. Web 界面
```
# 运行 Web 界面
streamlit run frontend/web/streamlit_app.py
```
## 高级 AI 模型
### ☁️ 云端模型
- **OpenAI**: 4.1, 4o, 4o Mini, o4 Mini, o3 Mini, o1 Mini, o1, o3
- **Anthropic**: Sonnet 4, Opus 4, Sonnet 3.7, Sonnet 3.5, Haiku 3.5,
### 🏠 本地模型
- 您已安装的模型
## MCP 支持
本项目支持通过 [LangGraph MCP Adapter](https://github.com/langchain-ai/langchain-mcp-adapters) 加载工具。
您可以在名为 `mcp_config.json` 的配置文件中定义您的 MCP 工具。
工具按**智能体名称**分组,每个智能体可以拥有多个 MCP 服务器。
### 支持的 MCP 传输方式
- `stdio` - 标准输入/输出通信
- `streamable_http` - 基于 HTTP 的流式通信
### `mcp_config.json` 结构
```
{
"agent_name": {
"mcp_server_1": {
"command": "python",
"args": ["./path/to/script.py"],
"transport": "stdio"
},
"another_mcp_server_streamable_HTTP": {
"url": "mcp-url"
}
}
}
```
### 示例
```
{
"reconnaissance": {
"reconnaissance": {
"command": "python",
"args": ["./src/tools/mcp/Reconnaissance.py"],
"transport": "stdio"
},
"desktop_commander": {
"url": "https://server.smithery.ai/@wonderwhy-er/desktop-commander/mcp?api_key=your-api-key"
}
},
"initial_access": {
"initial_access": {
"command": "python",
"args": ["./src/tools/mcp/Initial_Access.py"],
"transport": "stdio"
}
}
}
```
**添加新的 MCP 工具:**
1. 在 `src/tools/mcp/` 下创建您的 MCP 工具脚本
2. 在 `mcp_config.json` 中添加相应的条目
3. 重启应用程序以加载新工具
## ⚠️ 实验性技术免责声明
**Decepticon** 是一个目前正在积极开发中的实验性项目。它尚不稳定,可能包含错误、功能不完整或经历破坏性变更。
我们正与社区公开构建此项目,并热烈欢迎:
- 错误报告
- 功能请求
- 拉取请求
- 良好的氛围
请通过提交 issue 或 PR 帮助我们改进 Decepticon(参见下文的贡献方式)!
## 🤝 贡献
我们欢迎社区的贡献,使这个项目更好、更强大、更安全。
无论您是经验丰富的开发者、安全研究人员,还是刚接触开源,都有很多参与方式。
### 您可以贡献什么
#### 1. 将安全工具迁移为 MCP 格式
帮助将现有的安全工具转化为模块化、兼容 LangGraph 的 **MCP (模块化命令协议) 工具**。
- 使用标准 MCP 接口(`stdio` 或 `streamable_http`)封装工具
- 确保与 `langgraph-mcp-adapter` 兼容
- 将它们放置在 `src/tools/mcp/` 下
#### 2. 开发 ReAct 风格的红队智能体
为红队行动设计和改进 ReAct 风格的智能体:
- 侦察
- 初始访问
- 权限提升
- 持久化等
贡献方式:
- 在 `src/prompts/` 下创建定制提示词
- 实现具有特定能力的新智能体
- 改进任务规划和内存使用
#### 3. 架构多智能体流程
为多智能体编排层的设计和优化做出贡献:
- 提议新的工作流或智能体角色
- 改进智能体间的通信和交接
- 使用 LangGraph 扩展状态驱动逻辑
### 如何贡献
1. Fork 本仓库
2. 创建新分支 (`git checkout -b feature/your-feature`)
3. 使用清晰的信息提交您的更改
4. 推送到您的分支并打开一个 **Pull Request**
5. 链接相关的 issue(如果有)并解释您的解决方案
我们鼓励编写整洁、经过充分测试且带有文档的代码。
在提交 PR 之前,随时可以打开 issue 来讨论想法!
## 加入社区
加入我们的 [Discord](https://discord.gg/XGytzHZU),与其他开发者交流、分享想法、提出问题,并共同构建 AI 驱动的红队测试的未来!
无论您是在寻求贡献方面的帮助,想讨论新功能,还是只想聊聊网络安全和 AI,我们的社区都在这里为您提供支持。
## 📝 许可证
本仓库根据 [Apache-2.0 License](LICENSE) 授权。
标签:AI风险缓解, Cybersecurity, Decepticon, DLL 劫持, Kubernetes, Offensive Security, PyRIT, Vibe Hacking, 人工智能, 反取证, 多智能体系统, 大语言模型, 威胁模拟, 安全评估, 实时处理, 密码管理, 攻击模拟, 用户模式Hook绕过, 网络安全, 自主代理, 自动化攻击, 请求拦截, 逆向工具, 隐私保护, 驱动签名利用