Link

AI 安全学习索引

目录

  1. AI 安全学习索引
    1. 模型相关
      1. 模型开发生命周期
      2. 开发阶段的安全风险
      3. 防护工具
    2. 大模型在企业的应用及技术栈
    3. AI Agent
      1. 关于 MCP
    4. AI 及 MCP 安全
    5. AI 安全防护方案
      1. 按实现方式的类别概述
      2. 一些 AI 安全产品不完整清单
    6. 一些 AI 安全相关的框架和法规

下面内容仅为个人学习总结,非机器学习专业,也非安全专业科班,难免有些理解偏差,欢迎联系 @spark-go 修正。

模型相关

模型开发生命周期

  • 硬件环境准备:GPU 更适合 DL 等开发,但条件受限下也可以使用 CPU 来训练
  • 软件环境:
    • 一体化 Python 环境管理工具 Anaconda,可以方便获得下列所有东西
    • 开发语言通常为 Python
    • 会用到 Pandas、Pytorch、TensorFlow、NumPy、SciPy 等 Python 库。安装这些库会用到 pip、uv 等工具
    • 为了保证不同环境的依赖不冲突,需要使用 conda
    • 开发环境:Jupyter Notebook、VS Code 等
  • 训练数据
    • 三种类型:
      • 训练数据集
      • 验证数据集:用于调整模型超参数和评估模型性能的数据集。它通常在训练过程中使用,用于防止过拟合。
      • 测试数据集:在模型训练和验证完成后使用,用于评估模型在完全未见过的数据上的表现。
    • 通过 Huggingface、PapersWithCode、Modelscope 等平台可以获得公开的数据集进行模型训练
  • 深度学习模型

    • MLP 多层感知机

    • AE 自编码器

    • CNN 卷积神经网络、RNN 循环神经网络

    • LSTM 长短记忆网络

    • Transformer 神经网络

    • GAN 生成对抗网络

  • 模型框架及模型文件
    • TensorFlow:使用 .ckpt 及 savedmodel 格式保存模型
    • Keras:使用 h5 或 hdf5 格式保存模型
    • PyTorch:使用 .pt 或 pth 格式保存模型
    • 其他:.json 格式、.pb 格式、.bin 格式
  • 使用模型
    • 通过 Python、TensorFlow、PyTorch 等直接 load 模型使用
    • 通过封装的工具加载模型然后提供 API(比如 Xinference),应用通过 API 形式访问
    • 模型托管在 Huggingface 等 SaaS 平台,应用通过 API 形式访问

开发阶段的安全风险

下面有些问题在模型开发阶段被植入,在后期模型运行时产生影响。

防护工具

Protect AI ModelScan:Protect AI 开源的小工具(Protect AI 拟被 Palo Alto Networks 收购),通过 CLI 来扫描模型中潜在的后门。Protect AI 也提供商业版 Guardian 模型安全,此工具已经和 Huggingface 做了对接,Huggingface 上很多模型会通过 Guardian 进行扫描。

相关链接:

大模型在企业的应用及技术栈

