【技术分享】针对勒索软件MacRansom的分析

栏目: 编程工具 · 发布时间: 6年前

内容简介:【技术分享】针对勒索软件MacRansom的分析
2017-06-16 14:23:22 阅读:164次 来源: 安全客 作者:myswsun

【技术分享】针对勒索软件MacRansom的分析

作者: myswsun

预估 稿费:300RMB

投稿方式:发送邮件至linwei#360.cn,或登陆网页版在线投稿

0x00 前言

很多Mac用户可能认为他们的电脑能在类似勒索软件的攻击中幸免,认为他们的系统是相对安全的。Mac用户相对于Windows用户来说确实攻击比较少,但是这个和操作系统漏洞级别无关。事实上主要由于90%的个人用户使用Windows,而只有6%使用Mac。

【技术分享】针对勒索软件MacRansom的分析

0x01 MacRansom 网站

最近,我们的FortiGuard实验室发现了Ransomware-as-a-service (RaaS),其在TOR网络中使用一个web入口成为现今的一个趋势。然而,这种情况下,看到Windows以外的网络攻击是有趣的。这还是第一次在Mac OS上面看到RaaS。

【技术分享】针对勒索软件MacRansom的分析

这个MacRansom变种从网站中得到不易。它必须直接联系作者构建勒索软件。首先,我们认为它是个骗局,因为没有样本。但是通过作者邮件得到了意外的答复。

【技术分享】针对勒索软件MacRansom的分析

在我们首次邮件问询中,我们向作者说明了大概的要求,例如需要支付的比特币数量,触发勒索软件的日期,并且如果有人插入了USB设备它能被执行。

我们在上午11点 (GMT+8)发送了邮件,大约在当天下午9点得到了首次回应。

回应1(9点)

【技术分享】针对勒索软件MacRansom的分析

达成6月1日触发的共识,并提供了我的比特币地址,作者发了样本。

回应2(11点)

【技术分享】针对勒索软件MacRansom的分析

因为作者响应很快,我们试图深入的询问勒索软件相关的内容。

【技术分享】针对勒索软件MacRansom的分析

回应3(12点)

观察回应的时间,可以猜到作者可能在不同的时区,因为一般在深夜回复(对她们来说可能是早上)。同时,在第一次回应中,作者说“在你当地时间的6月1日午夜”。在发邮件时他们可能注意到了时间的不同。

为了验证勒索软件作者的地理位置,我们查看了原始的SMTP头,并且找到了他们的时区是GMT – 4。

【技术分享】针对勒索软件MacRansom的分析

0x02 行为分析

接下来,我们开始执行恶意软件。下面是作者宣称的功能点。我们看了下代码,查看是否有这些功能。

【技术分享】针对勒索软件MacRansom的分析

运行MacRansom,首先得到一个来自未定义的开发者的一个提示。因此,只要用户没有打开来自未知的开发者的文件,他们是安全的。点击打开使得勒索软件可以运行。

0x03 反分析

首先这个勒索软件检查自己是否运行于非Mac环境中,或者是否被调试。如果这些条件没有满足,勒索软件将会终止。

它以PT_DENY_ATTACH为参数调用ptrace或者进程跟踪命令行来检查勒索软件是否被附加调试器。

【技术分享】针对勒索软件MacRansom的分析

然后,使用sysctl hw.model命令行,检查机器型号并与“Mac”字符串比较。

【技术分享】针对勒索软件MacRansom的分析

最后,检查机器是否有两个CPU

【技术分享】针对勒索软件MacRansom的分析

0x04 启动点

一旦通过了初始检查,勒索软件创建了一个启动点~/LaunchAgent/com.apple.finder.plist。文件名模仿了Mac中的合法文件,以减少可疑程度。这个启动点允许MacRansom在每次启动是运行,并确保在触发时间加密。

com.apple.finder的内容:

【技术分享】针对勒索软件MacRansom的分析

然后拷贝原始的可执行文件到~/Library/.FS_Store。再次伪装成合法的文件名。在文件拷贝后,使用touch -ct 201606071012 '%s'命令改变时间戳。改变时间戳通常用来混淆调查取证。

