主题 ·

Windows 系统级图片水印:本地生成文件都被植入隐形 GUID,Agent 视觉链路上的隐藏追踪信号

Windows 系统级图片水印:本地生成文件都被植入隐形 GUID,Agent 视觉链路上的隐藏追踪信号

Windows 系统级图片水印:本地生成文件都被植入隐形 GUID,Agent 视觉链路上的隐藏追踪信号 2026 年 8 月 20 日,独立安全研究者 Xusheng Li 发布了一份针对 Microsoft Paint 和 Photos 的深度逆向工程报告,标题是"Microsoft Paint and Photos Embed Server-Issued GUIDs as Invisible

Windows 系统级图片水印:本地生成文件都被植入隐形 GUID,Agent 视觉链路上的隐藏追踪信号

2026 年 8 月 20 日,独立安全研究者 Xusheng Li 发布了一份针对 Microsoft Paint 和 Photos 的深度逆向工程报告,标题是"Microsoft Paint and Photos Embed Server-Issued GUIDs as Invisible Watermarks in Locally-Generated Images"。这份报告在 Hacker News 主帖 24 小时内拿到 861 点热度。核心发现是:即使在 Copilot+ PC 上、即使 AI 图像生成完全在本地 NPU 上完成,Windows 系统仍然会把一个由微软服务器颁发的 GUID 作为隐形水印嵌入到生成图片的像素中。这个水印无法关闭、不会出现在任何用户可见的设置中、且能够被追踪回生成这张图片的微软账号与设备。"本地"不等于"离线"——这条警示,不仅适用于普通 Windows 用户,也直接影响着所有依赖视觉能力(Coding Agent 处理截图、文档扫描、视觉验证)的 AI Agent 工作流。

从逆向工程细节看,水印机制的实现远比 Microsoft 在官方文档里描述的复杂。Watermarker.dll 这个动态链接库本身就有 1.67MB,远超"可见水印"功能所需体积。研究者在 Claude Code 的辅助下定位到关键函数 `WmkWriteWatermark`,发现它构造一个 144-bit(18 字节)的消息:`0x4c || GUID[0..15] || (sum of 16 GUID bytes modulo 256)`。编码过程把图像可用尺寸向下取整到 8 像素的倍数,在选定的图像块上做 3×5 矩阵运算的微小量化修改,每个 bit 至少被嵌入三次。这种"content-adaptive block-domain, SVD-style watermark"在视觉上几乎不可察觉,但可以被微软自己的检测工具精确提取。

水印的 GUID 来自哪里?逆向报告显示,Paint 在本地生成图像之前,会先把 prompt 发送到 `https://apsaiservices-a0fqcjc6bzbhgdcd.b02.azurefd.net/v1/paint-cocreator/moderate-prompt`。这个远程端点会返回 JSON 响应:`revisedPrompt`、`promptGenerationId`、`watermarkId`、`containsHumanReference`。其中 watermarkId 就是嵌入到像素里的 GUID,containsHumanReference 是服务器对 prompt 是否涉及真实人物的分类。整个流程的设计结果是:即使模型推理 100% 在本地完成、用户认为生成过程没有离开设备,prompt 仍然会发送到微软服务器、服务器会返回一个唯一标识,这个标识会嵌入到生成的每一张图片里。

C2PA 与隐形水印的两层独立验证

理解这次 Paint 事件的技术背景,需要先理解现代 AI 生成内容的"内容凭证"(Content Credentials)生态。C2PA(Coalition for Content Provenance and Authenticity)是一个由 Adobe、Microsoft、Google、Intel 等公司联合推动的开放标准,核心目标是为数字内容附加可验证的"出处证明":它回答的是"这张图片是什么、由谁、用什么工具、在什么时间生成"。C2PA manifest 通常以文件级元数据的形式存在,可以被任何符合标准的读取器解析。

但 C2PA 只是"一层"防御。另一层防御是"隐形像素水印"(invisible pixel watermark),比如 Google DeepMind 的 SynthID,直接把"我是 AI 生成"这一信号编码到图像像素本身。这两层的共同目标都是"内容真实性验证",但它们在工程实现上是完全独立的——C2PA 关注的是文件元数据,水印关注的是像素内容;两者之间没有任何技术约束保证"它们对同一张图片的判断一致"。

