译者: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