Kaamel隐私与安全分析报告:Microsoft Recall功能评估与风险控制

本报告对Microsoft最新推出的Recall功能进行了全面隐私与安全分析。Recall是Windows 11 Copilot+电脑的专属AI功能,允许用户以自然语言搜索曾在电脑上查看过的内容。该功能在初次发布时因严重隐私和安全问题而备受争议,后经微软全面重新设计。我们的分析表明,微软通过引入"存在性证明加密"(proof-of-presence encryption)、数据隔离和完全自愿选择加入模式等措施,显著提升了安全水平,但仍存在一些潜在隐私风险。本报告为组织提供对Recall功能的深入理解,帮助做出明智的部署和管理决策。

1. 引言

Microsoft Recall于2024年初作为Windows 11专属AI功能首次亮相。该功能设计用于定期拍摄用户屏幕快照,使用本地AI模型处理,并创建可搜索的活动数据库。然而,安全研究人员迅速发现其最初设计存在严重安全缺陷,引发广泛关注。随后,微软对Recall进行了全面重新设计,加入了多重安全措施,并将其从默认启用改为必须用户明确选择加入,然后才能使用。

2. Recall技术架构与功能

2.1 基本功能

Recall的核心功能包括:

  • 定期捕获屏幕快照(约每5秒一次)
  • 本地AI处理和索引所有内容
  • 通过自然语言搜索历史活动
  • 使用时间线浏览过去活动
  • 本地存储所有数据(不上传至微软云服务)

2.2 技术要求

Recall仅适用于符合以下条件的Copilot+ PC:

  • 支持NPU,算力至少40 TOPS
  • 16GB DDR5或LPDDR5内存
  • 至少8个逻辑处理器
  • 256GB存储空间,至少有50GB可用空间
  • 支持Windows Hello生物识别认证

2.3 重新设计后的安全架构

根据微软官方博客和技术文档,Recall新安全架构包括:

  1. 存在性证明加密(Proof-of-Presence Encryption)

    • 所有截图和关联数据均加密存储
    • 数据访问需经Windows Hello增强登录安全(ESS)验证
    • 提供"即时解密"(Just-in-Time Decryption),数据仅在认证成功后短暂解密
  2. 数据隔离与保护

    • 核心存储服务位于VBS加密飞地(Enclave)内
    • 防止已获取系统访问权限的恶意软件访问敏感数据
    • 实施防篡改检查,确保系统完整性
  3. 选择加入模式

    • 默认关闭,需用户主动启用
    • 每位设备用户需单独选择加入
    • 提供细粒度控制,可暂停或完全停止截图
  4. 分层安全控制

    • 支持DLP(数据丢失防护)检查,提供企业管控能力
    • 管理员可通过策略完全禁用该功能
    • 支持排除特定应用程序,防止其被截图

3. 隐私风险评估

3.1 数据捕获与存储

强度

  • 数据完全本地存储,不上传至微软或第三方
  • 不同Windows用户间数据完全隔离
  • 用户可随时删除已存储数据

风险

  • 可能无意捕获密码、社会安全号、信用卡等敏感信息
  • 创建持久性用户行为记录,形成全面活动档案
  • 虽已加密,但理论上仍可能被高级攻击者访问

3.2 认证与访问控制

强度

  • 采用Windows Hello生物识别认证(面部、指纹)
  • 实施"即时解密",仅当需要访问时才解密
  • VBS加密飞地提供硬件级保护

风险

  • 依赖Windows Hello的安全性,相关漏洞可能影响整体安全
  • 生物识别认证可能因环境因素(如照明)失效,影响用户体验
  • 缺乏细粒度访问控制,对已授权用户无内容级限制

3.3 数据处理与分析

强度

  • AI处理完全在本地进行,不需云端分析
  • 使用设备NPU,不增加CPU/内存负担
  • 支持关键词过滤和应用排除

风险

  • AI可能从截图中提取敏感上下文信息
  • 分析结果可能揭示用户习惯、偏好等隐私数据
  • 长期索引可能建立详细的用户行为模式

4. 安全漏洞分析

4.1 已解决的重大安全问题

