游乐游手机版
首页/AI教程/文章详情

代码安全审计平台怎么搭建:用DeepAudit实现AI自动审计

时间:2026-08-15 15:06
DeepAudit是一款基于多智能体协作的AI代码审计平台,支持Docker本地部署,通过配置LLM与嵌入模型实现项目识别、漏洞挖掘与沙箱验证,并生成详细报告。结合cpolar内网穿透,可远程访问审计界面,提升代码安全审查效率。

前言

代码审计最麻烦的地方,不是知道要查什么,而是项目一大起来,风险点会藏在各种调用链、接口参数和权限逻辑里。SQL注入、XSS、越权访问、敏感信息泄露这些问题,单靠人工逐行排查,既费时间,也容易漏掉细节。

尤其是老项目、多人维护项目或者临时接手的业务代码,开发者往往需要先理解框架结构、接口入口、数据库访问方式和关键业务流程,才能判断哪里可能存在安全隐患。这个过程很考验经验,也很消耗精力。

DeepAudit提供了一种AI辅助代码审计的思路。它不是简单地扫关键词,而是通过多Agent协作完成项目识别、攻击面梳理、代码分析、漏洞验证和报告生成。对于需要快速了解项目安全状况的人来说,它更像是一套可以本地部署的代码审计工作台。

部署完成后,用户可以导入Git仓库或上传源码包,配置LLM和嵌入模型后,对项目进行Agent智能审计或快速扫描。审计结果会给出问题描述、代码位置和修复建议,也支持导出报告,方便后续复盘和团队沟通。

本文将从Docker一键部署DeepAudit开始,完成模型配置、项目创建、Agent审计、报告导出和即时分析演示。最后再通过 cpolar 配置公网访问地址,让本地运行的DeepAudit不再只限于当前电脑,也能在外部网络查看审计任务和结果。

1 DeepAudit是什么?

DeepAudit Logo

DeepAudit是国内首个开源的代码漏洞挖掘多智能体系统,基于Multi-Agent协作架构,通过四个智能体的自主协作,实现对代码的深度理解、漏洞挖掘和自动化沙箱PoC验证。用户只需导入项目,DeepAudit便全自动开始工作:识别技术栈 → 分析潜在风险 → 生成脚本 → 沙箱验证 → 生成报告,最终输出一份专业审计报告。

  • Orchestrator(总指挥):接收审计任务,分析项目类型,制定审计计划,协调其他Agent工作
  • Recon Agent(侦察兵):扫描项目结构,识别框架、库和API,提取攻击面
  • Analysis Agent(分析师):结合RAG知识库与AST分析,深度审查代码,发现潜在漏洞
  • Verification Agent(验证者):编写PoC脚本,在Docker沙箱中执行,验证漏洞是否真实可利用

简单来说,DeepAudit就像一个24小时待命的安全专家团队,帮你把代码审计这件苦差事变得高效、精准、自动化。

2 Docker一键部署DeepAudit

本教程以Windows系统为例,演示如何在Docker环境中部署DeepAudit。如果还没有安装Docker,可以参考官方文档完成安装。

首先,电脑按住 Win + R 键,打开运行窗口,输入 cmd 并回车,打开命令提示符。然后在命令提示符中输入以下命令,一键部署DeepAudit:

curl -fsSL https://raw.githubusercontent.com/lintsinghua/DeepAudit/v3.0.0/docker-compose.prod.yml | docker compose -f - up -d

image-20260103185117425

接着输入如下命令,查看DeepAudit容器是否启动成功:

docker ps

image-20260103185258782

如果看到类似上面的输出,说明DeepAudit已经成功启动了!这里包含了4个容器:

  • admin-frontend-1:前端服务,运行在 3000 端口
  • admin-backend-1:后端API服务,运行在 8000 端口
  • admin-redis-1:Redis数据库,用于缓存和队列
  • admin-db-1:PostgreSQL数据库,用于存储审计数据

现在,打开浏览器,访问如下地址:

https://localhost:3000

image-20260103190623511

可以看到,DeepAudit的登录页面已经成功显示出来了!

3 配置DeepAudit

3.1 LLM模型配置

注册一个账号,并且登录DeepAudit,即可进入主界面。

image-20260103194724583

接着来到系统管理,在系统配置项可以看到如下页面:
image-20260104132647406

接着选择LLM提供商,这里以通义千问为例。阿里云百炼的新用户享有每个模型百万Tokens的免费额度,可以在如下页面查看免费额度剩余量和模型Code等,记得开启免费额度用完即停。页面地址:

