相信在多数用户的印象里,macOS系统几乎不会受到病毒的影响。一方面,由于Windows市场占有率大,吸引了绝大部分的黑客和病毒攻击,从而显得针对macOS系统的攻击较少;另一方面,得益于苹果商店对软件严格的审核机制,也极大地降低了病毒入侵macOS系统的可能性,有效保证了用户安全。
但是,相较于费用高昂的正版软件,灰色破解类软件成为多数macOS终端用户的下载刚需。而下载这类破解软件,则需要绕过苹果应用商店,前往软件官网甚至第三方平台下载,如下载站、论坛等地。由于第三方平台缺乏严格的审核机制,很容易成为风险聚集地。
此外,随着macOS系统用户数量日益增长,对破解软件的需求也越来越大,导致分发的渠道变得更加多样和不可控,这同时也给黑客投放针对macOS系统的病毒提供了诱因和便利。目前而言,macOS系统用户同样面临大量病毒攻击的威胁。
火绒安全实验室通过溯源分析近两年影响到macOS系统较为严重的病毒威胁事件发现,目前macOS系统上病毒传播途径主要有两种:
一是通过仿冒软件官方网站散播恶意代码的软件包;
二是利用第三方下载渠道进行定点投毒。
一、仿冒软件官网传播病毒
黑客通过伪造知名的软件官网,如NavicatPremium、iTerm2等软件,然后利用购买搜索引擎的排名,引诱用户下载带有恶意代码的软件安装包,从而达到传播病毒的目的。
假冒软件官网通过搜索引擎购买排名
假冒软件官网截图
(网址已被查封,图片来自知乎用户)
正常软件官网截图
以火绒安全实验室监测到的针对macOS系统的蠕虫病毒ZuRu为例,该病毒被发现于2021年9月份,通过假冒官网上的恶意软件进行传播,近期被发现同样也在利用第三方下载渠道进行大范围扩散。该病毒会收集用户各类隐私信息,黑客可以随时通过远控服务器对病毒下发后门指令,执行各类恶意行为,严重威胁广大macOS终端用户安全。
二、通过第三方下载平台传播病毒
第三方下载平台同样是针对macOS系统病毒的聚集地。火绒安全实验室分析发现,黑客攻击、供应链污染(软件开发者的开发环境被病毒感染,导致开发的软件也携带病毒程序),甚至是下载平台的管理人员审核不严,导致恶意软件被上传至站内,都是下载平台内病毒传播的主要原由。
作为威胁macOS平台的勒索病毒EvilQuest,正是利用第三方下载平台进行广泛传播。该病毒启动后,会立即加密用户的数据文件,并安装键盘记录器、反向shell后门,搜索用户文件中的加密货币钱包相关文件。利用这些功能,黑客可以完全控制用户的主机,这意味着就算用户付费进行解密,黑客仍然可以对用户终端实施其它恶意行为,如二次勒索、键盘监控等。
文件被EvilQuest勒索病毒加密后留下的勒索信
安全建议:
为了避免遭遇病毒攻击,火绒安全建议广大用户应避免通过第三方下载平台下载软件,尽量通过正规渠道获取,并及时检查其安全性;同时我们也呼吁各大下载平台管理人员,针对上传文件加强审核,阻止病毒传播,为用户提供安全的下载环境。
为了保护macOS终端用户的安全,“火绒终端安全管理系统2.0”(企业版)现已推出macOS终端版本,可有效拦截查杀上述病毒,保护用户终端安全。
三、以下为上述病毒的详细分析
一、ZuRu
ZuRu病毒于2021年9月首次发现,近期再次活跃。攻击者向macOS软件包(如NavicatPremium、iTerm2等软件)植入恶意代码。2021年9月该攻击者通过仿冒工具官方网站的方式,传播被植入恶意代码的软件包;此后,2022年2月攻击者又通过攻击第三方平台传播病毒,传播范围广,造成恶劣影响。该病毒会收集受害者各种信息,持续接收、执行来自C&C服务器的后门指令,攻击者可随时通过C&C服务器下发的指令执行恶意行为。
主程序
被植入恶意代码的软件包比官方原版多了一个名为libcrypto.2.dylib的恶意文件,使用otool工具查看主程序,发现添加了一个LC_LOAD_DYLIB加载命令来加载libcrypto.2.dylib文件,如下图所示:
LC_LOAD_DYLIB加载命令来加载libcrypto.2.dylib
libcrypto.2.dylib
libcrypto.2.dylib被加载后,会连接C&C服务器,根据C&C服务器下发的指令,下载执行其他恶意模块。相关指令,如下所示:
相关指令
python恶意脚本
收集各种用户系统信息,发送给C&C服务器,相关代码,如下图所示:
收集相关信息代码
二、EvilQuest
EvilQuest病毒于2020年6月首次发现,该病毒是迄今为止针对macOS平台最为复杂的威胁之一。攻击者通过向macOS软件包植入恶意代码,利用第三方平台进行传播。该病毒启动后,会立即加密受害者的数据文件,并且安装键盘记录器、反向shell后门,搜索受害者文件中的加密货币钱包相关文件。利用这些功能,攻击者可以完全控制受害者的主机,这意味着就算受害者付费进行了文件解密,攻击者仍然可以对受害者主机做任何事情,如:二次勒索、键盘监控等恶意操作。
较为典型的后门功能代码
键盘记录
使用CGEventTapCreate函数来记录用户输入的按键,在回调函数process_event中将用户输入的键值转换为按键字符,输出到控制台。相关代码,如下图所示:
键盘记录功能代码
接收C&C服务器下发的恶意文件
相关代码,如下图所示:
接收C&C服务器下发的恶意文件
运行C&C服务器下发的恶意文件
运行C&C服务器下发的恶意文件先尝试加载到内存中,如果加载到内存中失败,则保存在文件中运行它。相关代码,如下图所示:
运行C&C服务器下发的恶意文件
上传指定文件
病毒会创建一个名为ei_forensic_thread线程,根据正则表达式搜索计算机中指定类型(如:证书、钱包、密钥等)的文件,并且上传到C&C服务器中。正则表达式列表,如下图所示:
正则表达式列表
相关代码,如下图所示:
上传指定文件代码
文件加密
搜索指定类型的文件加密,被加密的文件扩展名列表,如下图所示:
被加密的文件扩展名列表
文件加密相关代码,如下图所示:
文件加密代码
三、附录
样本hash:
[招生]科锐逆向工程师培训(2024年11月15日实地,远程教学同时开班, 第51期)