在网络安全领域,代码审计一直是一项耗时耗力的工作。传统的静态代码分析工具虽然能自动化扫描,但往往存在误报率高、无法理解业务逻辑、缺乏验证手段等痛点。今天介绍的 DeepAudit 项目,通过 Multi-Agent 协作架构,让 AI 像黑客一样攻击,像专家一样防御,为代码安全审计带来了全新的解决方案。
什么是 DeepAudit?¶
DeepAudit 是一个基于 Multi-Agent 协作架构的下一代代码安全审计平台。它不仅仅是一个静态扫描工具,而是模拟安全专家的思维模式,通过多个智能体(Orchestrator、Recon、Analysis、Verification)的自主协作,实现对代码的深度理解、漏洞挖掘和 自动化沙箱 PoC 验证。
核心特性¶
- Multi-Agent 自主审计:AI 自动编排审计策略,全天候自动化执行
- RAG 知识库增强:结合代码语义与上下文,大幅降低误报率
- 沙箱 PoC 验证:自动生成并执行攻击脚本,确认漏洞真实危害
- 支持本地部署:数据不出内网,支持 Llama3/DeepSeek 等本地模型
- 多平台支持:兼容 OpenAI、Claude、通义千问、智谱 GLM 等多种 LLM
系统架构¶
Multi-Agent 工作流¶
DeepAudit 采用微服务架构,核心由 Multi-Agent 引擎驱动,整个审计流程分为五个阶段:
| 步骤 | 阶段 | 负责 Agent | 主要动作 |
|---|---|---|---|
| 1 | 策略规划 | Orchestrator | 接收审计任务,分析项目类型,制定审计计划,下发任务给子 Agent |
| 2 | 信息收集 | Recon Agent | 扫描项目结构,识别框架/库/API,提取攻击面(Entry Points) |
| 3 | 漏洞挖掘 | Analysis Agent | 结合 RAG 知识库与 AST 分析,深度审查代码,发现潜在漏洞 |
| 4 | PoC 验证 | Verification Agent | 编写 PoC 脚本,在 Docker 沙箱中执行。如失败则自我修正重试 |
| 5 | 报告生成 | Orchestrator | 汇总所有发现,剔除被验证为误报的漏洞,生成最终报告 |
技术栈¶
- 前端:React 18 + TypeScript + Vite + TailwindCSS + shadcn/ui
- 后端:FastAPI + Python 3.11+ + PostgreSQL
- AI 引擎:LangChain + LangGraph + LiteLLM + ChromaDB
- 代码分析:Tree-sitter + Semgrep
- 沙箱环境:Docker
项目代码结构¶
DeepAudit/
├── backend/ # Python FastAPI 后端
│ ├── app/
│ │ ├── agents/ # Multi-Agent 核心逻辑
│ │ │ ├── orchestrator.py # 总指挥:任务编排
│ │ │ ├── recon.py # 侦察兵:资产识别
│ │ │ ├── analysis.py # 分析师:漏洞挖掘
│ │ │ └── verification.py # 验证者:沙箱 PoC
│ │ ├── core/ # 核心配置与沙箱接口
│ │ ├── models/ # 数据库模型
│ │ └── services/ # RAG, LLM 服务封装
│ └── tests/ # 单元测试
├── frontend/ # React + TypeScript 前端
│ ├── src/
│ │ ├── components/ # UI 组件库
│ │ ├── pages/ # 页面路由
│ │ └── stores/ # Zustand 状态管理
├── docker/ # Docker 部署配置
│ ├── sandbox/ # 安全沙箱镜像构建
│ └── postgres/ # 数据库初始化
└── docs/ # 详细文档
支持的漏洞类型¶
DeepAudit 支持检测多种常见的安全漏洞类型:
| 漏洞类型 | 描述 |
|---|---|
sql_injection | SQL 注入 |
xss | 跨站脚本攻击 |
command_injection | 命令注入 |
path_traversal | 路径遍历 |
ssrf | 服务端请求伪造 |
xxe | XML 外部实体注入 |
insecure_deserialization | 不安全反序列化 |
hardcoded_secret | 硬编码密钥 |
weak_crypto | 弱加密算法 |
authentication_bypass | 认证绕过 |
authorization_bypass | 授权绕过 |
idor | 不安全直接对象引用 |
功能矩阵¶
| 功能 | 说明 | 模式 |
|---|---|---|
| 🤖 Agent 深度审计 | Multi-Agent 协作,自主编排审计策略 | Agent |
| 🧠 RAG 知识增强 | 代码语义理解,CWE/CVE 知识库检索 | Agent |
| 🔒 沙箱 PoC 验证 | Docker 隔离执行,验证漏洞有效性 | Agent |
| 🗂️ 项目管理 | GitHub/GitLab 导入,ZIP 上传,10+ 语言支持 | 通用 |
| ⚡ 即时分析 | 代码片段秒级分析,粘贴即用 | 通用 |
| 🔍 五维检测 | Bug · 安全 · 性能 · 风格 · 可维护性 | 通用 |
| 💡 What-Why-How | 精准定位 + 原因解释 + 修复建议 | 通用 |
| 📋 审计规则 | 内置 OWASP Top 10,支持自定义规则集 | 通用 |
| 📝 提示词模板 | 可视化管理,支持中英文双语 | 通用 |
| 📊 报告导出 | PDF / Markdown / JSON 一键导出 | 通用 |
快速开始¶
方式一:一行命令部署(推荐)¶
使用预构建的 Docker 镜像,无需克隆代码,一行命令即可启动:
curl -fsSL https://raw.githubusercontent.com/lintsinghua/DeepAudit/v3.0.0/docker-compose.prod.yml | docker compose -f - up -d
国内加速部署¶
使用南京大学镜像站加速拉取 Docker 镜像:
curl -fsSL https://raw.githubusercontent.com/lintsinghua/DeepAudit/v3.0.0/docker-compose.prod.cn.yml | docker compose -f - up -d
启动成功后,访问 http://localhost:3000 开始体验。
方式二:克隆代码部署¶
git clone https://github.com/lintsinghua/DeepAudit.git && cd DeepAudit
cp backend/env.example backend/.env
# 编辑 backend/.env 填入你的 LLM API Key
docker compose up -d
首次启动会自动构建沙箱镜像,可能需要几分钟。
源码开发指南¶
适合开发者进行二次开发调试。
环境要求¶
- Python 3.11+
- Node.js 20+
- PostgreSQL 15+
- Docker (用于沙箱)
1. 后端启动¶
cd backend
# 使用 uv 管理环境(推荐)
uv sync
source .venv/bin/activate
# 启动 API 服务
uvicorn app.main:app --reload
2. 前端启动¶
cd frontend
pnpm install
pnpm dev
3. 沙箱环境¶
开发模式下需要本地 Docker 拉取沙箱镜像:
# 标准拉取
docker pull ghcr.io/lintsinghua/deepaudit-sandbox:latest
# 国内加速(南京大学镜像站)
docker pull ghcr.nju.edu.cn/lintsinghua/deepaudit-sandbox:latest
支持的 LLM 平台¶
DeepAudit 支持多种 LLM 平台,满足不同场景需求:
| 平台类型 | 支持的模型 |
|---|---|
| 国际平台 | OpenAI GPT-4o / GPT-4、Claude 3.5 Sonnet / Opus、Google Gemini Pro、DeepSeek V3 |
| 国内平台 | 通义千问 Qwen、智谱 GLM-4、Moonshot Kimi、文心一言、MiniMax、豆包 |
| 本地部署 | Llama3、Qwen2.5、CodeLlama、DeepSeek-Coder、Codestral(通过 Ollama) |
应用场景¶
1. 企业安全审计¶
- CI/CD 流程集成,自动化代码安全检查
- 外包项目验收,确认漏洞真实可利用性
- 合规审计,满足安全合规要求
2. 开发团队¶
- 开发阶段实时检测,提前发现安全问题
- 代码审查辅助,降低人工审计工作量
- 安全培训,通过真实漏洞案例提升安全意识
3. 安全研究¶
- 漏洞挖掘研究,探索新的攻击技术
- PoC 验证,确认漏洞可利用性
- 知识库构建,积累安全经验
项目亮点¶
解决传统审计痛点¶
| 😫 传统审计的痛点 | 💡 DeepAudit 解决方案 |
|---|---|
| 人工审计效率低 跟不上 CI/CD 代码迭代速度 | 🤖 Multi-Agent 自主审计 AI 自动编排审计策略,全天候自动化执行 |
| 传统工具误报多 缺乏语义理解,每天花费大量时间清洗噪音 | 🧠 RAG 知识库增强 结合代码语义与上下文,大幅降低误报率 |
| 数据隐私担忧 担心核心源码泄露给云端 AI | 🔒 支持 Ollama 本地部署 数据不出内网,支持 Llama3/DeepSeek 等本地模型 |
| 无法确认真实性 不知道哪些漏洞真实可被利用 | 💥 沙箱 PoC 验证 自动生成并执行攻击脚本,确认漏洞真实危害 |
总结¶
DeepAudit 是一个创新的 AI 驱动代码安全审计平台,通过 Multi-Agent 协作架构和沙箱 PoC 验证技术,解决了传统代码审计工具的痛点。它不仅提高了审计效率,还大幅降低了误报率,让漏洞挖掘变得更加触手可及。
对于企业安全团队、开发人员和安全研究者来说,DeepAudit 都是一个值得尝试的强大工具。无论是用于 CI/CD 集成、代码审查辅助,还是安全研究,它都能提供专业级的代码审计能力。
想了解更多 AI 工具和项目?请访问 AI225导航,我们提供最全面的 AI 工具指南和资源。
相关链接¶
- 项目地址:https://github.com/lintsinghua/DeepAudit
- 在线文档:https://deepwiki.com/lintsinghua/DeepAudit