示意圖,與新聞事件無關。

圖片來源: 

微軟

一月爆發的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機器也不受影響。


Advertisement

更多 iThome相關內容