然后勒索软件使用launchctl来加载com.apple.finder.plist。

0x05 加密

如上文提到,加密有触发时间,其由作者设置。在我们的例子中,是2017年6月1日零点。如果日期没到,勒索软件退出。

【技术分享】针对勒索软件MacRansom的分析

如果触发时间到了,勒索软件开始使用下面的命令行来枚举文件。对于勒索软件这不是常见的枚举文件的方式,但是一直很有效,因为大部分勒索软件遍历目录,和包含的文件扩展来确定加密文件。

%s是勒索软件的文件路径:

【技术分享】针对勒索软件MacRansom的分析

勒索软件最多只加密128个文件,通过上述命令返回。

和其他加密勒索软件比,这个加密算法是核心部分,在这上面我们花了大量的时间。我们的目的是找到RSA加密路径,然而这个勒索软件不像之前披露其他的OSX加密勒索软件那么复杂。它使用硬编码密钥的对称加密算法来劫持受害者的文件。这个勒索软件使用了两种对称密钥:

ReadmeKey: 0x3127DE5F0F9BA796

TargetFileKey: 0x39A622DDB50B49E9

ReadmeKey用来解密_README_文件,其包含了勒索提示和指令,TargetFileKey用来加密和解密受害者的文件。

值得注意的一件事是我们发现当逆向加密/解密算法时,TargetFileKey由随机生成的数字生成。换句话说,加密的文件一旦在勒索软件退出后将无法解密,TargetFileKey的内存将被释放,因此创建一个解密器或者恢复 工具 来恢复加密的文件有点挑战。而且,它没有任何与C&C服务器通信的功能,意味着没有TargetFileKey的密钥副本。但是,技术上恢复TargetFileKey是可行的。已知的技术是暴力破解。现代CPU暴力破解8字节长的密钥不需要花太久。

然而,我们依然怀疑作者号称能解密被劫持的文件,甚至假设受害者发送给作者一个未知的随机文件,见下图的勒索提示,不是完全正确的。

加密过程的伪代码如下:

【技术分享】针对勒索软件MacRansom的分析

在成功加密文件之后,它也会加密com.apple.finder.plist和原始的可执行文件。改变时间戳,并删除他们。作者这么做是为了即使使用恢复工具得到勒索软件,也是无意义的。

勒索软件需要0.25比特币(大约700美元),需要受害者联系getwindows@protonmail.com来解密。

【技术分享】针对勒索软件MacRansom的分析

0x06 总结

并不是每天都能看到新的专门针对Mac平台的勒索软件。尽管它的危害远低于目前针对Windows的勒索软件,但是它会加密受害者的文件或者阻止访问重要文件,从而造成严重危害。

这个MacRansom变种可能是模仿者制作的,因为我们看到很多来自之前的OSX勒索软件中的类似代码和想法。尽管它不同于之前的OSX勒索软件使用了反分析技巧,但是这些都是广为传播的技术。不管运行的操作系统平台,MacRansom是勒索软件盛行的另一个例子。针对勒索软件没有完美的缓解措施。然而,经常备份重要文件能将损失降到最低,同时要注意未知源或开发者的文件。

0x07 附录

Samples:

a729d54da58ca605411d39bf5598a60d2de0657c81df971daab5def90444bcc3 – Zip

Detected as OSX/MacRansom.A!tr

617f7301fd67e8b5d8ad42d4e94e02cb313fe5ad51770ef93323c6115e52fe98 – Mach-O file

Dropped files:

~/LaunchAgent/com.apple.finder.plist

~/Library/.FS_Store

MacRansom网站的FAQ:

【技术分享】针对勒索软件MacRansom的分析

【技术分享】针对勒索软件MacRansom的分析 【技术分享】针对勒索软件MacRansom的分析

本文由 安全客 翻译,转载请注明“转自安全客”,并附上链接。

原文链接:


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Lighttpd

Lighttpd

Andre Bogus / Packt Publishing / 2008-10 / 39.99

This is your fast guide to getting started and getting inside the Lighttpd web server. Written from a developer's perspective, this book helps you understand Lighttpd, and get it set up as securely an......一起来看看 《Lighttpd》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具