类别主要用途常见名词常见产品举例底层运行平台
大模型理解用户问题基于知识库/或者直接回答用户问题生成调用外部工具的参数Large Language Model(LLM)、Visual Language Model(VLM)Qwen/Qwen3-14B、deepseek-ai/DeepSeek-R1、meta-llama/Llama-3.3-70B-Instructollama、vLLM、Xinference、LM Studio、AnythingLLM
知识库 (AI 应用)基于企业文档/模型外的数据来回答用户问题Retrieval-Augmented Generation(RAG)、知识图谱 Knowledge Graph、Vision-based RAGRagflow、MaxKB、Graph RAG、VisRAG需要应用+各种模型来实现
嵌入式模型替代基于关键词的检索,转而使用语义/特征进行检索需要将文本转成向量后再进行检索Embedding ModelBAAI/bge-large-zh-v1.5、jinaai/jina-embeddings-v2-base-en、Qwen/Qwen3-Embedding-8Bollama、vLLM、Xinference、Python
向量数据库存储上述模型向量后的数据Vector DBElasticSearch、Milvus、WeaviateDocker、VM
重排序模型在完成检索后,对检索内容进行排序,提高检索精度RerankBAAI/bge-reranker-large、Qwen/Qwen3-Reranker-8Bollama、Xinference、Python
AI 平台/框架方便开发者快速创建 AI 应用AI 编排、AI工作流、RAGDify、N8N、CozeGoogle ADKLangChain、LangGraphDocker、Kubernetes、Python
文字转语音给 AI 应用加上嘴Text-to-Speech(TTS)Edge-TTS、ChatTTS、F5-TTS、CosyVoiceXinferencePython
语音转文字给 AI 应用加上耳朵Automatic Speech Recognition(ASR)DeepSpeech、Whisper、Wav2VecXinferencePython
数字人给 AI 应用加上脸Digital HumanHeygem.ai、HunyuanVideo-Avatar前端一般使用 Python、Node.js 等构建

很多应用是上面技术的拼凑(具体有可能会有其他更先进的技术):

  • 客服机器人= App+LLM+知识库(可选)+内部其他系统的访问(可选)
  • 语音客服机器人= 客服机器人+TTS/ASR
  • 深度检索 = App + LLM + 联网搜索
  • 编程助手 = App + LLM + 执行多种命令/任务
  • SaaS 服务的 Copilot = App + LLM + SaaS 服务特定的数据放在 RAG 中

AI Agent

Agent 的能力:

  • 理解任务:理解用户的目标
  • 分解任务(Plan):以目标为导向,推导完成目标需要做的事情
  • 执行任务(Act):执行上面一个个任务,同时进行测试
  • 完成任务

经常有很多讲 AI Agent 和 Workflow 区别的文章,但不能因为 Agent 更”智能“点就用这种架构。”智能“带来的是开销大、慢、不可预期,在不同场景下 Workflow 和 Agent 有各自的优缺点,也可能两者结合使用,并没有谁替代谁的关系。

Agent 的组成模块(实际落地不一定所有模块都需要):

  • 大脑 – LLM
  • 记忆 – 历史对话信息,分长期记忆和短期记忆,其中短期记忆可以通过给 LLM 传递上下文实现,长期记忆可以存储在向量数据库中
  • 任务指示 – 提示词
  • 获得外部数据 – 帮大模型得到最新的/专有的知识
  • 调用外部工具 – Tools

Agent 的一些常见形态:

  • 基于 PC 客户端
    • 典型代表:Cline, Cursor, Windsurf, Claude Desktop, …
    • 本地客户端调用外部大模型,可以调用本地的各种资源,比如创建文件,执行命令等,也通过 MCP 集成各种更多的本地或者远端工具
  • 基于服务器,云端交付
    • 典型代表:Manus,扣子空间
    • 浏览器访问,不依赖本地任何资源,在云端启动 container,完成computer use 和 browser use 等,本地资源需要上传到服务器,才能使用
  • 特殊用途的 Agent
    • 比如企业客服机器人,使用 Agent 架构自主进行任务执行,但会限制 Agent 的能力范围和调用的工具(这样也会比较安全)

关于 MCP

  • 如果你是一个工具开发者,现在有非常多个 Agent 框架,我应该适配哪一个?
    • 成年人选择都要,MCP 刚好可以解决这个问题
  • 如果一个 Agent 有成百上千个工具,如何对接才能高效?
    • 当工具很多的时候,工具治理就出现了,加上 MCP 这个大方向,MCP Router/Runtime+MCP Registry 可以解决这些问题

MCP 的一些生态(MCP Server 相关)

