微软在Windows 10测试版里修复特殊字符串引起的NTFS文件系统崩溃问题
此前有研究人员意外发现微软的 NTFS 文件系统存在缺陷 , 用户只需要访问包含某些特殊字符串的路径就会崩溃。
尽管该问题不太可能引起严重的安全问题,但恶作剧者可以制作包含该特殊字符串的文件诱导用户下载触发故障。
同时研究人员早就将该漏洞通报给微软但没有获得关注,直到被媒体广泛报道后微软才回应称将及时修复该漏洞。
不过微软在本月发布的例行更新里并没有修复该漏洞,最新消息是微软正在Windows 10开发版里测试修复程序。
研究发现Windows NTFS文件系统的索引系统属性包含$i30字符串 , 该字符串实际上是与目录关联的NTFS属性。
在某些情况下即便文件被删除而索引系统依然包括已删除的文件或文件夹,直到这些文件或文件夹被彻底的删除。
因此这种索引系统在进行某些事件响应例如攻击溯源或者调查取证时非常有用,但为什么会出现这次的严重问题?
InfoSec的研究人员Jonas L发现如果访问此属性就会引起磁盘损坏,经过调查后研究人员认为可能与注册表有关。
当该属性被加载后系统会立即弹出文件或目录已损坏且不可读提示,提示用户重启系统以便系统尝试对磁盘修复。
而修复过程可能会持续几个小时甚至更久,当然有时候修复无法完成会导致出现循环蓝屏死机直到用户重装系统。
如果运气好的话系统自动完成修复,则Windows 事件管理器会看到有关特定驱动器的主文件表MFT的错误记录。
下面的演示命令为图片,如果你想测试的话请在虚拟机里打开命令提示符进行测试,请不要直接在宿主机上运行!
尽管微软没有说明但研究人员已经在Windows 10 Dev Build 21322版里进行测试并证明微软已经修复这个错误。
在这个测试版里运行特殊字符串不会在引起 NTFS 文件系统崩溃 , 同时系统反馈这是无效的目录名称并进行屏蔽。
微软没有在开发测试版里提到这个问题,但测试显示微软确实已经在修复,所以微软可能会在下个月发布该补丁。
到时候稳定版用户只需要安装累积更新后即可避免恶作剧攻击,这里也提醒大家,不要打开那些来历不明的文件。