macOS 威胁TOP1——狡猾的Shlayer木马分析
2020-02-27 11:40:00 Author: www.4hou.com(查看原文) 阅读量:130 收藏

近两年来,Shlayer木马已经成为macOS平台的最常见威胁。2019年,大约有1/10的Mac安全解决方案应对过至少1次Shlayer木马,该木马占macOS检测量的30%。研究人员最早是2018年2月检测到该恶意软件的,截至目前,研究人员从收集到32000个不同的恶意木马样本,并识别了143个C2服务器域名。

image.pngmacOS TOP 10威胁(2018年2月-2019年10月)

自Shlayer木马首次发现至今,该恶意软件攻击活动方法变换很少,而且活动也没有减少的趋势。

Shlayer恶意软件检测量(2018年2月-2019年10月)

技术细节

从技术角度来看,Shlayer只是一款普通的恶意软件。在这些修改版本中,只有最新的Trojan-Downloader.OSX.Shlayer.e有所不同。与基于bash的恶意软件变种不同的是,该变种是用python编写的,而且算法有所不同。文中使用md5值为4d86ae25913374cfcb80a8d798b9016e的DMG文件进行证明。

一阶段感染

在挂载DMG镜像后,用户会被要求运行installation(安装)文件。但该标准installer实际上是一个python脚本,也是一个典型的macOS安装软件。

 

Shlayer用户指南

可执行文件所在的目录含有2个python脚本:gjpWvvuUD847DzQPyBI (主)和goQWAJdbnuv6 (辅)。后者使用字节移动实现了数据加密函数。

函数encryptText/decryptText对分别负责加密和解密字符串;

encryptList负责加密参数中传递的列表内容;

decryptList执行逆操作;

getKey()函数会根据操作系统的时间来生成加密密钥。

木马主要脚本

 

木马辅助脚本

然后,主脚本会生成唯一的用户和系统id,也会收集macOS系统版本相关的信息。根据这些数据,会生成GET请求参数来下载ZIP文件:

下载到/tmp/%(sessionID)目录的ZIP文件会使用解压函数解压到/tmp/tmp目录:

 

研究人员发现ZIP文件中有一个含有可执行文件84cd5bba3870的应用包:

解压后,主python脚本使用chmod工具来分配给文件84cd5bba3870系统中运行的权限:

样本还会使用moveIcon和findVolumePath函数复制原始挂载的DMG镜像图标到新下载应用包所在目录中:

之后,木马会使用内置的开放工具来运行下载的和解压的应用包,然后删除下载的压缩文件和解压的内容:

感染第二阶段

Shlayer自身只会执行攻击的初始阶段——main payload,入侵系统,加载main payload并运行。通过调查AdWare.OSX.Cimpli家族就可以看到对用户的一些负面效果。

乍一看,Cimpli installer看起来是无害的,只是会安装合作app:

 

但是实际上,Cimpli会执行许多用户看不到的动作。首先,会在Safari浏览器中安装一个恶意扩展,在一个恶意软件伪造窗口后隐藏操作系统安全通知。通过点击通知中的按钮,就会认为用户同意安装扩展。

用户看到的(左侧)实际进行的情况(右侧)

其中一个扩展名为ManagementMark,但该扩展并没有被检测为病毒:HEUR:AdWare.Script.SearchExt.gen。它会监控用户搜索并通过注入脚本script.js到浏览器页面中来重定向用户到hxxp://lkysearchex41343-a.akamaihd[.]net/as?q=c:

该样本会加载用PyInstaller打包的mitmdump工具。为了实现mitmdump来查看HTTPS流量,需要添加一个特殊的可信证书到系统中。之后,所有的用户流量都会被重定向到mitmdump加载的SOCKS5 proxy。

运行打包的mitmdump运行参数的参数

从截图中可以看出,所有流经mitmdump (SearchSkilledData)的所有流量都会由脚本SearchSkilledData.py (-s option)来处理:

该脚本会重定向所有的用户搜索查询到hxxp://lkysearchds3822-a.akamaihd[.]net。Kaspersky安全产品检测到的脚本AdWare.Python.CimpliAds.a并不是病毒。

Cimpli广告恶意软件成为系统中的锚,在该事件中流量并不会流经代理服务器,页面中注入的扩展的JS代码负责处理请求重定向。攻击者获取了用户搜索查询的访问权限后,就可以修改搜索引擎的结果来展示广告。用户就会收到无尽的广告。

而 Cimpli并非Shlayer可以下载的唯一一个广告恶意软件app。下载列表中包括AdWare.OSX.Bnodlero, AdWare.OSX.Geonei, AdWare.OSX.Pirrit,这些组成了macOS 2019 TOP 10威胁。

恶意软件家族之间的关系

Python版的Shlayer和之前bash版本的Shlayer很好区分:收集ID和系统版本细腻些、下载一个压缩文件到临时目录、执行下载的文件、删除下载痕迹等。所有修改过的地方都用curl -foL:

老版本木马(上)木马最新版本(下)

分发

恶意软件分发是恶意软件生命周期的重要一步,Shlayer的创建者也考虑到了这个问题。

Shlayer加载页示例

合作程序网站提供的描述

在大多数案例中,广告加载页面将用户带入分发链的下一个阶段,比如通过伪造的页面弹窗来安装隐藏在Flash Player更新背后的恶意软件。这也是Trojan-Downloader.OSX.Shlayer.a修改版分发的主要方式。

虚假Flash Player下载页面

Trojan-Downloader.OSX.Shlayer.e的传播方式有所不同。与之前的传播方法类似,用户会看到一个提供Flash Player更新的页面。但研究人员还在YouTube视频描述中发现了指向恶意软件下载的链接:

下面是与Shlayer分发页面有关的Wiki文章:

这些链接并不是恶意软件开发人员自己添加的,因为研究人员发现这些恶意域名都过期了,根据WHOIS数据判断,这些域名都属于同一个人。在这些网站上,新属主会发布一个重定向用户到Shlayer加载页的恶意脚本。总共有超过700个这样的域名。

统计数据表明,Shlayer攻击的用户分布在美国(31%)、德国(14%)、法国(10%)、和英国(10%)。这与分发该恶意软件的合作应用程序的条款和条件是一致的,几乎所有伪造的Flash Player下载页面都是英文内容的。

结论

研究人员对Shlayer恶意软件家族进行了大量的分析,可以得出结论macOS平台是网络犯罪分子收入的来源之一。攻击者利用了社会工程技术将木马链接隐藏于合法源之中,而且很难推测下一种欺骗技术的复杂性。

本文翻译自:https://securelist.com/shlayer-for-macos/95724/如若转载,请注明原文地址


文章来源: https://www.4hou.com/posts/lMoV
如有侵权请联系:admin#unsafe.sh