每个现代操作系统都允许 App 请求在文件被创建、修改或删除时收到通知。文本编辑器、文件管理器、同步客户端和杀毒软件都依赖这项功能,而且它不需要任何特殊权限,只要对被监视的文件夹有读取权限即可。据 SecurityWeek 报道,奥地利格拉茨工业大学的研究人员现已证明,这项在 Linux、Android、Windows 和 macOS 上都很普通的功能,可以被用来监视同一系统上的其他人。
看不到文件内容,却能看到大量行为
这些攻击从不读取文件里的内容。它们收集的是文件名和事件发生的时间,而研究人员证明,这已足以还原用户、App 或系统正在做什么。大多数攻击都假定攻击者已经能以另一个账户在这台机器上运行代码;在 Android 上,则是一个不申请任何权限的 App。
- 在 Linux 上,监视代表键盘输入的设备文件所在的文件夹,就能知道何时有按键被按下,但不知道是哪个键。二十多年前人们就已知道,按键时序有助于推断一个人在输入什么。屏幕上不显示任何内容的输入,例如隐藏的 sudo 密码,没有被捕获。
- 同样在 Linux 上,Firefox 为某个页面加载的系统字体,就足以识别用户正在访问前 100 个热门网站中的哪一个;研究团队还在 KDE Plasma 6(Wayland)上演示了一个伪造的密码提示框,在恰当的时刻覆盖在真实提示框之上。
- 在 Android 手机(一台 Google Pixel 和多款三星 Galaxy)上,一个没有任何权限的 App 能够监视另一个 App 的私有存储文件夹。针对 WhatsApp,这暴露了照片、视频和文档何时被发送、接收或删除,以及它们的文件名。
- 在 Windows 上,监视系统盘根目录会报告机器上每一个被修改文件的完整路径,包括其他用户主文件夹里的文件。由于 Firefox 把数据存放在以网站命名的文件夹中,另一个用户的浏览行为可以被实时跟踪。
那 Mac 呢?
研究显示,macOS 泄露得最少,因为在那里只有所有人都可读的文件才能被监视。即便如此,研究人员仍然能够跟踪 App 的启动、与 App 的交互以及设置的更改。
补丁与回应
Linux 内核已经做了部分加固,设备文件不再产生访问和修改事件,研究人员称这解决了最严重的问题(CVE-2025-68788)。他们没有列出 Android 或 macOS 的修复。微软告诉研究人员,Windows 上的这种行为是设计如此;其发言人表示,该技术“要求攻击者已经能以另一个用户账户在设备上本地运行代码,而且无法访问文件内容。”苹果和谷歌尚未回复 SecurityWeek。研究人员表示,他们不知道有人在现实中利用过这一点;概念验证代码已在 GitHub 上公开。
这对你意味着什么
有两点教训适用于任何一台 Mac。第一,前提条件很关键:几乎每一种场景都始于别人的代码已经在你的电脑上运行。最有效的防御依然是最乏味的那种:只安装你信任的软件,保持 macOS 最新,并为每个使用这台 Mac 的人分别设置账户。
第二,监视只是工作的一半。在你的 Mac 上收集到的信息,只有离开这台 Mac 之后才对别人有用。这正是防火墙能看到的部分。任何 App 首次尝试访问互联网时,FireAI 都会询问你并记住你的回答;它在世界地图上显示每一个目的地;你还可以直接拦截某个 App。一个你上周才装的小工具突然想和国外的服务器通信,正是它会摆到你面前的那种连接。
下载 FireAI,免费试用 17 天。FireAI 由 HisnLabs 出品。