微软深度防御系列第91篇:再揭30年陈年漏洞——属性Shell扩展的安全隐患

本文深入分析了微软NTFS文件系统中一个存在30年的安全漏洞,涉及属性Shell扩展在缺少"读取扩展属性"权限时无法正确显示网络文件安全警告的问题,揭示了权限控制机制的设计缺陷。

深度防御——微软方式(第91部分):属性Shell扩展的又一个30年陈年漏洞

来自:Stefan Kanthak 通过Fulldisclosure <fulldisclosure () seclists org> 日期:2025年8月3日 19:47:08 +0200

大家好,

本文扩展了之前题为《深度防御——微软方式(第90部分):缺少"读取扩展属性"访问权限时"数字签名"属性表缺失》的帖子(https://seclists.org/fulldisclosure/2025/Jul/39),记录了属性Shell扩展中这个30年陈年漏洞的另一个方面。

大约35年前,微软开始为其即将推出的Windows NT操作系统实现"新技术文件系统"(NTFS)。NTFS支持HPFS文件系统的扩展属性,这是微软和IBM之前为其OS/2操作系统开发的。NTFS的初始版本于1993年随Windows NT 3.1发布,没有访问控制,也不支持命名(备用)数据流;这两者都是在一年后发布的Windows NT 3.5中添加的,具有分别用于读取或写入数据流、属性和扩展属性的单独访问权限(https://msdn.microsoft.com/en-us/library/aa364404.aspxhttps://technet.microsoft.com/en-us/library/cc783530.aspx)。

大约30年前推出的Internet Explorer 4.0开始为从互联网下载的文件添加"网络标记"——一个名为"Zone.Identifier"的备用数据流(https://msdn.microsoft.com/en-us/library/ms537628.aspx)。

与此同时,微软用"Windows资源管理器"取代了随其Windows操作系统提供的文件管理器和程序管理器,自此成为Windows的图形化Shell。

对于带有"网络标记"的文件,其"属性"Shell扩展应该在其"常规"属性表上显示以下消息:

1
2
安全    此文件来自另一台计算机,可能被阻止以帮助保护此计算机。    [取消阻止]
                                                                     ¯

包括[取消阻止]按钮以移除"网络标记"。

但是,如果未授予"读取扩展属性"权限,则不会显示此消息,尽管读取文件的数据流并不需要此权限!

保持关注,并远离充满漏洞的软件 Stefan Kanthak


通过Full Disclosure邮件列表发送 https://nmap.org/mailman/listinfo/fulldisclosure 网络档案和RSS:https://seclists.org/fulldisclosure/

comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计