就在Morphisec网络安全公司发布了关于一次针对性BitPaymer/IEncrypt攻击活动的一个月之后,该公司研究人员再次发现,同样的攻击者利用一种新型的令人警觉的逃避技术在攻击汽车行业的另外一家企业。
该公司研究员MichaelGorelik发布博客文章,详细说明了BitPaymer如何利用Bonjour更新软件中的一个苹果0day执行任意代码并躲避检测:“这次我们发现BitPaymer利用的是Windows版iTunesBonjour更新软件中的一个苹果0day漏洞。鉴于本周苹果已为Mac版iTunes发布macOSCatalina而摒弃iTunes但在可预见的未来Windows用户将仍然需要依靠iTunes,因此这个Windows利用值得注意。攻击者滥用了一个未加引号的路径来维护持久性并逃避检测。研究人员遵循负责任的披露策略并立即将攻击详情和苹果公司共享。在披露期间等待官方发布补丁期间,研究人员发现并报告了其它可能遭类似滥用的易受攻击的组件。目前苹果公司已发布官方更新,据此我们发布了攻击详情。”
如上所述,攻击者滥用的是一个未加引号的路径漏洞。虽然未加引号的路径漏洞遭在野利用的情况很罕见,但它确实又是一个已知的漏洞,过去15年或在更长的时间里,其它厂商也曾找到过它(如英特尔管理引擎、ExpressVPN和ForcePointVPN)的踪迹。在多数情况下,该漏洞是在权限提升的上下文中提及的,因为它存在于具有管理员执行权限的服务或其它进程中。该漏洞的相关文档如此全面,或许你认为已经足以引起编程人员的重视了。但事实并非如此。
软件开发人员正在使用越来越多的面向对象的编程,而且在很多时候当他们为某个路径赋予变量值时,他们认为单单使用字符串类型的变量就足够了,但事实上并非如此!仍然需要给路径加引号(“\\”)!
Bonjour是苹果用于提供后续更新的一种机制,其中就包括这些未加引号路径之一。Bonjour在已安装软件部分具有自己的安装条目并具有执行该过程的计划任务。
在多数情况下,人们并未意识到在卸载iTunes时还需要单独卸载Bonjour组件。因此,最后机器上还残留着所安装的仍在运行的更新软件任务。一项调查显示,Bonjour更新软件安装在多家不同企业的大量计算机上,这个结果让人吃惊:其中很多计算机在多年前就已经卸载了iTunes但Bonjour组件仍然还在后台静默地、以未更新的状态持续运行。之后,我们顺藤摸瓜找到了攻击面以及攻击者选择该进程躲避检测的动机。
由于很多检测的解决方案都是基于行为检测,因此进程执行链(父进程-子进程)在警示保真度中发挥着重要作用。如果由已知供应商签名的合法进程执行了一个新的恶意子进程,比起父进程未被已知向量签名的情况,相关警示的置信度得分将更低。由于Bonjour已签名且是已知的,因此正好进入攻击者的视线。另外,安全厂商尝试将与已知软件应用程序的不必要冲突最小化,因此出于担心破坏操作的考虑,并不会阻止这种行为。
另外,恶意的“Program”文件不带由扩展名如“.exe”,意味着AV产品将可能不会扫描该文件,因为这些产品金扫描某些特定的文件扩展以限制它们对计算机的性能影响。在这种情况下,Bonjour试图从“ProgramFiles”文件夹运行,但由于路径未加引号,它转而运行被命名为“Program”的BitPaymer勒索软件。这就是利用该0day能够躲避检测并逃避AV产品的原因。
如上所述,发现这一点后,在iTunes软件和安装程序中发现了更多的未加引号的路径漏洞。也注意到恶意文件并不一定要放在C盘中并被命名为“Program”。它还可被命名为“Apple”或“AppleSoftware”并被放在“ProgramFiles”中。当然,攻击者需要对这些文件夹的写入权限。目前我们尚未发现该漏洞引发的权限提升情况。
近日,苹果公司发布Windows版iTunes12.10.1和Windows7.14/10.7版iCloud解决了这些问题。
苹果发布的相关补丁可见:
https://support.apple.com/en-us/HT210637
还没有评论,来说两句吧...