这种独立性意味着一个严肃的安全问题:可以在不破坏任何一层的前提下,制造"两层验证都通过、但内容真实性已经被破坏"的伪造资产。arXiv 2026 年 3 月上线的论文 2603.02378 "Authenticated Contradictions from Desynchronized Provenance and Watermarking" 把这种现象形式化为 Integrity Clash。研究者证明:"a digital asset carries a cryptographically valid C2PA manifest asserting human authorship while its pixels simultaneously carry a watermark identifying it as AI-generated, with both signals passing their respective verification checks in isolation"——攻击者只需要在标准编辑 pipeline 中省略一个被 C2PA 规范允许省略的 assertion 字段,就能产生"authenticated fakes"。

这篇论文还实证了这种攻击的成本极低:"metadata washing workflows that produce these authenticated fakes through standard editing pipelines, requiring no cryptographic compromise"。换句话说,任何拥有基础图像处理能力的人,都可以制造出"两层验证都通过、但内容真假矛盾"的伪造图片——这种"authenticated fake"对现有的内容真实性验证体系构成根本性挑战。

从 Paint 事件到 Agent 视觉链路:被忽视的追踪信号

把这次 Paint 水印事件放在 AI Agent 视觉链路里看,可以看到一类被广泛忽视的隐私问题。AI Agent 在处理视觉任务时,会涉及三种典型的图像来源:一是用户上传的截图(用于 OCR、UI 理解、自动化测试);二是 Agent 自身生成的图像(如 Image Creator、绘图工具);三是 Agent 在网络上抓取的图像(用于内容分析、视觉验证)。这三种来源里,第二种——Agent 自身生成或修改的图像——恰恰是这次 Paint 事件的主要影响范围。

对于依赖 Coding Agent 做视觉验证(visual regression testing、UI screenshot diff、文档扫描 OCR)的开发团队来说,这次事件揭示了一个具体的工程隐患:Agent 自动生成的截图、UI mockup、设计草图,每一张都携带一个能追溯到微软账号的 GUID。这意味着如果 Agent 在客户的私有环境里运行、生成的图像随后被发送到外部服务做处理(比如 OCR API、视觉模型 API),那些外部服务在理论上可以反过来识别出"这些图像来自哪家公司的哪个 Azure 租户"。这种"图片里的隐藏追踪信号"对个人用户可能只是隐私问题,但对企业的商业机密、合规边界、国家安全都构成实质威胁。

更隐蔽的危害是 Agent 任务的不可重现性。一个研究团队用 Copilot+ PC + 本地 Agent 跑视觉实验,如果团队成员的每次 prompt 都被 GUID 编码进图像,那么即使他们上传到 arXiv 的图片已经被裁剪、去水印处理,只要原始图像还在某处留底,外部研究者就能反向追踪出"哪些图像来自哪个实验组"。这种"图像层级的论文溯源"在学术伦理审查日益严格的今天,可能引发新的争议——特别是涉及人体图像、医疗图像、隐私场景图像的研究。

与 EU AI Act Article 50 的合规争议

把 Paint 这次事件放到欧盟 AI Act 的合规框架里看,可以发现一个清晰的灰色地带。EU AI Act Article 50(2026 年 8 月 2 日生效)要求 AI 生成内容必须带有"可检测的、机器可读的标记"——但条款明确写的是"AI 生成的标记",而非"特定 prompt + 特定用户"的标记。Paint 嵌入的 GUID 实际上比 Article 50 要求的标识粒度细得多:它不仅标识"这是 AI 生成",还标识"这是哪个 prompt、哪个用户、哪个设备生成"。

Xusheng Li 在报告里直接指出了这个问题:"This might be related to Article 50 of the EU AI Act, whose transparency rules took effect on August 2, 2026 and require AI-generated content to carry a detectable, machine-readable mark—but not a prompt-specific GUID." 微软披露了 C2PA 元数据的存在,但没有公开披露"服务器颁发的 watermark GUID 与 prompt moderation 关联,以及它在像素中的存在"。这些细节对普通用户来说可能只是技术细节,但对"right-to-know"——即用户对自己被追踪的权利——构成了实质影响。

这种"合规但不透明"的处境,是当代 AI 平台治理中最棘手的问题之一。微软在合规层面做对了——C2PA 元数据存在、AI 生成内容可追溯;但在用户透明度层面做错了——具体追踪的颗粒度、谁可以读取这些 GUID、读取后用于什么目的,这些都没有被清晰披露。这种"做了但不说"的模式,与欧盟 AI Act 倡导的"可解释 AI"原则存在张力,也可能成为后续监管行动的导火索。

对 AI Agent 工程实践的具体启示

