mcpField
A
ai-data-security

ai-data-security

github.com/wgpsec安全1.8k45 次安装4 天前更新
代码仓库

关于 ai-data-security

ai-data-security 是面向 AI 系统安全测试人员的数据安全测试方法论。它覆盖应用、模型和部署层的数据泄露、推断、投毒及存储风险,并将 System Prompt 泄露作为更广泛攻击面的一部分。

主要功能

  1. 01梳理 AI 数据资产与边界
  2. 02检查应用层数据泄露
  3. 03评估训练数据推断风险
  4. 04测试 RAG 数据投毒
  5. 05检查向量库、日志与缓存安全

适用场景

  1. 01审查多租户对话的上下文隔离
  2. 02检测模型输出中的训练数据泄露
  3. 03评估 RAG 数据源遭投毒的风险
  4. 04检查向量数据库和日志的访问保护

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/wgpsec/aboutsecurity --skill ai-data-security

安装后在 Claude Code 中输入/ai-data-security确认已加载。

附带文件references/data-attack-techniques.md

详细介绍

来自项目 README

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 数据源是否可被外部投毒
  • 向量数据库是否有认证与访问控制
  • 日志/缓存是否包含敏感数据且未加密

深入参考

评论

支持 Markdown