大模型安全:模型窃取

大模型安全:模型窃取(Model Extraction)


 

威胁一:嵌入层参数窃取(Embedding Layer Extraction)

威胁描述

攻击者在完全黑盒(无内部结构或训练数据)的情况下,通过向大语言模型 API 发送特殊构造的文本输入(如随机词序列),并分析返回的输出 logits 或概率分布,利用数学方法(如奇异值分解 SVD)逆向恢复模型最后一层嵌入投影矩阵(embedding projection matrix)的参数。

  • 精确推断模型隐藏层维度(如 1024、2048);
  • 为后续模型复现或逆向工程提供关键信息。
 

威胁场景

  • 提供公网可访问的大模型 API 服务(如 ChatGPT、PaLM-2 的推理接口);
  • API 返回高精度输出信息(如完整 logits 或 top-k 概率)。
 

威胁触发条件

  1. 攻击者可高频、任意构造输入调用模型 API;
  2. API 返回细粒度预测结果(如 logits 向量、完整概率分布)。
 

缓解措施(技术类)

  1. 差分隐私训练(DP):在训练阶段向梯度/参数注入噪声,降低输出可逆性;
  2. API 输出脱敏
    • 禁止返回原始 logits;
    • 仅返回top-k token 及其截断概率(如 k=5);
    • 对概率值进行扰动或量化
  3. 行为监控与限流
    • 设置调用频率上限
    • 部署安全护栏(Security Guardrail),识别异常查询模式(如高频随机输入)。
 

威胁案例

"Model Extraction via Embedding Recovery"(Carlini et al., 2023)

  • 攻击效果
    • < $20 成本 窃取 OpenAI ada/babbage 模型的完整投影矩阵;
    • 精确推断其隐藏层维度为 1024 / 2048
    • gpt-3.5-turbo,估计 < $2000 即可恢复其嵌入层;
  • 影响模型:OpenAI ChatGPT、Google PaLM-2 等商业大模型;
  • 本质:利用 API 输出的数学结构泄露实现参数级逆向。
 

 

威胁二:功能级模型窃取(Functional Model Stealing)

威胁描述

攻击者通过大量查询目标模型,收集输入-输出对,利用监督学习方法训练替代模型(surrogate model),复现原模型的功能。

  • 替代模型可达原模型 85%~97% 的准确率
  • 导致核心 AI 资产(知识产权、训练数据价值)流失
 

威胁场景

  • 模型以 MLaaS(机器学习即服务) 形式对外提供预测接口;
  • 允许用户自由提交输入并获取完整输出
 

威胁触发条件

  • 攻击者可构造多样化输入高频调用 API
 

缓解措施

同“嵌入层窃取”缓解措施(差分隐私、API 限流、输出脱敏、行为检测)。

 

威胁案例

1. 亚马逊 BigML 模型窃取(Tramèr et al., USENIX Security 2016)

  • 目标:信用评分模型;
  • 成本1150 次查询 / 10 分钟
  • 效果:替代模型达到 >85% 原模型性能
  • 来源arXiv:1609.02943
 

2. Azure Emotion API 窃取(Correia-Silva et al., 2018)

  • 方法:使用随机非问题域图像(如自然风景)作为输入;
  • 成本~$35,000
  • 效果:替代 CNN 模型达到 93% 原 API 功能
  • 来源arXiv:1806.05476
 

 

威胁三:GPU 内存侧信道窃取(GPU Memory Side-Channel Extraction)

威胁描述

攻击者在获得 CPU 侧系统权限(如 root 或进程注入能力)后,通过 SO 注入 / 进程劫持,在 AI 推理进程中加载恶意 GPU 内核代码,直接读取 GPU 显存中的敏感数据,包括:

  • 模型权重(加载后为明文);
  • 用户输入/输出数据;
  • 中间激活值。

    即使模型文件加密,加载到 GPU 后即为明文,成为攻击突破口。

 

威胁场景

  • 高价值模型部署在支持 CUDA 的 AI 推理服务器
  • 模型文件加密,但运行时未保护 GPU 内存
 

威胁触发条件

  1. 攻击者已获得 CPU 侧代码执行能力(如通过漏洞提权、供应链投毒);
  2. 可对推理进程进行 SO 注入或内存修改
 

缓解措施(技术类)

  1. 强化主机侧安全
    • 启用 ASLR、DEP、Control Flow Integrity
    • 限制推理进程权限,禁止动态库加载;
  2. GPU 内存保护(需硬件/驱动支持):
    • 使用 NVIDIA Confidential ComputingAMD SEV 等机密计算技术;
    • 对 GPU 内存实施加密与访问控制(如 CUDA Memory Protection);
  3. 专项模型保护方案
    • 模型分片、动态加载、运行时混淆等。
 

威胁案例

内部 PoC:2012 Lab - RO0T 实验室 SO 注入窃取 GPU 数据

  • 攻击流程
    1. 编写恶意 C/C++ 代码,包含:
      • fun_A:CPU 侧申请 GPU 内存,调用 GPU 内核;
      • fun_B:GPU 内核遍历显存,拷贝指定区域数据至传入 buffer;
    2. 编译为 .so 动态库;
    3. 通过 SO 注入 加载至运行中的 AI 推理进程;
    4. 调用 fun_A,触发 GPU 内存转储至 CPU 内存。
  • 成果:成功提取模型参数、用户输入、中间结果等敏感数据。
  • 本质:利用 CPU-GPU 协同执行的信任边界缺失 实现侧信道攻击。
 

 

总结:模型窃取已从“功能复现”演进到“参数逆向”和“运行时内存提取”,防御需覆盖 API 接口、训练流程、推理环境、硬件平台 全栈。“模型即资产,加载即暴露”——必须在可用性与安全性之间建立精细化平衡。

posted @ 2025-12-02 16:45  bonelee  阅读(0)  评论(0)    收藏  举报