https://bailian.console.aliyun.com/?tab=model#/model-usage/free-quota?modelType=Text

image-20260104133144511

由于这里的qwen-plus模型额度用完了,演示将使用qwen-max来进行演示。在选择LLM提供商中选择通义千问,然后模型名称填写qwen-max模型:

image-20260104133355525

接着获取阿里云百炼的API Key,点击页面左下角的密钥管理菜单:
image-20260104133646508

进入到密钥管理后,点击创建按钮进行创建即可,创建后即可复制API key密钥:
image-20260104133815659

将复制的密钥填写到API key中,点击测试按钮,出现连接成功即代表配置成功:
image-20260104133927626

连接成功后,点击底部的保存所有更改按钮即可!

3.2 嵌入模型配置

前面已经配置好了LLM模型,接着切换到嵌入模型页面,然后在模型提供商选择Qwen,模型选择预设v4版本的模型即可,填写前面复制下来的API key密钥,点击测试:
image-20260104134853587

接着点击底部的保存配置和保存所有更改按钮即可,这样就配置完成啦!

4 使用DeepAudit进行AI代码审查

配置好LLM模型后,就可以开始使用DeepAudit进行代码审查了。DeepAudit提供了两种主要的使用方式:项目管理和即时分析。

4.1 创建项目

首先,在左侧导航栏点击“项目管理”,进入项目列表页面。如果是第一次使用,页面会提示“未初始化项目”,点击“新建项目”按钮。

image-20260104141950858

在弹出的对话框中,你可以选择两种导入方式:

方式一:Git 仓库导入

  • 仓库类型:支持GitHub、GitLab等
  • 仓库地址:填写你的Git仓库URL
  • 默认分支:通常为 main 或 master
  • 技术栈:选择项目使用的编程语言(Ja vaScript、TypeScript、Python、Ja va、Go等)

方式二:上传源码

  • 直接上传ZIP压缩包
  • 适合本地项目或私有仓库

填写完项目信息后,点击“执行创建”,DeepAudit会自动拉取代码并初始化项目。

image-20260104142044140

这里以上传源码为例,用一个几年前写的一个Ja va的SpringBoot项目为例,填写完成相关信息,上传源码进行执行创建:
image-20260104142428893

创建完成后,即可在项目管理页面查看创建好的项目:
image-20260104142502604

4.2 Agent 智能审计

项目创建完成后,点击项目下方的“审计”按钮,进入审计任务页面。这里有两种审计模式:

Agent 智能审计

  • LLM驱动的多Agent协同深度审计
  • 支持智能漏洞挖掘与验证
  • 适合需要深度分析的场景

快速扫描

  • 传统规则引擎驱动的快速代码扫描
  • 适合大规模批量检测
  • 速度更快,但深度略浅

这里以Agent审计模式举例,选中要审计的项目,然后选择审计模式,点击下方的启动Agent审计按钮:

image-20260104142733080

启动后,即可看到项目正在进行索引和嵌入,然后进行编排审计流程:
image-20260104143003939

在侧面的AGENT TREE中可以看到Multi-Agent协作流程:

  • Orchestrator分析项目,制定审计策略
  • Recon Agent扫描项目结构,识别技术栈和攻击面
  • Analysis Agent深度分析代码,发现潜在漏洞
  • Verification Agent在沙箱中验证漏洞真实性

在审计过程中,你可以实时查看审计进度、已分析的文件数、发现的问题数量等信息。

image-20260104145037305

可以看到,AGENT审计模式,会进行跨方法联合审计。如上图就是在注册方法中有调用相关校验方法,AGENT审计会根据逻辑关系,去查看校验方法是否存在问题。

4.3 查看审计报告

审计完成后,底部会有输出成功的日志提示,也可以点击右上角EXPORT按钮进行导出报告:

image-20260104145457647

点击EXPORT按钮后,可以将审计报告导出为Markdown或JSON以及HTML格式,方便分享和存档:
image-20260104145555460

如下为导出为HTML格式的报告预览:
image-20260104150016337

查看一下提到的高危漏洞等相关问题:
image-20260104150834343

可以看到给出了漏洞描述,还有关键的代码位置,以及修复的建议,还是很不错的!

4.4 即时分析

除了项目管理,DeepAudit还提供了“即时分析”功能,适合快速检查代码片段。

点击左侧导航栏的“即时分析”,进入即时分析页面:

  • 选择编程语言:从下拉菜单选择代码的语言(Ja vaScript、Python、Ja va等)
  • 输入代码:直接粘贴代码或点击“上传文件”按钮选择
  • 提示词模板:可以使用默认的“默认代码审计”模板
  • 开始分析:点击“开始分析”按钮