初始版本Recall存在多个严重安全问题,新版本已采取措施解决:

  1. 未加密数据存储

    • 初始问题:截图和索引以未加密SQLite数据库形式存储
    • 解决方案:实施全面加密和Windows Hello认证保护
  2. 无效访问控制

    • 初始问题:任何有设备访问权限的用户都可读取所有数据
    • 解决方案:每用户独立加密,需个人生物认证才能访问
  3. 默认启用

    • 初始问题:自动为所有用户启用,无明确同意
    • 解决方案:改为完全选择加入模式

4.2 潜在威胁场景

尽管有改进,以下威胁场景仍需考虑:

  1. 恶意代码攻击

    • 高级攻击者可能尝试攻击VBS飞地或Windows Hello
    • 风险等级:中等,需要高级技术和系统访问权限
  2. 社会工程

    • 攻击者可能诱导用户提供Windows Hello访问权限
    • 风险等级:中等,依赖用户对安全提示的理解
  3. 法律执法访问

    • 政府可能要求微软提供数据访问渠道
    • 风险等级:低,因数据仅本地存储,非微软直接可访问
  4. 硬件访问风险

    • 物理设备被盗可能导致尝试绕过保护
    • 风险等级:低,需要物理访问和专业技术

youtube

5. 合规考量

5.1 数据保护法规相关性

GDPR考量

  • 处理完全本地化,减少控制者/处理者问题
  • 选择加入模式符合明确同意要求
  • 数据最小化与存储限制功能可满足相关原则
  • 企业仍需考虑数据主体访问权等合规要求

CCPA/CPRA考量

  • 选择加入设计符合知情同意要求
  • 用户控制功能支持"被遗忘权"实现
  • 敏感数据处理仍需遵循相关规定

中国个人信息保护法考量

  • 本地处理符合数据本地化要求
  • 明确告知和同意机制满足个人敏感信息处理要求
  • 企业使用需建立配套管理机制

5.2 行业特定合规要求

金融服务

  • 可能与PCI DSS等规定冲突,需评估截图中的支付卡信息处理
  • 建议在金融环境完全禁用或严格限制

医疗健康

  • 可能捕获受HIPAA保护的健康信息
  • 医疗机构应考虑禁用或实施严格控制

政府与高安全行业

  • 不建议在处理机密或政府敏感信息的设备上启用
  • 可能干扰现有DLP和审计控制

6. 组织使用建议

6.1 政策建议

  1. 明确使用准则

    • 制定Recall使用政策,明确允许和禁止的使用场景
    • 培训用户了解潜在风险和正确配置
  2. 部署控制

    • 考虑使用组策略全面管理Recall功能
    • 为不同部门和角色设置差异化策略
    • 保持策略与新版本更新同步
  3. 风险缓解

    • 建立定期安全评审机制
    • 实施补充监控和访问控制
    • 定义数据泄露响应流程

6.2 技术建议

  1. 配置最佳实践

    • 强制使用最强Windows Hello认证
    • 启用所有可用的安全增强功能
    • 为敏感应用配置排除策略
  2. 监控与审计

    • 建立Windows Hello认证失败监控
    • 审计Recall使用模式,识别异常
    • 定期检查配置完整性
  3. 集成与增强

    • 将Recall安全状态纳入整体端点安全监控
    • 考虑补充端点防护解决方案
    • 评估备份策略与相关风险

7. Kaamel观点与建议

作为泛安全(安全、隐私、合规)领域的专业服务提供商,Kaamel认为:

  1. 架构改进显著但不完美

    • Microsoft对Recall的安全重新设计显著提升了隐私保护水平
    • "存在性证明加密"是重要创新,但仍依赖底层系统安全
    • 选择加入模式是正确方向,符合现代隐私设计原则
  2. 适用性评估至关重要

    • 组织应进行详细的风险评估,考虑业务性质和数据敏感性
    • 高度监管行业应谨慎采用,可能需要更严格控制
    • 普通用户在了解隐私影响的前提下可获得生产力提升
  3. 补充控制建议

    • 考虑实施Kaamel隐私风险监控解决方案,补充现有保护
    • 建立清晰的数据治理框架,界定Recall使用边界
    • 定期进行安全评估,验证保护措施有效性