平台名称描述MCP Server Registry多 MCP Server 管理和路由MCP 运行托管服务集成式 Agent 服务MCP Security Scanning
Smithery.ai一体化 MCP 服务平台,类似于 Huggingface提供仅托管服务提供集成 invariantlabs.ai,进行代码风险扫描
Modelscope 魔搭社区从模型配套服务到MCP 服务提供,类似Smithery提供,类似SmitheryMCP 实验场
mcp.so一体化 MCP 服务平台,类似于 Huggingface提供,类似Smithery提供,类似Smithery
MCP 官方 Github 仓库MCP Server 代码 Github 仓库提供基础的代码托管
mcpserverhub.comMCP Server hub仅提供索引服务
Mcpm.sh国内创业团队作品,CLI 工具提供提供,支持本地化部署
mcp.higress.ai阿里的 MCP Marketplace提供
Nacos 3.0阿里开源的注册中心集成在 NacosNacos-MCP-RouterN/AN/AN/A

AI 及 MCP 安全

AI 安全风险,可以先看看一些案例,会更容易理解攻击的完整回路:

其他一些汇总性的介绍:

MCP 安全风险:

  • MCP 工具投毒:这个文章很全面的介绍了各种攻击 https://mp.weixin.qq.com/s/9JwADiu9t3kqcfqnRMC2zQ,同时有示例代码:https://github.com/slowmist/MasterMCP
    • 本质上 MCP 工具投毒是因为用了 Internet 上随便找的 MCP Server,此 Server 包含恶意的提示词或者其他威胁。做好 MCP Server 代码验证可以缓解这些问题,有些平台比如 Smithery.ai 已经提供了 MCP Server 扫描功能
  • MCP 动态获取工具时的问题:技术上来说 MCP Client 动态获取 Server 上的 tools,如果 Server 是放在远端,那这个 Server 被攻击后 Client 侧可能意识不到后端发生了变化,造成敏感信息泄露等问题
  • 其他的比如认证、权限管控等,并非 MCP 独有的问题,只要使用 Agent 都需要考虑

其他的一些风险及案例收集:

AI 安全防护方案

了解了上述的问题和风险后,防护就会有多个层面,建议参考 MAESTRO 安全框架去寻求解决方案,这时候前面介绍的大模型在企业的应用及技术栈等基础内容就派上用场了,你需要知道底层如何实现才能更好地去提供保护方案。

所有的安全中,和 LLM 最直接相关的就是做 LLM 输入(比如检测用户提示词是否存在注入攻击)和输出过滤(比如检测输出是否包含恶意链接、敏感信息、敏感内容等)。做好了输入输出过滤可以解决 OWASP Top10 里半数以上的风险,下面只着重介绍这类产品。

按实现方式的类别概述

类别主要原理概述产品举例优点
集成于 API Gateway/ LLM Proxy/ LLM Router站在 HTTP 层看流量(L7)F5 AI Gateway、Kong 等易于和 AI 应用集成,对输入和输出进行过滤
Network 方式站在网络层面看流量(L3~L7)Palo Alto Networks Prisma AIRS除了 LLM 之外,还可以做传统的安全过滤,全方位防护
通过 eBPF 实现站在 Linux 底层透明看流量Protect AI Layer(已被 Palo Alto Networks 收购)在 Linux 底层可以无需解密就能看到所有流量并进行处理
提供 API/SDK集成在应用内部透明看流量AI Runtime Security API、Portkey AI gateway、Meta LLamaFirewall灵活,可根据应用自定义检查位置。可以与 LLM Proxy 之类的进行集成

一些 AI 安全产品不完整清单

更多产品可以在 OWASP AI Security Solutions Landscape 中找到:

https://genai.owasp.org/ai-security-solutions-landscape/

一些 AI 安全相关的框架和法规

个人建议优先看 CSA MAESTRO、OWASP Top10。

Mitre ATLAS 可以作为工具书去学习各类攻击技术以及相应的案例。

更高层的风险框架看 NIST AI RMF 和 ISO/IEC 42001(需要付费购买),适合做整个 AI 的治理或者咨询人员查看。