把这次 Paint 水印事件对接到 AI Agent 工程实践,可以提炼出四条具体的启示。第一条是"本地不等于隔离"——任何依赖本地 Agent 处理的图像,在被存储、传输、处理之前,都应该被做一次"水印与元数据审计"。这可以通过简单的脚本完成(检查文件是否包含 C2PA manifest、像素是否包含已知厂商的水印信号),但需要把它纳入 Agent 任务的标准化流程,而不是临时抱佛脚。

第二条是"Agent 生成的图像应被视为敏感数据"——即使生成过程在用户设备上完成,生成结果携带的元数据可能跨越个人、组织、地理位置的边界。处理这类图像的 Agent 应该把它们当作"潜在的 PII 载体"对待,而不是简单的图像文件。

第三条是"图像处理 pipeline 的供应链审计"——如果 Agent 把生成的图像发送给第三方 OCR API、视觉模型 API、CDN 存储服务,这条链路上的每一个环节都可能读取到水印 GUID。企业在采购这类服务时,应该把"对内容凭证的处理策略"作为供应商评估的硬性指标,而不是可选项。

第四条是"Agent 透明度报告的常态化"——就像 SEC 要求上市公司披露网络安全事件一样,未来 AI Agent 厂商可能需要定期披露"我的 Agent 生成的图像会携带哪些元数据、谁可以读取、用于什么目的"。这种常态化披露会迫使厂商在产品设计阶段就把用户透明度作为硬约束,而不是事后再补合规说明。

回到水印本身:被高估的隐私威胁 vs 被低估的系统性风险

最后需要冷静评估的是这次 Paint 水印事件的真实威胁级别。Hacker News 评论区分出了两种不同的担忧:一类是"AI 生成图像可被识别"——这其实是社会期望的功能,大多数用户希望"AI 生成的图像应能被识别";另一类是"特定用户的图像可被追溯到账号"——这才是真正的隐私问题。前者不会因为 Paint 水印事件而恶化,后者才是这次事件的真正风险点。

对于个人开发者来说,如果他们只是用 Paint 生成一张小猫的图、然后上传到社交媒体,水印 GUID 的存在不会给他们带来实质伤害——因为 GUID 只在微软的内部系统里有意义,普通人无法读取。对于企业用户来说,如果他们在受监管的金融、医疗、政企场景里使用 Copilot+ PC 处理涉及商业机密的图像,那么水印 GUID 的存在就是真实的合规风险,需要严肃评估。

Xusheng Li 在报告里给出了一个非常克制的结论:"It also appears possible to modify Paint or Photos to bypass both prompt moderation and watermarking. But that does not provide a new capability: anyone can already run Stable Diffusion directly without either mechanism." ——绕过水印并不需要复杂技术,但这种"绕过能力"的存在,反过来证明了水印机制本身的脆弱性。真正能解决"AI 生成内容追溯"问题的不是更复杂的水印,而是社会层面的共识与监管框架。当 2026 年下半年 C2PA、SynthID、各厂商私有水印、EU AI Act 这套组合拳逐步落地时,水印技术的工程细节反而不如"哪些场景必须带水印、哪些场景禁止带、谁有权读取"这些治理问题更重要。AI Agent 工程师在 2027 年面对的核心挑战,将是设计出既符合监管要求、又不损害用户隐私的内容凭证系统——而不是单纯地讨论水印技术本身。

相关推荐

继续阅读同类目下的深度文章。

RELATED · 3
技术
N-072 · 2026-09-13

CEO 解雇程序员给 AI 让位,程序员开源了一个 AI CEO:企业里 Agent 接管管理岗的伦理边界

CEO 解雇程序员给 AI 让位,程序员开源了一个 AI CEO:企业里 Agent 接管管理岗的伦理边界 2026 年 8 月底,Hacker News 上出现了一条被顶上 1035 点的故事:一支软件工程师团队被公司裁员,理由是公司决定用 AI 替代他们的岗位。裁员之后,这些工程师做了一件颇有讽刺意味的事——他们联合起来开源了一个名为 Open Executive 的项目,目标是用 AI Ag

技术 2026-09-13
→
申请评估

先做一次 系统盘点

留下您的业务场景和联系方式,我们的工程师先判断这件事适不适合做自动化、范围应该从哪里开始,再出方案与报价。

  • 工作日内联系,先确认问题再安排评估
  • 评估阶段不要求上传客户数据,先用脱敏信息沟通
  • 评估后给出系统清单、范围、周期和验收标准
  • 支持私有化部署,凭据存于独立 vault
或拨打 195-7919-9995 详聊
申请免费评估 FORM · 11/2026