image-20260104151028103

几秒钟后,DeepAudit就会返回分析结果,包括:

  • 发现的问题列表
  • 每个问题的严重程度
  • 详细的修复建议
  • 代码片段高亮显示

即时分析非常适合:

  • 快速检查可疑代码片段
  • 学习安全编码规范
  • 代码审查前的预检查

image-20260104151137458

通过以上步骤,你已经掌握了DeepAudit的基本使用方法。无论是完整项目的深度审计,还是代码片段的快速检查,DeepAudit都能帮你高效地发现安全问题,让代码审计变得简单、快速、精准!

5 下载安装cpolar

通过前面的步骤,你已经成功在本地部署了DeepAudit,并且能够通过 https://localhost:3000 访问它的界面。但问题来了:你在家里的台式机上部署了DeepAudit,在公司想访问怎么办?或者你在公司电脑上启动了审计,回家想查看进度怎么办?

本地部署的DeepAudit就像一个“孤岛”,只有部署它的那台电脑能访问,其他设备想用都进不来。远程办公受限、多设备无法访问……这些问题让DeepAudit的价值大打折扣。

这时候,cpolar内网穿透就派上用场了!它是一款轻量级隧道转发工具,能够将本地运行的服务安全地暴露至公网,实现无需公网IP、无需复杂路由配置,就能随时随地访问你的DeepAudit。

接下来,我将带你一步步安装并配置cpolar,让DeepAudit真正实现“随时随地,想审就审”!

5.1 什么是cpolar?

image-20250910114418412

cpolar是一款内网穿透工具,可以将你在局域网内运行的服务(如本地Web服务器、SSH、远程桌面等)通过一条安全加密的中间隧道映射至公网,让外部设备无需配置路由器即可访问。广泛支持Windows、macOS、Linux、树莓派、群晖NAS等平台,并提供一键安装脚本方便部署。

5.2 下载cpolar

打开cpolar官网的下载页面,点击立即下载 64-bit按钮,下载cpolar的安装包:

image-20250815171202537

下载下来是一个压缩包,解压后执行目录中的应用程序,一路默认安装即可。安装完成后,打开cmd窗口输入如下命令确认安装:

cpolar version

image-20250815171446129

出现如上版本即代表安装成功!

5.3 注册及登录cpolar web ui管理界面

访问cpolar官网,点击免费注册按钮,进行账号注册:

image-20250804085039567

进入到如下的注册页面进行账号注册:
image-20250804085208319

注册完成后,在浏览器中输入如下地址访问web ui管理界面:

https://127.0.0.1:9200

image-20250815171734046

输入刚才注册好的cpolar账号登录即可进入后台页面:

image-20250815171846757

6 穿透DeepAudit实现公网访问

点击左侧菜单栏的隧道管理,展开进入隧道列表页面,页面下默认会有2个隧道:

  • remoteDesktop隧道:指向3389端口,tcp协议
  • website隧道:指向8080端口,http协议(http协议默认会生成2个公网地址,一个是http,另一个https,免去配置ssl证书的繁琐步骤)

image-20250914174356363

点击编辑website的隧道,修改成我们DeepAudit需要的信息:

image-20260104154717724

接着,点击左侧菜单的状态菜单,接着点击在线隧道列表菜单按钮,可以看到有2个deepaudit的隧道,一个为http协议,另一个为https协议:

image-20260104154752606

注意:每个用户创建的隧道显示的公网地址都不一样!

接下来在浏览器中访问deepaudit隧道生成的公网地址(http和https皆可),这里以https为例:

image-20260104154816219

可以看到成功访问到DeepAudit的登录界面啦!

7 固定二级子域名

通过前面的配置,我们已经成功实现了DeepAudit的远程访问,但免费随机域名方案的局限性也逐渐显现:每24小时左右自动更换域名地址,意味着你需要频繁更新书签、重新分享链接,甚至可能因为忘记更新而无法访问。固定域名方案正是为了解决这些痛点而生,能够让你拥有一个永久不变的专属地址。

好啦,接下来开始固定保留二级子域名教程!

首先,进入官网的预留页面:

https://dashboard.cpolar.com/reserved

选择预留菜单,即可看到保留二级子域名项,填写其中的地区、名称、描述(可不填)项,然后点击保留按钮,操作步骤图如下:

image-20260104160122793

可以看到列表中显示了一条已保留的二级子域名记录:

  • 地区:显示为China Top
  • 二级域名:显示为deepaudit

