微软正在调查严重影响Windows安全的CFG绕过漏洞
上个月的时候,谷歌Project Zero团队曝光了与微软Edge浏览器和Windows 10操作系统相关的最新漏洞,引发了业内许多安全研究人员的注意。祸不单行的是,意大利帕多瓦大学的研究人员们,刚又曝光了严重影响Windows 8.1和Windows 10安全的“控制流防护”(CFG)设计漏洞。据悉,微软在Windows 8.1 Update 3中率先引入了内核级的CFG功能,并且一路延续至Windows 10操作系统。
微软将 CFG 描述 为“一个高度优化的、可应对内存泄露漏洞的安全特性平台”。 其旨在代码中增加间接的调用和跳转,从而阻止攻击者在任意地址执行代码。
遗憾的是, 帕多瓦大学的安全研究人员,已经在其中发现了一个“使 CFG 向后兼容以提升性能”的设计缺陷。 研究员之一的 Andrea Biondo 表示:只有当被允许的目标与 16 字节对齐时,控制流的限制才是精准的。若不是,就会有一个围绕目标的 16 字节非精准地址。
通过将未对齐的目标组合在公共库中、结合编译器生成的函数布局的可预测性,我们就可以绕过控制流防护(CFG)。
该漏洞被称作“Back to the Epilogue”(BATE)
研究人员将在本月召开的 黑帽亚洲大会 上披露漏洞的详情,期间他们还会演示绕过 64 位 Windows 10 中的 Microsoft Edge 浏览器的 CFG bypss 概念验证代码,以证明该漏洞在真实场景中的运用。
报告称,这一漏洞让超过 5 亿台计算机面临安全威胁。更糟糕的是,由于 BATE 没有特别指定,这进一步放大了它的危害性。如果受害进程加载了某些公共库,漏洞就可轻易地被利用。
安全研究人员表示,他们已经向微软通报了此事,当前该公司正在着手修复,预计会随即将发布的 Windows 10 Redstone 4 更新一同到来。
GitHub 传送门:
https://github.com/theori-io/jscript9-typedarray-cfg