尽管Apple最近努力阻止恶意应用程序滥用此功能,但合成事件仍然是macOS的一大安全漏洞。
周末在摩纳哥举行的第二届海洋安全会议上发表讲话,着名的苹果安全专家帕特里克·沃德尔(Patrick Wardle)透露,苹果的macOS操作系统零日影响,包括推出的新版本今天。
零日是绕过Apple为防止未经授权访问合成事件而实施的安全保护措施。
合成事件背后的危险
合成事件是一种macOS机制,允许应用程序自动执行鼠标点击和键盘输入。它是为了自动化而创建的,可以通过Core Graphics框架或AppleScript脚本语言使用。
在过去几年中,恶魔软件如DevilRobber,FruitFly和Genieo滥用合成事件来自动化受感染主机上的操作。
滥用合成事件的恶意软件会非常危险和侵扰性,因为他们可以通过自动解除警报来绕过Apple和第三方安全产品。
此外,合成事件还可以加载内核扩展,转储受害者的钥匙串密码,获取系统的地理位置数据,窃取联系人,调整操作系统首选项,访问网络摄像头,运行终端命令等。
天空是任何包含合成事件的恶意软件的限制 - 主要是由于功能的设计和深层访问。
新的零日补助金禁止合成事件
近两年来,Wardle一直在研究Apple的对策,旨在防止滥用合成事件。
此前,他表现出两种方法[ 1,2 ]绕过苹果的合成事件保护措施,以至于苹果公司在去年决定以阻止在默认情况下访问合成事件。
但在周末,沃德尔再次披露了一种绕过这些最新保护措施的新方法。
“这是送礼的礼物,”沃德尔通过电子邮件告诉ZDNet。“实际上,随着Apple增加了一些可以通过单一合成点击”允许“的保护(隐私和安全机制),它实际上变得越来越有价值。”
由于透明度同意和控制(TCC)系统,新技术是可行的。Wardle说TCC包含一个名为AllowApplications.plist的文件形式的兼容性数据库。
此文件列出了允许访问各种隐私和安全功能的应用和应用版本,包括合成事件。
“这是Apple经常挣扎的领域 - 全面修补bug或bug类,”Wardle告诉ZDNet。“我认为他们已经在Mojave中做到了,因为他们最初似乎只是阻止所有合成点击。但一如既往,魔鬼在细节中,”他说。
TCC应用验证错误
根据Wardle的说法,这个隐藏的TCC数据库包含一个可以被利用来授予恶意威胁行为者访问合成事件的错误。
macOS应该验证请求访问合成事件的应用程序实际上是在TCC列表中。它通过验证应用程序是否已签名以及文件是否已被篡改来实现此目的。然而,Wardle说只进行了第一次检查。
这允许对系统具有最小访问权限的恶意威胁行为者下载AllowApplications.plist文件中找到的任何应用程序,附加与合成事件交互的代码,并运行它以绕过Apple现有的合成事件禁令。