微软Meltdown修补程式反而造成部分Windows 7有更大漏洞
文/林妍溱 | 2018-03-28发表
一月爆发的Meltdown、Spectre漏洞令用户余悸犹存。虽然微软很快就释出Meltdown的修
补程式,不过瑞典安全研究人员发现,修补程式却为部分Windows 7造成更大漏洞,可能
让app从作业系统内存读取或写入资讯。所幸微软已在3月安全更新中解决这个问题。
研究人员Ulf Frisk发现,微软一月以来针对CVE-2017-5754即Meltdown的修补程式造成这
个问题。特定版Windows 已经将需要的内存分配到每个执行中的程序(process),这
让骇客只要标准的读取/写入,不需任何API或syscall指令,即可读取虚拟内存及重要
资讯,或是写入资料。
原因在于这批修补程式改变了PML 4输入的User/Supervisior权限设定。PML 4是4层分页
映射表的基础,CPU内存管理单元(memory management unit, MMU)以这个表将程序的
虚拟内存位址写转成RAMA中实际内存位址。正常情况下只有作业系统核心(
Supervisor)才可存取PML 4分页表。但Windows修补程式中将PML4权限设定改成User后,
分页表内容即暴露给所有程序中的User模式下的程式码,而使app存取只要撰写PTE
(Page Table Entries)即可存取任意的实体内存资讯。
研究人员并将该手法加入他的直接内存存取(direct memory access)攻击工具
PCILeech中。
不过上述Windows 漏洞仅影响微软在今年1月及2月针对Windows 7 x64及Windows 2008 R2
系统释出的安全更新中。微软已在本月稍早释出2018年3月安全更新,2017年12月以前及3
月以后的Windows 7 x64版安全更新就没有此问题,Windows 8.1或Windows 10机器也不受
影响。
https://www.ithome.com.tw/news/122106
反Meltdowm Patch的Patch 2.0