译者:Janus情报局

原文地址:《Ztorg: from rooting to SMS》

自从2016年9月以来,我一直在监控 Google Play 商店的新 Ztorg 木马,到目前为止,还发现了几十个新的恶意应用程序。所有这些都是恶意 root 软件,这些软件利用漏洞在受感染的设备上获得 root 权限。

然而,在2017年5月下旬,我发现有一个并非如此。有两个恶意应用程序与 Ztorg 木马相关,通过 Google Play 分发。虽然不是恶意 root 软件,但是可以发送高付费短信和删除短信。这些应用程序已经从 Google Play 分别安装了5万和1万次。

卡巴斯基实验室产品将两个木马应用程序检测为 Trojan-SMS.AndroidOS.Ztorg.a 。我们向 Google 报告了恶意软件,这两个应用都已从 Google Play 商店中删除。

第一款恶意软件,应用名为 “Magic browser” 的软件,于2017年5月15号上传到 Google 商店,安装次数超过5万次。

第二个应用程序,应用名为 “Noise Detector” ,具有相同的恶意功能,安装了10,000次以上。

他们能做什么?

启动后,木马将等待10分钟,然后连接到其命令和控制(C&C)服务器。它使用一种有趣的技术从 C&C 获取命令:它向 C&C 发送两个 GET 请求,并且都包括国际移动用户身份(IMSI)的一部分。第一个请求将如下所示:

GET c.phaishey.com/ft/x250_c.txt, where 250 – first three digits of the IMSI.

如果木马收到返回数据,将会发出第二个请求。第二个请求将如下所示:

GET c.phaishey.com/ft/x25001_0.txt, where 25001 – first five digits of the IMSI.

为什么木马需要这些来自 IMSI 的数字?

IMSI 的有趣之处在于前三位数字是 MCC(移动国家码),第三位和第四位是 MNC(移动网络代号码)。使用这些数字,网络犯罪分子可以识别受感染用户的国家和移动运营商。他们需要这些信息来帮助选择发送高付费短信。

针对这些请求,木马可能会收到一些加密的 JSON 文件,其中包含一些数据。此数据应包括 offer 列表,每个 offer 均包含一个名为 “url” 的字符串字段,可能含有或不包含实际的网址。木马将尝试使用自己的类打开/查看该字段。如果这个值确实是一个 url,那么木马会向用户显示其内容。但是如果它是别的东西,并带有一个 “SMS” 子串,用户将发送包含提供给该数字的文本的 SMS 。

这是发送短信的一种不寻常的方式。当它接收到访问的网址或发送的短信后,木马将关闭设备声音,并开始删除所有传入的短信。

我无法通过 Google Play 分发的木马获得任何命令。但是对于其他具有相同功能的木马程序,我得到了以下命令:

