格拉茨工业技术大学安全研究人员发现,主流操作系统自带的文件通知子系统存在长期未被修复的安全弱点。这些缺陷允许非特权观察者窥探本应隐蔽的文件事件,其后果远超预期。

TU Graz博士生Sudheendra Raghav Neela指出,这些问题根源于现代操作系统用于告知应用程序文件变化的机制,是存在数十年的旧Bug。相关子系统历史悠久:微软ReadDirectoryChangesW始于2000年,Linux inotify于2005年推出,Apple FSEvents亮相于2007年,Android FileObserver则出现在2008年。尽管事件本身不携带文件内容,但构成了丰富的侧信道,足以泄露击键记录、网站访问等敏感信息。

多平台攻击演示与厂商回应

研究团队在计划发表于ACM CCS 2026的论文《文件通知攻击:模板化并利用Linux、Windows和macOS文件通知系统的侧信道泄漏》中详细阐述了利用方法。

在Linux环境下,监控可读目录即可泄露其中文件的事件,即使监视者无读取权限。例如,监控/dev/input可实施本地击键时序攻击,七名用户测试准确率达93.1%至100%,SSH远程版本准确率更是达到100%。此外,团队还在Wayland环境的KDE Plasma 6上成功实施认证提示重定向攻击,通过监控/usr/bin/pkexec窃取凭据,并在开放世界设置下实现87.9%的网页指纹识别F1得分。

Windows的情况更为严峻。任何非特权用户均可泄露无法读取目录中的完整文件路径,包括其他用户的家目录。在前1,00个网站的监测中,网站访问识别的F1得分高达97.8%。对此,微软表示文件事件的侧信道泄漏属于“设计使然”,预计不会提供修复方案。

截至2026年9月25日,Apple和Google尚未就此发表公开声明。Android通过FileObserver继承了诸多Linux行为,研究人员在运行Android 16的Pixel 9a和Galaxy A54上证实,监视/sdcard等目录可触发应用许可视图之外的文件事件泄露。

修复进展与安全挑战

Linux内核团队已发布部分修复补丁,于2025年12月上线,适用于内核5.10.248、5.15.198、6.1.160、6.6.120、6.12.64和6.18.3版本。该补丁阻止了对/dev下特殊文件的访问和修改事件,但核心设计问题在许多配置中依然存在。

这些攻击依赖于模板化技术,通过分析系统和用户行为构建签名,凭借0.2至11.5毫秒的时间分辨率分类终端命令、浏览器活动等操作序列。鉴于完全禁用文件通知系统将破坏实时监控、备份和桌面搜索等功能,企业安全团队面临两难抉择。

随着Android近期修补数百个漏洞、Linux经历一系列权限提升Bug,文件通知漏洞增加了无需内存损坏的新攻击向量。微软的立场将防御负担转移给用户,需依靠沙箱化、强制访问控制等措施缓解。Neela团队计划于11月在海牙会议上展示完整论文,目前安全意识已成为应对这一普遍缺陷的第一步。