8. 结论

Microsoft Recall代表了AI个人助理功能的重要发展,但同时也引入了新型隐私和安全挑战。微软通过重新设计,实施"存在性证明加密"、数据隔离和选择加入模型等措施,大幅改善了初始版本的安全状况。然而,组织在考虑部署时仍需谨慎评估其业务环境和数据类型的适用性。

Kaamel建议组织采取基于风险的方法,结合明确政策、技术控制和定期评估,以安全地利用Recall的生产力优势,同时保障用户隐私和数据安全。我们的泛安全团队随时准备协助评估具体环境下的风险和控制措施,确保合规与安全。


报告日期: 2025年4月18日
分析师: Kaamel安全研究团队

youtube

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/77396.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Kotlin协程Semaphore withPermit约束并发任务数量

Kotlin协程Semaphore withPermit约束并发任务数量 import kotlinx.coroutines.* import kotlinx.coroutines.sync.Semaphore import kotlinx.coroutines.sync.withPermit import kotlinx.coroutines.launch import kotlinx.coroutines.runBlockingfun main() {val permits 1 /…

鸿蒙语言基础

准备工作 去鸿蒙官网下载开发环境 点击右侧预浏览,刷新和插销按钮,插销表示热更新,常用按钮。 基础语法 string number boolean const常量 数组 let s : string "1111"; console.log("string", s);let n : number …

C++数据结构与二叉树详解

前言: 在C编程的世界里,数据结构是构建高效程序的基石,而二叉树则是其中最优雅且应用广泛的数据结构之一。本文将带你深入理解二叉树的本质、实现与应用,助你在算法设计中游刃有余。 一、二叉树的基本概念 1. 什么是二叉树 二叉树…

浅析数据库面试问题

以下是关于数据库的一些常见面试问题: 一、基础问题 什么是数据库? 数据库是按照数据结构来组织、存储和管理数据的仓库。SQL 和 NoSQL 的区别是什么? SQL 是关系型数据库,使用表结构存储数据;NoSQL 是非关系型数据库,支持多种数据模型(如文档型、键值对型等)。什么是…

piamon实战-- 如何使用 Paimon 的 Java API 实现数据的点查

简介 Apache Paimon(原 Flink Table Store)是一款基于流批一体架构的 ​​高性能数据湖存储框架​​,支持低延迟的数据更新、实时查询和高效的键值点查(Point Lookup)。 本文将深入解析 Paimon 的点查机制,并通过 Java API 代码案例演示如何实现数据的点查功能。 一、Pai…

社交媒体时代的隐私忧虑:聚焦Facebook

在数字化时代,社交媒体平台已成为人们日常生活的重要组成部分。Facebook作为全球最大的社交媒体之一,拥有数十亿用户,其对个人隐私的影响和忧虑也日益凸显。本文将探讨社交媒体时代下,尤其是Facebook平台上的隐私问题。 数据收集…

问题:el-tree点击某节点的复选框由半选状态更改为全选状态以后,点击该节点展开,懒加载出来子节点数据以后,该节点又变为半选状态

具体问题场景: 用户点击父节点复选框将其从半选变为全选(此时子节点尚未加载)。 点击节点展开触发懒加载,加载子节点。 子节点加载后,组件重新计算父节点状态,发现并非所有子节点被选中,因此父节…

FastGPT安装前,系统环境准备工作?

1.启用适用于 Linux 的 Windows 子系统 方法一:打开控制面板 -> 程序 -> 启用或关闭Windows功能->勾选 “适用于Linux的Vindows子系统” 方法二:以管理员身份打开 PowerShell(“开始”菜单 >“PowerShell” >单击右键 >“…

网页端调用本地应用打开本地文件(PDF、Word、excel、PPT)

一、背景原因 根据浏览器的安全策略,在网页端无法直接打开本地文件,所以需要开发者曲线救国。 二、实现步骤 前期准备: 确保已安装好可以打开文件的应用软件,如,WPS; 把要打开的文件统一放在一个文件夹&am…

EnlightenGAN:低照度图像增强

简介 简介:记录如何使用EnlightenGAN来做低照度图像增强。该论文主要是提供了一个高效无监督的生成对抗网络,通过全球局部歧视器结构,一种自我调节的感知损失融合,以及注意机制来得到无需匹配的图像增强效果。 论文题目:EnlightenGAN: Deep Light Enhancement Without P…

010数论——算法备赛

数论 模运算 一般求余都是对正整数的操作&#xff0c;如果对负数&#xff0c;不同编程语言结果可能不同。 C/javapythona>m,0<a%m<m-1 a<m,a%ma~5%32~-5%3 -21(-5)%(-3) -2~5%(-3)2-1正数&#xff1a;&#xff08;ab&#xff09;%m((a%m)(b%m))%m~正数&#xff…

初识Redis · C++客户端string

目录 前言&#xff1a; string的API使用 set get&#xff1a; expire: NX XX: mset,mget&#xff1a; getrange setrange: incr decr 前言&#xff1a; 在前文&#xff0c;我们已经学习了Redis的定制化客户端怎么来的&#xff0c;以及如何配置好Redis定制化客户端&…

GoogleCodeUtil.java

Google动态验证码实现 GoogleCodeUtil.java package zwf;import java.io.UnsupportedEncodingException; import java.net.URLEncoder; import java.nio.charset.StandardCharsets; import java.security.SecureRandom;/** https://mvnrepository.com/artifact/commons-codec/…

【Leetcode 每日一题】2176. 统计数组中相等且可以被整除的数对

问题背景 给你一个下标从 0 0 0 开始长度为 n n n 的整数数组 n u m s nums nums 和一个整数 k k k&#xff0c;请你返回满足 0 ≤ i < j < n 0 \le i < j < n 0≤i<j<n&#xff0c; n u m s [ i ] n u m s [ j ] nums[i] nums[j] nums[i]nums[j] 且…

如何校验一个字符串是否是可以正确序列化的JSON字符串呢?

方法1&#xff1a;先给一个比较暴力的方法 try {JSONObject o new JSONObject(yourString); } catch (JSONException e) {LOGGER.error("No valid json"); } 方法2&#xff1a; Object json new cn.hutool.json.JSONTokener("[{\"name\":\"t…

【路由交换方向IE认证】BGP选路原则之AS-Path属性

文章目录 一、路由器BGP路由的处理过程控制平面和转发平面选路工具 二、BGP的选路顺序选路的前提选路顺序 三、AS-Path属性选路原则AS-Path属性特性AS-Path管进还是管出呢&#xff1f;使用AS-Path对进本AS的路由进行选路验证AS-Path不接收带本AS号的路由 四、BGP邻居建立配置 一…

2025年热门项目管理软件对比:20款工具详解

本文主要盘点的工具有&#xff1a;1. PingCode; 2. Worktile; 3. Jira; 4. Trello; 5. TAPD; 6. Monday.com; 7. 进度猫; 8. 猪齿鱼; 9. 简道云; 10. Tita项目管理等等20款项目管理软件&#xff08;含免费&#xff09;。 在如今竞争激烈的商业环境中&#xff0c;项目管理软件已…

yaffs_write_new_chunk()函数解析

yaffs_write_new_chunk() 是 YAFFS&#xff08;Yet Another Flash File System&#xff09;文件系统中用于将数据写入新物理块&#xff08;chunk&#xff09;的关键函数。以下是其详细解析&#xff1a; 函数原型 int yaffs_write_new_chunk(struct yaffs_dev *dev, const u8 *…

网络安全-Burp Suite基础篇

声明 本文主要用做技术分享&#xff0c;所有内容仅供参考。任何使用或者依赖于本文信息所造成的法律后果均与本人无关。请读者自行判断风险&#xff0c;并遵循相关法律法规。 1 Burp Suite功能介绍 1.1 Burp Suite 简介 Burp Suite 是一款极为强大且广受欢迎的集成化 …

网络编程 - 2

目录 UDP 数据报套接字编程 API 介绍 DatagramSocket DatagramPacket 补充&#xff1a; 代码示例 - 回显服务器 服务器端&#xff1a; 客户端&#xff1a; 补充&#xff1a; 代码演示 梳理代码&#xff1a; 下面是一个大概的流程图~ 文字解释&#xff1a; 图文并…