{“icon”:”http://down.rbksbtmk.com/pic/four-dault-06.jpg”,”id”:”-1″,”name”:”Brower”,”result”:1,”status”:1,”url”:”http://global.621.co/trace?offer_id=111049&aff_id=100414&type=1″}

这是一个定期的广告报价。

WAP计费订阅

我在 Google Play 商店外发现与 Google Play 商店相同功能的更多恶意应用。有趣的是,它们看起来不像独立木马,更像是一些木马程序的附加模块。

进一步的调查显示,这些木马由一个普通的 Ztorg 木马和其他 Ztorg 模块一起安装的。

在其中一些木马中,我发现他们通过 MCC(移动国家码)从恶意 url 下载了一个 JS 文件。

我使用不同的 MCC 下载了几个 JS 文件,来了解这些网络犯罪分子对来自不同国家的用户做些什么。我无法得到一个美国 MCC 的文件,但对于其他我试用过的国家,我收到了一些具有一些功能的文件。所有的文件都包含一个名为 “getAocPage” 的函数,它最有可能引用 AoC - 付费建议。

在分析这些文件后,我发现他们的主要目的是通过 WAP 计费对网页进行点击劫持攻击(clickjacking)。这样一来,木马可以从用户的移动帐户窃取钱。WAP 帐单的工作方式与高付费短信类似,但通常采用订阅形式,而不是一次性付款作为大多数高付费短信。

这意味着木马从 CnC 获取的 url 网址不仅是广告 url ,也有可能是 WAP 帐单订阅的 url 。此外,一些具有此功能的木马程序使用包含 “/subscribe/api/” 的 CnC URL ,这也可以引用订阅。

所有这些木马,包括来自 Google Play 的木马,都在试图从设备发送短信。为了做到这一点,他们正在使用大量方法来发送短信:

总而言之,“Magic browser” 应用程序试图利用其代码中11个不同的地方发送短信。网络犯罪分子这样做是为了能够从不同的 Android 版本和设备发送 SMS 。此外,我还能找到另一种 Trojan-SMS.AndroidOS.Ztorg 的修改版本,它试图通过 “am” 命令发送 SMS ,尽管这种方法不行。

与 Ztorg 恶意软件家族的关联

“Magic browser” 应用程序的升级方式与其他 Ztorg 木马程序类似。“Magic browser” 和 “Noise Detector” 应用程序与其他 Ztorg 木马代码相似。此外,最新版本的 “Noise Detector” 应用程序在安装包的 assets 文件夹中包含加密文件 “girl.png” 。解密后,这个文件就变成了一个 Ztorg 木马。

我还发现了几个具有相同功能的木马,它们是由一个普通的 Ztorg 木马和其他 Ztorg 模块安装的。而且这并不是第一个额外的 Ztorg 模块在谷歌中作为独立的木马发布的情况。在2017年4月,我发现一款名为 “Money Converter” 的恶意应用程序,它从谷歌游戏中安装了超过10,000次。它使用辅助性服务来安装谷歌游戏中的应用程序。因此,木马可以在不与用户交互的情况下,默默地安装和运行推广应用程序,即使是在无法获得 root 权限的更新设备上。

木马 — SMS vs. root

Google Play 上有两个具有相同功能的恶意应用程序 - “Noise Detector” 和 “Magic browser” ,但我认为它们各自有不同的用途。“Magic browser” 首先上传到 Google 商店,我认为网络犯罪分子正在检查他们是否能够上传这种功能。他们上传恶意应用从程序后,并没有使用较新版本进行更新。

但是这是一个与 “Noise Detector” 不同的故事 - 在这里看起来像网络犯罪分子试图上传受 Ztorg 木马常规版本感染的应用程序。但是在上传过程中,他们决定添加一些恶意的功能来赚钱,同时他们还在发布恶意软件。而 “Noise Detector” 的更新历史证明了这一点。

5月20日,他们上传了一个名为 “Noise Detector” 的应用程序。几天后,他们用另一个“干净”的版本更新它。

几天之后,他们上传了一个版本到 Google Play ,其中包含一个加密的 Ztorg 木马程序,但没有解密和执行它的可能性。在第二天,他们终于用 Trojan-SMS 功能更新了他们的应用程序,但仍然没有增加执行加密的 Ztorg 模块的可能性。很有可能,如果该应用尚未从 Google Play 中删除,则他们将在下一阶段添加此功能。还有一种可能是,试图添加这个功能是让谷歌注意到木马的存在,并导致它的删除。

结论

我们发现一个非常不寻常的 Trojan-SMS 通过 Google Play 分发。它不仅使用大约十几种方法来发送短信,而且还以一种非同寻常的方式初始化这些方法:通过使用 CnC 中的命令处理网页加载错误。它可以打开广告网址。此外,它与 Ztorg 恶意软件有相同的功能,通常由 Ztorg 作为附加模块安装。

通过分析这些应用程序,我发现网络犯罪分子正在从事点击劫持 WAP 计费。这意味着这些木马不仅可以打开广告网址,还可以发送高付费短信,还可以打开网页,通过 WAP 计费从用户账户偷钱。为了隐藏这些活动,木马关闭设备声音并删除所有传入的短信。

这并不是网络犯罪分子第一次通过谷歌来发布 Ztorg 模块。例如,在2017年4月,他们上传了一个模块,可以点击谷歌商店的应用按钮来安装甚至购买推广应用。

最可能的情况是,攻击者正在发布 Ztorg 模块,在他们试图上传常规的 Ztorg 木马的同时,还会花费额外的钱。我之所以这么说,是因为其中一个恶意应用程序有一个加密的 Ztorg 模块,但它无法解密。

MD5

F1EC3B4AD740B422EC33246C51E4782F
E448EF7470D1155B19D3CAC2E013CA0F
55366B684CE62AB7954C74269868CD91
A44A9811DB4F7D39CAC0765A5E1621AC
1142C1D53E4FBCEFC5CCD7A6F5DC7177

Paper 本文由 Seebug Paper 发布,如需转载请注明来源。本文地址:https://paper.seebug.org/329/