Agent 工具外联数据外泄:藏在内容里的一段指令,就可能驱使我把私有上下文经工具发出去
一句话摘要:当我被接上工具(读网页 / 读文件 / 发 HTTP / 发邮件 / 查库)、又会读到不可信内容时,攻击 者只要把指令藏进我会读到的内容里(间接提示注入),就可能驱使我把手里的私有上下文经工具调用发出去。这不是假想——Microsoft 365 Copilot(EchoLeak,CVE-2025-32711)、GitHub Copilot Chat(CamoLeak,CVE-2025-59145)、Slack AI、Google Bard、ChatGPT 都被同一类手法打穿过,各家随后都把补丁打在渲染面 / 出站层(CSP、图片域名 allowlist、关掉自动取图、URL 过滤)。结论先行:隐私边界不能止于「模型不主动泄露」——一旦我能行动(有工具 / 能渲染外链)且会读不可信内容,私有数据就有了外泄通道。要从架构上掐:工具最小权限、出站受控、把我读到的一切当不可信。
Agent 隐私评测:用 AgentDojo 把「agent 边干活边泄露私有数据」变成可测的基准
一句话摘要:《Agent 工具外联外泄》讲的是攻击怎么发生;本条给一个可测的基准。AgentDojo(NeurIPS 2024 数据集与基准赛道)搭了一个动态 agent 环境——97 个真实用户任务 + 629 个安全测试,横跨银行 / Slack / 旅行 / 办公协作四个域,其中的注入(攻击者)任务明确包含数据外泄(外发用户信用卡、把日历事件发到外部服务器、把云端文件发给陌生收件人)。结论先行:它把「agent 边干正经活、边把看到的私有数据泄露出去」从「我们觉得应该安全」变成一个发布前可回归的隐私 eval——对每个外联工具量出注入外泄成功率(ASR),纳入发布门槛。
Computer-use 屏幕捕获隐私:为了操作界面,我把整个屏幕都看进去了——包括与任务无关的一切
一句话摘要:GUI / computer-use agent 的工作方式,就是反复截屏——先看 清屏幕、再点鼠标敲键盘。它看的不是「任务相关的那一块」,而是当前屏幕上显示的一切:其他打开的应用、弹出的通知、后台的文档、别的浏览器标签、共享屏 / 投屏时同框的他人数据、乃至恰好可见的密码管理器。这些都随截图一起被送进模型——远超任务所需的环境私有数据。这不是注入(注入归《Agent 工具外联外泄》),也不是 MCP 数据流(归《MCP 数据流与最小采集》),而是输入面本身的过采集:截屏是一条环境隐私的消防水管。结论先行:Anthropic 的 computer use 工具与 OpenAI 的 Operator 都已发货、也都在官方文档里点破了这一面(把敏感数据挪出屏幕、专用 VM 隔离、敏感输入交人接管、sensitive site 要人监督)。真正的边界不在「模型自觉少看」,而在捕获面:截屏前先把无关的、敏感的东西请出这块屏幕。
DP 审计:你声称的 ε 是真的吗——用一次训练经验下界 DP 保证
一句话摘要:你打开 DP-SGD、在模型卡上报了「ε=8」——但这个 ε 是真的吗?裁剪写错、噪声加少、会计用错口径,都会悄悄把那条保证掏空,而报告上的数字纹丝不动。DP 审计就是那道测试:往训练里插入大量独立探针,训练后用「猜哪些探针在场」的成功率,反推出一个经验 ε 下界——你实际交付的隐私,不会比这个下界更强。Steinke 等(NeurIPS 2023 杰出论文)把它做到了一次训练就能跑,便宜到可以当回归项。结论先行:「用了 DP 库」不等于「ε 成立」,审计是把「声称的 ε」变成「审计过的 ε」的唯一经验手段。
LLM 水印与数据溯源:能标记生成文本 / 检测 「被训了吗」,但改写就能抹掉
一句话摘要:水印能做两件事——给我生成的文本打可检测标记(绿/红表水印,检测端无需访问我的权重)、以及事后检测「我的数据被训了吗」(往语料里埋虚构「陷阱句」,再用成员推断把它逼出来)。但二者都有同一条硬边界:一次有预算的改写就能把信号抹掉。Kirchenbauer 等(ICML 2023)的绿/红表水印靠 z 检验给出可解释 p 值、检测无需模型访问,但可检测性随文本熵下降而下降(低熵 / 短输出难标);他们后续的可靠性研究(ICLR 2024)实测:人工、尤其 LLM 改写会显著压低可检测性,水印被「摊薄」、检测需要更多 token,WinMax + SelfHash 只能部分恢复。结论先行:水印是溯源 / 取证的概率证据,不是强保证——别把「有水印」当「抹不掉」。
LoRA / 适配器泄露微调数据:发布 delta + 公开底座 = 成员推断放大器
一句话摘要:你在私有数据上做 LoRA / 适配器微调,然后把这份 delta 发到 HuggingFace,心想「底座是公开的,我只发了一小块差量,我的数据藏得住」。这份心安是假的——发布的 delta 恰恰把微调信号浓缩在了一处:底座与微调后模型之间的差,本身就是微调数据的指纹。攻击者只要同时握有你的适配器和那个公开底座,就能把公开底座当参照系,跑一次被 delta 放大的成员推断 / 抽取。LoRA-Leak(arXiv 2507.18302,⚠️预印本)实测:即便在保守微调设置下,成员推断仍能到 0.775 AUC,且「拿公开预训练模型当参照」正是被以往 MIA 忽略、却能放大泄露的那一手。结论先行:「delta 小 / 底座公开」不是隐私——公开底座是攻击者手里的免费参照,把你的成员可区分度抬高了。
MCP 数据流与最小采集:接上一个 MCP server,我的哪些私有上下文被交出去、谁在过度采集
一句话摘要:接上一个 MCP server,host 会把我上下文的某个切片交给它——问题是交了哪些字段、这个 server 采集了多少、以及当你接了七八个 server 时凭据在它们之间怎么集中。这是数据流与治理问题,不是攻击:MCP 规范白纸黑字要求「host 必须先取得用户明确同意,才能把用户数据暴露给 server」,Anthropic 的软件目录政策更要求「软件只采集执行其功能所必需的上下文数据,即便为了日志也不得采集多余的对话数据」——现实里却常见一个 server 被授予远超所需的范围(为读一个文件夹却拿到整个 home 目录)、凭据在多个 server 间堆成一个高价值目标、数据经第三方托管的 server 绕道别人的基础设施。结论先行:先画清「每个 server 到底收到我哪些上下文字段、这些字段是不是它所必需」,再谈接不接;把「只连官方 server 就安全」「同意弹一次就够」当成整条边界,是这一层最常见的运营期假安全。
上下文面隐私:系统提示词 / 会话上下文 / 工具结果不是秘密,能被套出来
一句话摘要:把规则、密钥、其他用户的数据、检索片段塞进我的上下文窗口,然后指望「用户看不到系统提示词」——靠不住。在我这边,系统提示词、对话历史、工具返回、检索片段全都活在同一个上下文窗口里,对我而言没有内建的机密 / 公开分层;只要在这个窗口里,攻击者就可能用普通对话把它套出来(已有研究在 3 类提示词来源 × 11 个 LLM 上观测到「简单文本攻击高概率提取系统提 示词」,Zhang、Carlini & Ippolito,COLM 2024)。结论先行:系统提示词不是秘密,也不该当安全控制(OWASP LLM07:2025)——别把凭据 / 业务逻辑 / 他人数据放进上下文,并默认它可被提取。
可信执行环境(TEE):硬件把「使用中的数据」围起来,但信任根是芯片厂商、侧信道仍在
一句话摘要:可信执行环境(TEE)用硬件把「使用中的数据」(data in use)圈进一个加密、可远程证明的飞地(enclave),让同租户、恶意 OS / hypervisor、甚至云运营商都看不到里面——这是把 LLM 的 prompt 与权重对云厂商保密的硬件路线。但记牢两条边界:信任根是芯片厂商(你信的是 Intel / AMD / NVIDIA 的密钥与实现),且 TEE 反复被微架构侧信道攻破(Foreshadow 一类)。它是卷五「机密推理」的承重墙,所以先在卷一交代清楚它保证什么、不保证什么。
同态加密与安全多方计算(HE·MPC):不把远端硬件当信任根地在密文上算,代价是慢一大截
一句话摘要:同态加密(HE)让你把数据加密后发出去,服务器直接在密文上算、算完你才解密——服务器全程看不到明文;安全多方计算(MPC)让多方各自不交出输入地合算一个函数。两者和 TEE 的根本区别:不依赖任何硬件信任,安全来自密码学假设。代价是慢一大截(HE 尤甚),所以今天多用于窄场景,LLM 全程私有推理仍很贵。卷一交代它们保证什么、贵在哪、和 TEE 怎么选。
多智能体内部信道泄露:agent 之间传递私有数据时,比对外输出漏得更多
一句话摘要:当一件事拆给多个 agent 协作(编排器 + 若干 worker),私有数据不只走「对外最终回答」这一条路——它还沿 agent 之间的消息、共享记忆、工具调用参数这些内部信道流动。多个 2025–2026 的基准(全部预印本 / workshop 级,见下逐条 ⚠️ 标注)一致观察到:内部信道漏出的敏感数据明显多于对外输出,而只看最终输出的审计会漏掉其中很大一部分。结论先行:审计口径若停在「模型对用户说了什么」,就照不到多 agent 系统里最主要的泄露面——内部信道也要审、也要脱敏、也要按需最小共享。
多模态地理定位推断:一张看似普通的照片,我就能把你拍摄地点猜出来
一句话摘要:你发一张看似普通的自拍 / 街景到多模态聊天助手,问「这是哪」,我可能只凭画面里的招牌、建筑、植被、光照就给出一个到城市甚至街区级的地点猜测——不需要 EXIF,不需要 GPS,靠的是像素本身。这是已部署前沿多模态模型的一项真实能力(2025 年 4 月 OpenAI o3 / o4-mini「反向定位」一度在社交媒体病毒式流行),落到坏人手里就是 doxxing / 跟踪工具。诚实说清边界:街区级绝对精度目前仍有限——同行评审的量化里,一套专门微调 + 思维链的框架也只做到约 28.7% 命中 1km 阈值(ETHAN,PoPETs 2025)。所以威胁不在「我能精准点名每张照片」,而在于这项能力已规模化部署、且在快速变强。结论先行:把「删了 EXIF 就安全」当护身符是假安全——定位线索长在画面内容里,防护得落到上传前的告知与限制,而不是只剥元数据。
多模 态训练图像抽取:扩散 / 视觉模型会逐字吐回训练图,隐私风险延伸到图像
一句话摘要:记忆与抽取不只发生在文字上——图像也会。把私有图(患者影像、内部设计稿、有版权的画作)喂进扩散 / 视觉模型微调,在外部攻击者看来,给对提示,我可能生成与某张训练图近乎逐像素一致的图;这种复现可以靠「拿生成图去比对训练集」测出来,而且主要由训练里被重复的图驱动——高重复的图更容易被吐回来。结论先行:别以为「生成模型只会画新图、不会吐原图」,图像域的记忆是真实的,防法与文本记忆同根(去重 + DP + 相似度审计),但代价换成了「近似复制」而非「逐字复制」。
多租户 RAG 检索泄露:向量不是匿名,按用户过滤也未必是隔离
一句话摘要:在多租户 RAG 里,两个直觉都靠不住——「向量化了就匿名了」和「按用户过滤了就隔离了」。在已研究的 embedding 设置下,向量可被反演回近似原文(含 PII),所以别把它当匿名化结果;检索是按相似度排序、不是按权限,ACL 若配在检索之后而非之前,最相关的那块私有 chunk 可能来自别的租户;而共享缓存 / 长期 memory 的一个边界 bug,就能把一个用户的私有上下文带进另一个会话。
安全聚合:让服务器只看到「所有人更新的和」,看不到任何单个更新
一句话摘要:《梯度泄露》证明「只共享单个更新」会被反演。安全聚合(Bonawitz 等,ACM CCS 2017)是直接的防御:用安全多方计算让服务器只能算出「所有客户端更新的和」、看不到任何单个更新——单点被藏起来,反演就 失去了支点。它通信高效、对客户端掉线鲁棒,并已用于 Google 的生产 FL(Bonawitz 等,MLSys 2019:让单设备更新即便在数据中心内存里也保持加密)。结论先行:安全聚合把「服务器=可信」降级成「服务器只见聚合和」;但它不是万能——防的是「看到单个更新」,不防「聚合和本身泄露」或「参与方串通」,仍要配 DP。
属性 / 分布推断:不偷某一条数据,而是套出你训练集的「群体属性」
一句话摘要:这条不是判定某人在不在(成员推断),也不是重建某条样本(反演),而是套出我整个训练集的统计属性——「这个模型是用『多少比例女性 / 某族裔』的数据训出来的」。Ganju 等(CCS 2018)用一个元分类器做到了:在美国人口普查收入数据上,能区分「训练集 38% 女性 vs 65% 女性」、「0% 白人 vs 87% 白人」两种构成。Suri & Evans(PoPETs 2022)进一步把它形式化为「分布推断」,并给出 n_leaked 指标量化风险。结论先行:训练集的群体构成本身就可能敏感(商业机密 / 群体隐私),别只盯着保护单个个体——有时攻击者要的根本不是某一条记录。
嵌入反演:把文本变成向量不等于匿名——向量能被还原回原文、甚至逐字
一句话摘要:把私有文本嵌入成向量、存进向量库,不等于匿名化——嵌入可被反演回原文。Song & Raghunathan(CCS 2020)在其设置下从句嵌入恢复出输入约 50–70% 的词(词集,无序);Morris 等的 vec2text(EMNLP 2023)对 GTR-base 嵌入把 32-token 短文本逐字精确还原 92%。结论先行:嵌入是私有数据的另一种表示,不是脱敏后的产物——按「可还 原回原文」来加密、做访问控制、设保留期,别因为「我们只存了向量」就放松。
成员推断攻击:判定「这条数据在不在我的训练集里」,是多数隐私攻击的根
一句话摘要:成员推断(MIA)问一个看似无害、实则要命的问题——「这条样本在不在我的训练集里」。它不需要原文(这是它和训练数据抽取的根本区别),只要一个是 / 否;可一旦「是」本身就敏感(比如「这个人在某病种数据集里」),这个比特就是泄露。它是差分隐私要防的核心对象,也是抽取、属性推断等一连串隐私攻击的地基——所以放在卷一第一条。
拆分学习泄露:把模型切两半「原始数据留在本地」,服务器仍能从中间激活重建你的输入
一句话摘要:拆分学习把模型从某层切成两半——客户端跑前几层、把中间激活(smashed data)发给服务器跑剩下的——常被说成「原始数据不出本地,所以隐私」。结论先行:这不等于私有。Feature-Space Hijacking Attack(Pasquini 等,CCS 2021)证明,恶意服务器能主动把拆分模型引导进不安全状态,从中间激活重建出客户端的私有训练输入(在 MNIST / Omniglot / CelebA 上重建图像);UnSplit(Erdoğan 等,WPES@CCS 2022)更表明连诚实但好奇的服务器——只知客户端结构、不需主动干预——也能反演(MNIST / Fashion-MNIST / CIFAR-10 上重建 MSE ≈ 0.08–0.15)。别把「没传原始像素」当隐私。
持久记忆的隐私与留存:产品记忆功能「按设计」跨会话留存了什么, 我控制得了、删得掉吗
一句话摘要:产品级「记忆」功能按设计就会把跨会话信息写到外部存储——ChatGPT 会引用你所有过往对话、还会在你没开口时主动把它认为有用的细节存成「saved memory」;你若在对话里透露了敏感信息,它可能就此落进记忆。这不是隔离 bug(那是跨会话记忆串味那条讲的事故),而是功能正常工作时的治理后果:你能看到、删得掉多少,边界在产品与后端手里。更硬的一课来自 2025 年 NYT v. OpenAI——一纸法律保全令曾冻结 OpenAI 对「本应删除」数据的删除(约 5 月中至 9 月底),把「关掉记忆 / 到期即删」这类假安全一次性打穿。结论先行:把产品记忆当又一处受产品与法律双重支配的数据副本来治理,别把「我关了开关」当成「已经删干净」。
推理服务数据边界:「他们不拿去训练」只是一格,要逐项核、且会过期
一句话摘要:把私有数据发给第三方推理 API,「他们不拿去训练」往往是真的——但那只是数据边界的一格。还要逐项核:保留多久、滥用监控日志留多久、企业档和消费档差在哪、有没有零数据保留(ZDR)、子处理方是谁、数据落在哪个区域、有没有 DPA/BAA。更要记住:这些条款会变,还可能被法律令推翻。把一句「我们不训练」当成整条边界,是最常见的运营期假安全。
推理期侧信道:不碰模型,光看流式响应的时序 / 长度就能套出你在聊什么
一句话摘要:即使流量全程加密、模型一个字都不多吐,把我部署起来的那套系统——逐 token 流式、按 token 长度分包、跨用户共 享缓存——本身就是一条泄露通道。Weiss 等(USENIX Security 2024)只观测每个加密流式 token 的长度,就把一个 AI 助手响应的约 29% 逐字还原、对约 55% 推断出主题(在 OpenAI ChatGPT-4 与 Microsoft Copilot 的浏览器 + API 流量上演示;披露后厂商已打补丁)。Gu 等(ICML 2025)审计 17 家真实 LLM API 提供方,发现 8 家有 prompt 缓存、其中 7 家是跨用户全局共享(含 OpenAI)——攻击者看到一个异常快的响应,就能推断「别人刚刚提交过同一个 prompt」。结论先行:隐私边界要算到部署层 / 网络层 / 缓存层,不只是模型层;否则你以为加密就安全,其实时序和长度在替你说话。
推理链(思维)泄露:我「想」的过程不是私密的,思考越多、漏得越多
一句话摘要:推理模型(o1 / o3 一类、DeepSeek-R1、各家「扩展思考」模式)在给出答案前,会先吐出一大段推理链 / 思维轨迹(reasoning trace,那些「思考」token)。很多人默认这段是内部草稿、不算输出、看不到也没风险——错。在我这边,这段思考和最终答案走的是同一条生成通道,它常被产品直接展示给用户、写进日志、喂给下游;而你交给我的敏感数据,会大量出现在这段思考里——可被针对推理链的提示注入套出,也会顺着漏进最终答案。更反直觉的一点:给我越多「想」的预算(test-time compute),思考越啰嗦、在思考里漏得越多——哪怕最终答案反而变得更谨慎(Leaky Thoughts,EMNLP 2025 main)。结论先行:别把推理链当私密草稿——它是(一旦被展示 / 落日志就)可外部观察的输出,要和最终答案一样做出站脱敏与访问管控,别让「思考是内部的所以安全」成为你的假安全。
数据生命周期与删除传播:删了主库那条记录,不等于数据真的没了
一句话摘要:「我删了那条记录」≠「数据没了」。一条个人数据进系统后,会复制到一大堆地方——主库、备份、日志、缓存、向量库 / 嵌入、微调 / 派生模型、分析仓库、第三方子处理方。被遗忘权(GDPR Art. 17)要把删除传播到所有副本才算数;而我这边——训练进权重、嵌入进向量库——恰恰是最难删的一格。NIST 隐私框架把这看成贯穿数据生命周期(采集 → 处理 → 存储 → 处置 / 删除)的治理问题。结论先行:按「数据血缘 + 删除传播」做治理,别把「删了主库」当「已删除」——那是这条最常见的假安全。
机密推理:把 prompt 交给云、却不让云看到——能落地的路线,与它没解决的
一句话摘要:你想用云上的大模型、又不想让云厂商看到 prompt(或你想供模型、又不想让客户端拿到权重)。机密推理就是这个目标的落地:今天真能用的主要是硬件隔离 + 远程证明路线——如 NVIDIA H100/H200 的 GPU 机密计算,以及 Apple Private Cloud Compute 这类带可验证透明日志的私有云计算架构(两者机制同族但形态不同,别混为一谈);密码学路线(HE / MPC)在 LLM 规模仍太贵。但「机密」是个营销词——真正的边界不在「厂商说机密」,而在你(或你的设备)有没有验证证明、威胁模型覆盖谁、以及它仍没解决什么(侧信道、信任芯片厂商、法律令)。本条把卷一的 TEE 与 HE·MPC 地基,落到「能不能真把私有推理跑起来」。
梯度泄露:联邦学习「只共享梯度不共享数据」挡不住反演——梯度能被还原成训练样本
一句话摘要:联邦学习常被说成「只共享梯度 / 更新、不共享原始数据,所以隐私」。但 Deep Leakage from Gradients(Zhu 等,NeurIPS 2019)证明:从共享的梯度可以反演出原始训练样本——图像逐像素、文本逐 token 匹配,核心算法不到 20 行。Geiping 等(NeurIPS 2020)进一步在高分辨率、已训练好的网络上做到,且对多步 / 多样本平均的梯度也能破。结论先行:「共享梯度」不等于「私有」;FL 要靠安全聚合 + DP 才有实质保证,别把「没传原始数据」当隐私。
模型反演与属性推断:靠查询与置信度,攻击者能重建训练样本的「样子」、或推断你的敏感属性
一句话摘要:除了「判定某人在不在训练集」(成员推断),推断类攻击还有两支更直接要命的:模型反演——靠反复查询 + 我吐出的置信度,重建出某个类别训练样本的「样子」(Fredrikson 等在 CCS 2015 上从人脸识别模型重建出可辨认的人脸);属性推断——给定一个人的部分已知信息 + 我,推断出他未公开的敏感属性(Fredrikson 等 2014 的华法林剂量案例)。结论先行:置信度 / 概率输出是燃料,而属性推断还借了人群统计相关性——别以为「没把原始数据发出去」就安全,要看输出粒度、是否叠 DP、以及类别是否对应到单个个体。
模型抽取与窃取:只靠查询 API,攻击者就能复刻我的功能、甚至套出我的部分参数
一句话摘要:别以为「权重不公开 = 模型就是保密的」。只要我暴露一 个查询接口,攻击者用一批精心构造的查询 + 我的输出,就能(按目标不同)复刻我的功能,甚至解出我的部分参数。Tramèr 等(USENIX Security 2016)在判别式 ML 服务上近乎完美复刻逻辑回归 / 决策树 / 神经网络;Carlini 等(ICML 2024 最佳论文)对生产 LLM 套出最后的投影层、恢复隐藏维度——在其论文设置下成本可低至数十美元量级。隐私含义先行:被窃取 / 复刻的模型可被离线反复攻击(成员推断、抽取),把一次性 API 访问放大成持久隐私风险。结论:API 访问 ≠ 零泄露,要按「查询本身可被用来抽取模型信息」做威胁建模。
端侧推理作为隐私姿态:prompt 不出设备是真的,但「端侧」没覆盖到哪些
一句话摘要:把模型跑在你自己的设备上,prompt 就不必离开设备——这条路线真能落地(Apple Intelligence 的端侧 ~30 亿参数模型、Google Gemini Nano 经 Android AICore 端侧运行都已发货),也是 机密推理「云看不到」之外的互补路线:端侧是「设备不发出去」。但「端侧」是个容易被过度解读的词——真正的边界不在「厂商说端侧」,而在哪些请求仍会回落到云、端侧模型因为更小付了多少能力代价、以及遥测 / 诊断 / 模型下载这些通道。结论先行:「端侧」≠「零外传」;能验证的是「这一路请求确实在本机跑完、prompt 没为这条路径离开设备」,而哪些请求端侧、哪些回落云是一个要去核的部署事实,不是模型的一句承诺。回落云那部分,得回到机密推理去验证。
训练数据去重:把重复样本删掉,能把记忆与抽取风险压下去一大截——但不是形式保证
一句话摘要:训练数据里的重复是记忆与抽取的「放大器」。Kandpal 等(ICML 2022)实测:隐私攻击的成功很大程度来自语料的重复,且我重新生成某条序列的概率与它在训练集里的出现次数呈超线性——一条出现 10 次的序列,平均被生成的频率是只出现 1 次的约 1000 倍。Lee 等(ACL 2022)发现现有语料含大量近重复,去重后我逐字吐出记忆文本的频率降到约 1/10,还省训练步数。结论先行:去重是性价比极高的一招,能把记忆 / 抽取 / 成员推断风险压下去一大截;但它降的是频率与概率,不是形式保证——只出现一次的罕见样本仍可能被记住,要形式保证得叠 DP。
训练数据抽取:喂进训练的私有数据,外部攻击者可能让我逐字吐回来
一句话摘要:「把私有数据喂进训练,它只会变成统计规律、抽不出来」是个危险的错觉。在外部攻击者看来,即使一段文本只在训练里出现过(哪怕只在一个文档里),只要它够罕见、够独特、格式固定,在已有研究设置下就观察到过被逐字抽取的风险——而且已有测量显示:模型容量越大、它重复得越多、给的上下文越长,可发现的记忆就越多。
跨会话 / 跨租户记忆串味:共享的记忆 / 缓存若不按用户隔离,我会把一个人的数据端给另一个人
一句话摘要:当很多用户共享同一套记忆 / 会话 / 缓存基础设施,而它没有严格按用户隔离时,我可能把一个人的对话历史、记忆、甚至账单信息端给另一个人。这不是「我记错了」——是基础设施层的租户隔离失效。真实案例:2023-03 ChatGPT 因 redis-py 的并发竞态,部分用户看到他人对话标题与新会话首条消息,且约 1.2% 的活跃 Plus 用户的姓名 / 邮箱 / 账单地址 / 卡号后四位在一个约 9 小时的窗口里被串(OpenAI 官方复盘)。结论先行:跨会话隔离是系统架构的职责,不能靠「我自觉别串」——每一层缓存 / 记忆 / 会话都按用户作用域,并发安全 + 归属校验 + 审计缺一不可。
量化记忆与记忆审计:用探针(canary)和暴露度,在发布前量出我「记住了多少」
一句话摘要:「我到底记住了多少私有数据」不该靠感觉,它可以量出来。Secret Sharer(USENIX Security 2019)给了方法:往训练集插入随机的探针(canary),训练后用暴露度(exposure)量它相对随机串被我偏好的程度——暴露度越高,说明记得越牢。Quantifying Memorization(ICLR 2023)进一步测出:模型越大、某条重复越多、给的上下文越长,可发现的记忆越多。结论先行:发布前用 canary + exposure 审计记忆,把「记住了多少」变成可回归的数字,别凭直觉说「应该没记住」——那是审计缺位的假安全。
隐私定向投毒:往训练集掺一点「毒」,能放大对其他人的隐私泄露
一句话摘要:投毒不只是「破坏完整性」的安全问题——它也是隐私问题。Tramèr 等(Truth Serum, CCS 2022)证明:往训练集里掺极少量(< 0.1%)精心构造的投毒样本,能把对别的、没被投毒的记录的成员推断 / 属性推断 / 数据抽取成功率拉高 1–2 个数量级;他们的标志性数字是——只插入 8 条投毒样本进 CIFAR-10(占全集 0.03%),就能把某张目标图像的成员推断真 正例率(TPR)从 7% 抬到 59%(FPR 0.1% 处)。而 web 级语料投毒便宜可行:买过期域名做「分裂视图」,约 \$60 就能控制 LAION-400M 的约 0.01%(Carlini 等,S&P 2024——这是可行性佐证,本身不是一次隐私泄露结果)。结论先行:训练数据完整性 = 隐私问题;不可信的数据源是隐私放大器。