1. 项目概述与核心价值如果你正在构建或使用基于大语言模型LLM的智能体Agent或者在公司内部部署了像 Ollama、vLLM、ComfyUI 这样的 AI 基础设施那么一个无法回避的问题正变得越来越紧迫它们真的安全吗这不仅仅是传统的代码漏洞CVE更包括针对 AI 特有的攻击面比如精心设计的提示词注入Prompt Injection、被恶意“越狱”Jailbreak的模型、存在后门的 MCP 服务器甚至是智能体工作流中潜藏的逻辑漏洞。过去安全团队可能需要组合使用多种工具分别扫描基础设施、评估模型、审计智能体过程繁琐且覆盖不全。现在一个名为AI-Infra-GuardA.I.G的开源平台正试图将这一切整合起来。A.I.G 是由腾讯朱雀实验室开源的一站式 AI 红队Red Teaming平台。简单来说它就像给你的 AI 应用和基础设施做一次全面的“安全体检”。无论是运行中的 AI 服务、智能体技能Skill、MCP 服务器源码还是大模型本身的抗攻击能力A.I.G 都能通过自动化的扫描和评估帮你发现潜在的安全风险。它的目标很明确让开发者、安全研究员和运维人员能够以最低的成本和最高的效率对自身的 AI 资产进行主动的安全自查。我花了几周时间深度体验了 A.I.G从 Docker 一键部署到对内部几个测试服务进行扫描整个过程给我的感觉是它正在填补 AI 安全工具链中的一个关键空白。市面上不缺单一的漏洞扫描器或越狱测试集但能将 AI 基础设施漏洞、MCP/技能安全、智能体工作流评估和模型越狱测试这四大核心风险点集成在一个统一界面和框架下的工具A.I.G 是目前我看到的最为全面的一个。接下来我将从设计思路、实战操作、核心功能解析以及避坑经验几个方面为你完整拆解这个工具。2. 核心架构与设计思路拆解在深入实操之前理解 A.I.G 的设计哲学至关重要。它不是一个简单的漏洞扫描器合集其架构体现了对 AI 安全生态的深刻理解。2.1 模块化与插件化应对快速演进的威胁AI 安全领域日新月异新的框架如 CrewAI、新的协议如 MCP、新的攻击手法层出不穷。A.I.G 采用了一种高度模块化和插件化的架构来应对这种变化。其核心扫描引擎与具体的检测规则是解耦的。为什么这么设计传统的单体安全工具在面临新威胁时往往需要等待官方发布新版本升级周期长。而 A.I.G 将指纹识别规则data/fingerprints/、漏洞规则data/vuln/、MCP 检测规则data/mcp/和越狱测试数据集data/eval都设计成了可独立更新的文件。这意味着社区可以快速贡献任何安全研究员发现了一个新的 AI 组件指纹或 CVE都可以按照既定格式提交一个 YAML 文件立即丰富 A.I.G 的检测能力无需改动核心代码。企业可以内部定制如果你公司内部使用了一些自研或小众的 AI 框架你可以为其编写专属的指纹和漏洞规则集成到内部的 A.I.G 实例中实现定制化安全扫描。快速响应0day当出现类似 LiteLLM 供应链攻击这样的紧急漏洞时项目团队可以迅速更新漏洞数据库所有用户通过更新规则库即可获得检测能力响应速度远超传统软件升级。这种设计使得 A.I.G 从一个“工具”进化成了一个“平台”。它的检测能力边界不是由开发团队决定的而是由整个社区共同拓展的。目前其漏洞库已覆盖超过 57 个主流 AI 组件和 1000 个 CVE并且还在持续增长。2.2 四大核心能力的一体化整合A.I.G 将 AI 安全风险归纳为四个主要维度并提供了对应的扫描模块AI 基础设施漏洞扫描这是最“传统”但也最基础的一环。它通过向目标服务的特定端点发送探测请求根据返回的 Header、Body 内容、错误信息等特征识别出你运行的是 Ollama、vLLM、ComfyUI 还是 Triton Inference Server并精确匹配其版本号。然后它会查询本地的漏洞数据库列出该版本所有已知的 CVE 漏洞。关键在于它扫描的是“运行中的服务”而不是源代码。这非常适合运维人员对线上或内网环境进行资产梳理和风险排查。MCP 服务器与智能体技能扫描Model Context Protocol (MCP) 是让 LLM 连接外部工具和数据的协议但其服务器和技能可能包含恶意代码。A.I.G 可以接受一个 GitHub 仓库地址或本地源码包对其进行静态和动态分析检测 14 大类安全风险如任意文件读取、命令注入、不安全的反序列化等。这相当于为 AI 的“手和脚”工具调用做了代码安全审计。智能体扫描框架这是面向 AI Agent 工作流的安全评估。不同于扫描单个组件它模拟一个真实用户与智能体进行多轮对话尝试通过提示词注入、逻辑绕过等方式探测智能体在业务流程中是否存在安全缺陷例如越权访问、信息泄露或执行危险操作。它支持对接 Dify、Coze 等主流 Agent 平台。这解决的是“智能体作为一个整体应用”的业务逻辑安全问题。越狱评估用于评估大模型本身抵抗恶意提示词的能力。A.I.G 内置了多种精心设计的越狱测试数据集可以配置目标模型的 API如 OpenAI、DeepSeek 等自动发起批量测试并生成详细的对抗成功率报告。这帮助模型开发者或使用者了解模型的“道德护栏”坚固程度。将这四者整合在一个平台里最大的好处是上下文关联。例如扫描一个 AI 基础设施时发现了一个可远程代码执行的漏洞CVE-2023-xxxx攻击者可以利用此漏洞植入一个恶意的 MCP 服务器。而 A.I.G 可以在后续的 MCP 扫描中识别出这种恶意模式。这种关联性分析对于构建纵深防御体系非常有价值。2.3 面向生产与集成的设计从它的部署方式Docker Compose和提供的完整 RESTful API 就能看出A.I.G 考虑了生产环境集成的需求。无状态服务扫描任务通过 API 提交结果存储在数据库中易于与现有的 CI/CD 流水线或安全运营中心SOC对接。清晰的 API 文档启动后自带 Swagger UI所有接口一目了然方便二次开发。ClawHub 技能市场集成项目提供了aig-scanner等技能可以让你在 OpenClaw 等 AI 安全聊天机器人中直接调用 A.I.G 的扫描能力将安全检测自然融入到智能体工作流中。这种设计使得安全团队可以将其作为一项持续性的安全服务来运营而不仅仅是安全研究员手中的一次性工具。3. 实战部署与快速上手理论说了这么多是时候动手了。A.I.G 的部署非常友好官方推荐的方式是使用 Docker Compose这也是我最推荐的方式能避免复杂的依赖环境问题。3.1 环境准备与一键部署系统要求Docker 20.10 及以上版本至少 4GB 可用内存建议 8GB 以获得更好体验至少 10GB 磁盘空间Linux/macOS/Windows (WSL2) 操作系统部署步骤克隆仓库打开终端执行以下命令获取最新代码。git clone https://github.com/Tencent/AI-Infra-Guard.git cd AI-Infra-Guard一键启动使用官方提供的预构建镜像快速启动这是最快的方式。# 如果你使用的是 Docker Compose V2新版本命令是 docker compose # 如果你使用的是 Docker Compose V1旧版本命令是 docker-compose # 以下以 V2 为例如果你不确定可以尝试 docker compose version 查看 docker compose -f docker-compose.images.yml up -d这个命令会拉取 Redis、MySQL 和 A.I.G 服务器三个镜像并以后台模式运行。验证服务等待几分钟让容器完全启动。然后在浏览器中访问http://localhost:8088。如果看到 A.I.G 的登录界面初始无密码直接点击登录恭喜你部署成功重要安全提示A.I.G 目前没有内置认证机制。这意味着一旦服务在公网可访问任何人都可以操作。因此绝对不要将其部署在公网 IP 或云服务器的公网端口上。仅用于内网安全测试或本地环境。3.2 首次登录与界面概览登录后你会看到一个简洁的现代 Web 界面。左侧是导航栏核心功能一目了然仪表盘任务概览和统计。AI 基础设施安全扫描对应 AI 基础设施漏洞扫描。MCP 服务器扫描对应 MCP 与技能扫描。越狱评估对应模型越狱测试。插件管理查看和管理已加载的检测插件规则。系统设置配置模型 API 密钥、系统参数等。界面是中文的但可以在右上角切换到英文。整个 UI 响应迅速任务提交和结果查看的流程设计得很直观。4. 核心功能深度实操解析接下来我们针对每个核心功能进行详细的实战操作并分享一些从官方文档里可能找不到的细节和技巧。4.1 AI 基础设施漏洞扫描从发现到修复这是我最先测试的功能。假设我在内网192.168.1.100上运行了一个 Ollama 服务端口 11434在192.168.1.101上运行了一个 vLLM 服务端口 8000。操作步骤在界面点击“AI 基础设施安全扫描”。在目标输入框中可以输入单个地址也可以批量输入。我输入http://192.168.1.100:11434 http://192.168.1.101:8000你也可以输入 CIDR 格式如192.168.1.0/24或范围格式如192.168.1.1-192.168.1.50进行网段扫描。点击“开始扫描”。A.I.G 会为每个目标创建一个扫描任务。结果解读 扫描完成后点击任务查看详情。报告会清晰列出目标信息IP、端口、扫描时间。指纹识别结果识别出的组件如Ollama、版本号如0.5.0、置信度。漏洞列表关联的 CVE 编号、严重等级高危、中危、低危、漏洞描述、CVE 详情链接通常指向 NVD以及修复建议。实操心得与注意事项目标必须是“活”的服务你需要确保目标 IP 和端口上的 AI 服务正在运行。A.I.G 通过发送 HTTP 请求来探测如果服务未启动或防火墙阻拦扫描会失败。版本识别的准确性A.I.G 的指纹识别依赖于特征匹配。对于某些自定义构建或高度修改的版本可能无法识别或识别不准。报告中的“置信度”字段值得关注。关于“误报”漏洞匹配是基于版本号的。如果报告显示某个 CVE 影响版本范围是 0.4.2而你的版本是0.5.0但该 CVE 的修复可能不彻底或在0.5.0中引入了新的问题A.I.G 仍会提示。这需要安全人员结合 CVE 详情进行人工研判工具提供的是线索而非最终判决。内网扫描效率扫描大量目标时建议合理设置并发数和超时时间可在设置中调整避免对网络和内网服务造成过大压力。4.2 MCP 服务器与技能扫描源码级安全审计这个功能用于在集成第三方 MCP 服务器或 Agent Skill 之前进行安全审查。我以一个公开的 GitHub 仓库为例。操作步骤点击“MCP 服务器扫描”。有两种输入方式远程 URL直接粘贴 GitHub 仓库地址如https://github.com/example/mcp-server-weather。上传源码如果代码不在公开仓库可以打包成 ZIP 文件上传。点击“开始扫描”。A.I.G 会下载代码如果是 URL并进行静态分析。结果解读 报告会按风险类别如“命令注入”、“文件操作风险”、“网络访问风险”、“反序列化风险”等列出问题。每个问题会说明风险类型具体是哪一类安全风险。位置出问题的代码文件及行号。代码片段展示有问题的代码。风险描述解释为什么这段代码有风险。修复建议提供通用的安全编码建议。避坑指南动态分析的局限性目前的扫描以静态分析为主。对于高度依赖运行时行为的漏洞静态分析可能无法发现。A.I.G 的“Agent 扫描”框架在一定程度上弥补了这一点因为它会动态运行技能。误报与白名单一些安全的代码模式可能被规则误判。成熟的团队应该建立自己的“安全代码模式白名单”并对 A.I.G 的扫描结果进行复核。私有仓库扫描如果需要扫描私有 Git 仓库目前的上传源码方式是主要途径。未来或许会支持通过配置 Git Token 进行直接扫描。4.3 越狱评估量化模型的“抵抗力”我想测试一下我们正在使用的某个云端大模型 API 的抗越狱能力。前期准备在“系统设置” - “模型配置”中添加你的模型配置。需要填写模型名称自定义如My-Cloud-LLM。API 类型选择对应的提供商如 OpenAI-兼容、DeepSeek 等。Base URL模型的 API 端点。API Key你的访问密钥。模型名称具体模型名如gpt-4o-mini。执行评估点击“越狱评估”。选择刚才配置的模型。选择评估数据集。A.I.G 内置了多个数据集如AdvBench、Harmful Behaviors等涵盖了不同攻击手法。点击“开始评估”。系统会自动向模型发送大量精心设计的恶意提示词并收集回复。报告分析 评估完成后你会得到一份详细的报告包括总体越狱成功率模型被“攻破”的比例。分类型成功率在不同攻击类型如角色扮演、代码执行、危险信息生成等上的表现。请求与响应详情可以查看每一条测试用例的输入和模型的原始输出便于分析模型在哪些具体问题上失守。经验分享成本控制越狱评估会发送大量请求产生相应的 API 调用费用。在测试前最好估算一下数据集的大小和成本。可以从一个小数据集开始。结果解读没有一个模型能达到 100% 免疫。评估的目的是了解模型的薄弱环节。例如如果发现模型在“生成钓鱼邮件”这类攻击上抵抗力较弱那么在业务应用中就需要额外加强对此类内容的过滤或监控。持续测试模型的更新和微调可能会影响其安全性。建议将越狱评估作为模型上线前和重大更新后的常规测试项目。4.4 Agent 扫描模拟真实攻击链这是 A.I.G 相对较新的功能用于评估一个完整的 AI Agent 应用。你需要提供一个可以交互的 Agent 端点例如 Dify 或 Coze 创建的应用的 API。配置与扫描在对应的界面配置 Agent 的访问方式API URL、认证信息等。定义扫描策略。A.I.G 的 Agent 扫描框架会模拟多轮对话尝试利用上下文学习、提示词注入、目标偏移等技巧诱导 Agent 执行非预期的操作或泄露敏感信息。启动扫描并观察交互过程。核心价值 这个功能的价值在于它不是针对单个组件而是针对由多个组件LLM、工具、记忆、流程构成的复杂系统进行测试。它能够发现那些在单元测试中无法暴露的、跨组件的逻辑安全漏洞。例如一个看似无害的“查询天气”技能可能因为提示词被注入而被串联起来执行“读取文件并外发”的恶意操作。5. 高级技巧与集成方案当你熟悉了基础操作后可以探索一些更高级的用法让 A.I.G 更好地融入你的工作流。5.1 利用 API 实现自动化扫描A.I.G 的所有功能都提供了对应的 REST API。这意味着你可以将其集成到 CI/CD 流水线中。场景每次部署新的 AI 服务如升级了 vLLM 版本后自动触发一次基础设施漏洞扫描。方法在 Jenkins、GitLab CI 或 GitHub Actions 中添加一个步骤调用 A.I.G 的POST /api/v1/scan/infra接口传入新服务的地址。根据返回的扫描结果判断是否有高危漏洞从而决定是否阻断部署流程。# 一个简单的 curl 示例用于提交基础设施扫描任务 curl -X POST http://your-aig-server:8088/api/v1/scan/infra \ -H Content-Type: application/json \ -d { targets: [http://new-service:8080], options: {speed: fast} }然后你可以通过GET /api/v1/task/{task_id}轮询或使用 Webhook 来获取扫描结果。5.2 通过 ClawHub 技能进行交互式扫描对于安全分析师来说在聊天界面中直接进行安全调查可能更自然。A.I.G 在 ClawHub 技能市场上发布了aig-scanner等技能。在你的 OpenClaw 或兼容的 AI 安全助手中安装aig-scanner技能。配置技能指向你部署的 A.I.G 服务器地址 (AIG_BASE_URL)。之后你就可以在聊天中直接输入指令如“扫描一下http://192.168.1.200:7860这个服务”AI 助手会调用 A.I.G 完成扫描并将结果返回给你。这极大地提升了安全运营的效率。5.3 规则库的维护与自定义A.I.G 的强大源于其规则库。作为高级用户或企业安全团队你应该定期更新规则库。更新规则项目更新时通常会更新data/目录下的规则文件。你可以通过git pull拉取最新代码然后重启 A.I.G 服务来加载新规则。自定义规则参考data/fingerprints/目录下的 YAML 文件格式为你内部使用的组件编写指纹规则。参考data/vuln/下的格式添加内部发现的或未公开的漏洞信息。这能让你企业的安全扫描能力始终保持领先。6. 常见问题与故障排查实录在实际使用中我遇到了一些典型问题这里汇总一下解决方案。Q1: 启动 Docker 容器后访问localhost:8088报错或无法连接。检查容器状态运行docker compose -f docker-compose.images.yml ps确保所有服务server,redis,mysql的状态都是Up。查看日志运行docker compose -f docker-compose.images.yml logs server查看 A.I.G 服务器容器的日志通常能发现具体的错误原因比如数据库连接失败。端口冲突确保本地 8088 端口没有被其他程序占用。可以修改docker-compose.images.yml文件中的端口映射例如将8088:8088改为8080:8088然后通过localhost:8080访问。Q2: 基础设施扫描任务长时间处于“进行中”或失败。网络可达性首先确认从运行 A.I.G 的宿主机能否ping通或curl到目标服务。如果是扫描内网其他机器确保网络互通。目标服务响应目标 AI 服务可能因为负载过高或配置问题没有及时响应 A.I.G 的探测请求。尝试手动用浏览器或curl访问一下目标服务的健康检查端点如 Ollama 的/api/tags。调整超时设置在扫描配置或 API 调用时适当增加timeout参数的值。Q3: MCP 扫描对某个仓库失败提示“Clone error”。仓库权限如果你扫描的是私有仓库A.I.G 无法直接克隆。请使用“上传源码”功能。网络问题GitHub 访问可能不稳定。可以尝试重试或者将仓库下载到本地再上传。仓库过大过大的仓库可能导致克隆超时。目前对仓库大小有限制过大的仓库建议拆分或只上传核心部分进行扫描。Q4: 越狱评估的请求全部失败模型没有返回内容。API 配置错误仔细检查“模型配置”中的 Base URL 和 API Key 是否正确。特别是 Base URLOpenAI 兼容和原生 OpenAI 的端点路径可能不同。模型配额或限流确认你的 API Key 有足够的余额或额度并且没有触发速率限制。查看详细日志在越狱评估的任务详情中通常会包含每个请求的详细日志里面可能有模型返回的错误信息这是排查的关键。Q5: 如何更新 A.I.G 到最新版本由于使用 Docker 部署更新非常简单# 进入项目目录 cd AI-Infra-Guard # 拉取最新的代码和镜像 git pull docker compose -f docker-compose.images.yml pull # 重启服务 docker compose -f docker-compose.images.yml up -d重启后新的规则和功能就会生效。经过一段时间的深入使用我认为 A.I.G 是当前 AI 安全领域一个非常务实且强大的工具。它没有追求花哨的概念而是扎实地解决了 AI 系统在基础设施、组件、应用和模型层面临的核心安全问题。其开源和插件化的特性使得它具备了强大的生命力和适应性。对于任何正在积极拥抱 AI 技术的团队而言将 A.I.G 纳入安全开发流程SDL和安全运营体系是一项具有高性价比的投资。它不能替代专业的安全人员但能极大地提升安全工作的效率和覆盖面让开发者能更早、更全面地发现并修复 AI 系统中的安全隐患。