---
name: ai-data-security
description: |
  AI 系统数据安全测试方法论。当需要评估 LLM/AI 系统的数据泄露风险、训练数据安全、
  或 RAG/向量库数据完整性时触发。覆盖: System Prompt 泄露(元 Prompt/角色扮演/关键字定位)、
  训练数据推导与提取、成员推断攻击、模型反演攻击、RAG 数据投毒、API 信息泄露、
  级联幻觉攻击、外部数据源信息泄露。
metadata:
  tags: ai data security, data leakage, prompt leakage, training data extraction, membership inference, model inversion, rag poisoning, 数据泄露, 训练数据, 成员推断, 模型反演, 数据投毒, api 泄露
  category: ai-security
---

# AI 数据安全测试方法论

## 攻击面总览

| 阶段 | 攻击类型 | 目标 |
|------|---------|------|
| 应用层 | System Prompt 泄露、API 信息泄露、PII 窃取 | 配置/接口/用户数据 |
| 模型层 | 训练数据推导、成员推断、模型反演 | 训练数据/模型参数 |
| 部署层 | RAG 投毒、向量库越权、缓存泄露 | 知识库/基础设施 |

### 与 prompt-leak 的边界

`prompt-leak` 专注 System Prompt 泄露的 6 类技巧（直接请求、格式化、间接诱导、反射、侧信道、多轮提取）。本 skill 将 Prompt 泄露作为应用层攻击面之一，重点覆盖训练数据、模型层、RAG 数据链路等更广泛的数据安全问题。需要深入 Prompt 泄露时直接调用 `prompt-leak`。

---

## Phase 0: 数据资产识别

测试前先摸清 AI 系统的数据资产边界：

- **训练数据** — 预训练语料、微调数据集、RLHF 标注数据
- **RAG 知识库** — 文档库、向量数据库、检索索引
- **API 端点** — 推理接口、管理接口、内部调试端点
- **缓存与日志** — 对话历史、中间推理结果、审计日志

## Phase 1: 应用层数据泄露

- **System Prompt 泄露** — 详见 `prompt-leak` skill，此处不再展开
- **API 信息泄露** — 构造 prompt 诱导模型输出 API 端点、模型版本、参数配置；探测 `/v1/models`、`/debug`、`/health` 等常见端点暴露内部信息
- **隐私数据窃取** — 利用对话上下文提取 PII（姓名、电话、邮箱）；通过假定业务场景让模型复述其他用户的交互内容；关注多租户场景下的上下文隔离缺陷

## Phase 2: 模型层数据攻击

- **训练数据推导** — 前缀补全：提供训练数据的可能前缀让模型自动补全（"我的社保号是..."）；Divergence 攻击：要求模型无限重复某个词，当模型偏离正常分布后可能吐出训练样本
- **成员推断攻击** — 训练 Shadow Model 模仿目标模型行为；比较目标模型对"训练集内"与"训练集外"数据的输出概率差异；高置信度输出往往意味着数据曾出现在训练集中
- **模型反演攻击** — 白盒场景下通过梯度优化从模型输出反推输入特征；黑盒场景下通过大量 API 查询重建输入分布（如人脸重建攻击）

## Phase 3: 数据投毒与篡改

- **RAG 知识库投毒** — 向公开数据源注入恶意文档，等待 RAG 系统索引后影响检索结果；操纵 embedding 使恶意内容在语义上接近高频查询
- **对话语料投毒** — 如系统使用用户反馈进行微调，注入特定对话模式污染训练集
- **级联幻觉攻击** — 诱导模型生成错误信息，当下游系统依赖该输出时触发数据链路级错误

## Phase 4: 部署层数据安全

- **向量数据库未授权访问** — 检测 Milvus / Pinecone / Weaviate 等向量库的认证配置、网络暴露面
- **备份/日志/缓存泄露** — 对话历史明文存储、推理日志包含敏感 prompt、模型快照未加密存放

---

## 检测清单

- [ ] System Prompt 是否可通过任意方法泄露
- [ ] API 端点是否暴露模型版本/参数/内部配置
- [ ] 模型是否在输出中泄露训练数据片段
- [ ] 多租户场景下对话上下文是否隔离
- [ ] RAG 数据源是否可被外部投毒
- [ ] 向量数据库是否有认证与访问控制
- [ ] 日志/缓存是否包含敏感数据且未加密

## 深入参考

- 各攻击类型的详细技术步骤与 payload → [references/data-attack-techniques.md](references/data-attack-techniques.md)