注:二级域名是唯一的,每个账号都不相同,请以自己设置的二级域名保留的为主

接着,进入侧边菜单栏的隧道管理下的隧道列表,可以看到名为deepaudit的隧道,点击编辑按钮进入编辑页面:

image-20260104160210331

修改域名类型为二级子域名,然后填写前面配置好的子域名,点击更新按钮:

image-20260104160523136

接着,来到状态菜单下的在线隧道列表可以看到隧道名称为deepaudit的公网地址已经变更为二级子域名+固定域名主体及后缀的形式了:

image-20260104160551889

这里以https协议做访问测试:

image-20260104161215156

访问成功,让我们再进行登录测试一下:
image-20260104161246923

成功登录啦,现在无论你在哪里,只要能上网,就能随时访问你的DeepAudit了!

总结

完成部署后,DeepAudit就可以作为一套本地AI代码审计平台使用。它可以帮助开发者更快梳理项目结构、识别潜在风险点,并把审计结果整理成相对清晰的报告。

Agent智能审计适合对完整项目做更深入的分析,快速扫描则适合日常批量检查或初步筛查。即时分析功能也很实用,遇到可疑代码片段时,可以直接粘贴进去做一次快速判断,作为人工Review前的辅助参考。

配置cpolar后,DeepAudit的Web界面可以从外部网络访问。随机域名适合临时测试,固定二级子域名更适合长期使用,方便在公司、家里或其他设备上继续查看审计进度和导出的报告。

需要注意的是,AI审计工具不能替代人工安全判断。它可以提升发现问题的效率,但最终是否构成漏洞、是否可利用、修复方案是否符合业务逻辑,仍然需要开发者或安全人员结合上下文确认。

DeepAudit负责辅助分析代码风险,Docker负责简化部署流程,cpolar负责打通远程访问入口。当这几部分组合起来以后,代码审计就不再完全依赖熬夜人工翻代码,而可以变成一套更高效、更可复用的安全检查流程。

来源:https://blog.csdn.net/2501_91062530/article/details/162661476
上一篇京东商品详情API比价数据自动化解析开发指南 下一篇从量化策略到自主交易:Agent驱动全流程自动化投资实践
本站内容用于信息整理与展示,如有侵权或内容问题请及时联系处理。

相关推荐

补充同频道和同主题内容,方便继续浏览更多相关内容。

同类最新

继续查看同栏目最近更新的文章。

更多
CAD零基础入门教程:坐标输入、图层管理与基础绘图命令
AI教程 · 2026-09-01

CAD零基础入门教程:坐标输入、图层管理与基础绘图命令

本文面向CAD零基础学习者,系统讲解坐标输入、图层管理与基础绘图命令的核心用法。通过分步实操与常见问题排查,帮助新手建立精确绘图习惯,掌握规范出图的基础能力。

CAD从入门到项目交付:绘图、标注、图块与实战工作流
AI教程 · 2026-09-01

CAD从入门到项目交付:绘图、标注、图块与实战工作流

掌握CAD的核心在于建立“画得准、标得清、复用快、交付稳”的工作流。本文提供从环境设置、高频命令组合、标注规范、图块标准化到项目分阶段交付的完整路径,帮助初学者避免常见返工陷阱,独立完成可检查、可复用、可打印的工程图纸。

Claude Code 登录指南:个人、Teams 与企业账号区分与授权步骤
AI教程 · 2026-09-01

Claude Code 登录指南:个人、Teams 与企业账号区分与授权步骤

本文详细解析 Claude Code 登录前的账号类型区分方法,涵盖个人订阅、Teams 席位与企业 Enterprise 席位的授权路径差异。提供终端登录命令、环境变量排查及常见异常处理步骤,帮助用户快速完成正确授权并避免登录路径混淆。

Claude Code 文件修改前的权限模式配置与命令审批指南
AI教程 · 2026-09-01

Claude Code 文件修改前的权限模式配置与命令审批指南

本文详细介绍Claude Code在修改文件前的权限模式配置方法,包括defaultMode可选值、permissions allow与deny规则设置、多层级配置文件管理以及 status验证技巧,帮助开发者安全高效地使用AI编程助手。

Claude Code接入VS Code后先测扩展和终端命令
AI教程 · 2026-09-01

Claude Code接入VS Code后先测扩展和终端命令

在VS Code中接入Claude Code后,建议优先验证扩展面板与集成终端两条入口。本文提供标准检查顺序、关键命令与常见故障排查路径,帮助你快速确认环境就绪,避免后续开发受阻。