近日,安全专家Patrick Wardle称,此前苹果发布的用于修复加固Mac OS X GateKeeper漏洞的补丁是无效的,无法保护用户Mac电脑的安全。在2015年9月份,正是Patrick Wardle第一个发现了该漏洞。
去年九月份已发现的漏洞
时间重新回到去年九月份,Patrick在博客上提醒苹果用户关于苹果电脑上的安全检查机制GateKepper,存在安全漏洞。
Patrick发现GateKeeper的检查机制只是一次性的静态检查,即只在应用程序安装时进行检查。而如果应用程序在运行过程中需加载相关二进制文件,那么GateKeeper是不会检查这些动态加载的文件。
FreeBuf百科
我们再来了解下,关于苹果电脑上的GateKepper功能,主要如下,
Gatekeeper 是 Mountain Lion 和 OS X Lion v10.7.5 中的一项功能,其以 OS X 的现有恶意软件检查为基础,帮助保护 Mac 免受从互联网下载的恶意软件和行为异常的 app 的影响。 1、Mac App Store 是下载和安装 app 最安全、最可靠的位置。Mac App Store 接受一款 app 之前,Apple 会对其进行审查,如果该 app 存在问题,Apple 可迅速将其从 Store 中删除。 2、针对从 Mac App Store 以外的位置下载的 app,开发者可以从 Apple 获得一个独一无二的 Developer ID,并以它来对自己的 app 进行数字签名。借助 Developer ID,Gatekeeper 能够阻止由恶意软件开发者创建的 app,并验证 app 是否遭到篡改(因为其已签名)。如果 app 由未知开发者开发(其没有 Developer ID)或已遭篡改,Gatekeeper 可阻止安装该 app。 3、通过 Gatekeeper,可以更有效地控制安装内容。可以选取最安全的选项,仅允许打开来自 Mac App Store 的 app。此外还提供一个选项,仅允许打开来自 Mac App Store 和被认可的开发者开发的 app。或者,可以选取允许打开所有 app,就与之前版本的 OS X 一样。
简而言之,GateKeeper可以说是作为一个实时检测工具来过滤安装的app,从而保护用户电脑安全。
但根据Patrick的研究发现,攻击者可以通过利用上述的漏洞,通过将编制的恶意应用程序放在一个专用的文件夹里面,并将其放置在应用程序目录下,让通过 GateKeeper检测的应用程序对专用目录下的执行文件进行加载,从而实现攻击。具体可以看下以下的简图,
苹果在修复加固 GateKeeper漏洞上并无成效
苹果此前宣布说这个问题已经发布相关补丁进行修复,具体补丁可以参考: Mac OS X El Capitan 10.11.1 ,但Patrick经研究发现,发布的补丁并不是如苹果所说的修复补丁,只是一个简单的黑名单工具。
Patrick具体提到,
苹果并没有真正解决问题的源头,只是引入另外一种新的安全检查工具,XProtect,通过检测二进制文件黑名单的方式,来检测应用程序是否有加载恶意的二进制文件。
而且基本上,该黑名单只是一个简单的列表,并非是一个成熟的检测系统。所以,我们也可以知道,这种简单的黑名单方式,对于检测应用程序是否有加载恶意文件,还是很容易被绕过的。
苹果发布的这种解决方法,也让众多的安全专家觉得疑惑,“苹果究竟如何考虑的?
POC视频
结语
对于苹果电脑用户,建议尽量在 App Store 下载 app,虽说有时候并不是那么方便,但为了安全性,还是很有必要的。
*参考来源: sdia ,FB小编troy编译,转载请注明来自FreeBuf黑客与极客(FreeBuf.COM)