导语:思科Talos团队已经确定了一次针对13个iPhone的攻击活动,该攻击似乎目前仅针对印度手机用户。研究发现,攻击者部署了一个开源移动设备管理(MDM)系统来控制已注册的设备。

针对移动设备管理(MDM)系统的攻击趋势

前言

思科Talos团队已经确定了一次针对13个iPhone的攻击活动,该攻击似乎目前仅针对印度手机用户。研究发现,攻击者部署了一个开源移动设备管理(MDM)系统来控制已注册的设备。虽然目前,研究者还不知道攻击者是如何注册目标设备的,但可以确定的是注册可以通过对设备的物理访问来完成,或者是通过使用社会工程来诱使用户注册。在社会工程攻击中,受害者被欺骗点击接受让攻击者访问物理设备的按钮。这一攻击活动非常值得注意,因为恶意软件会竭尽全力通过特定的移动应用程序来拦截用户数据。目前,思科Talos团队已向苹果报告了这一攻击,且苹果也采取了相关行动。

MDM会被攻击者用于在已注册的设备上部署恶意应用程序,在此次攻击活动中,研究者确定了该系统向位于印度的13个iPhone目标设备部署了五个恶意应用程序。其中两个程序似乎专门负责测试设备的功能,还有一个负责窃取用户存储的短信内容,其余两个负责报告设备的位置,并盗窃各种数据。

攻击原理

攻击者使用BOptions sideloading技术向合法应用程序(比如WhatsApp和Telegram)添加恶意功能,然后由MDM部署目标设备上。简单来说,BOptions sideloading目的是在应用程序中注入动态库。这些插入应用程序的恶意代码能够收集并盗窃设备中的信息,如电话号码、序列号、位置、联系人、用户照片、短信、邮件、WhatsApp聊天消息等,攻击者可以利用这些信息要挟受害者或实施另外的攻击。

根据位于MDM服务器和恶意软件的命令和控制(C2)服务器上的日志,研究者能够确定这次攻击自2015年8月就开始活动了,且该攻击活动仅针对位于印度的13个iPhone,攻击者在服务器上留下了重要数据,例如电子邮件和用户名。在其中,研究者观察到一个名为“test”或“mdmdev”的设备。研究者识别的日志文件包含设备的电话号码,该号码位于印度,并使用了“Vodafone India”网络,禁用漫游功能。因为根据这些证据,研究者非常肯定,这次攻击的幕后主使者就是印度人。

目前MDM在大型企业中越来越受欢迎,用户应该意识到,在设备上安装附加证书以允许远程管理操作的过程中可能会导致潜在的恶意活动。通过在Apple iOS可信证书链之外安装额外证书,可能会对第三方攻击打开大门。用户必须意识到,接受MDM证书等同于允许某个管理员访问他们的设备、密码等。这必须非常小心,以避免安全问题,另外也不应该是普通家庭用户所具备的技术。

总结一下,这种攻击的攻击原理可能是使用社会工程来诱骗用户点击某些链接,进而通过身份验证,获取访问设备的权限。

Talos目前确定了攻击中所用到的两种不同的MDM服务器:

hxxp://ios-certificate-update[.]com;
hxxp://www[.]wpitcher[.]com;

以上两个服务器都基于开源项目MDM –server:一个小型的iOS MDM服务器。MDM允许从其中某个位置同时对多个设备进行操作系统级控制,比如远程管理员可以安装或删除应用程序、安装或撤销证书、锁定设备或更改密码要求等,这意味着攻击者能够卸载Telegram和WhatsApp等合法应用程序,以安装恶意程序。

设备注册

由于注册过程的每个步骤都需要某种类型的用户交互,这就是为什么Talos会假设攻击者使用社会工程来让受害者参与对MDM的攻击。注册设备的第一步是安装机构颁发的证书,如果用户单击“允许”,则会显示“安装”消息。点击“安装”后,签名将切换为“已验证”,此时,该设备已注册完毕,攻击者就可以控制安装的配置文件了。

当攻击者将新应用程序推送到用户设备时,会弹出一个窗口。这使攻击者对受害设备有了很大程度的控制,此过程与使用MDM解决方案的大型企业类似。弹出的信息会建议用户必须安装证书才能允许注册设备,这就是典型的通过社会工程机制进行的诱骗式安装。

攻击者使用了非常具有欺骗特点的域名:”ios-certificate-update[.]com” ,如果不仔细看,这个域名非常正常。由于研究者认为这次攻击是针对位于印度的设备,所以非英语国家的人可能会认为这是“正常的”,另外证书和更新命名也被设计成欺骗用户的格式。

对攻击者使用的MDM的技术分析

由于攻击者留下了大量信息,这使研究者能够分析攻击所用的MDM曾用过的文件。首先,MDM使用的证书:

CA.crt:

Serial Number: 13905745817900070731 (0xc0fb222544ceb74b)
Issuer: C=CR, ST=Split, L=Split, O=NA, OU=IT, CN=ios-certificate-update.com/emailAddress=nicholas.vukoja@mail.ruValidity
  Not Before: Sep  6 11:33:09 2017 GMT
  Not After : Sep  6 11:33:09 2018 GMT
Subject: C=CR, ST=Split, L=Split, O=NA, OU=IT, CN=ios-certificate-update.com/emailAddress=nicholas.vukoja@mail.ru

该证书于2017年9月发布,其中包含位于俄罗斯的电子邮件地址,研究者的调查显示攻击者并非来自俄罗斯。研究者认为这是攻击者设置的障眼法,好让分子者的注意力转向别处。

Identity.p12:

Serial Number: 14177612590375883362 (0xc4c0ff88e475d262)
Issuer: C=CR, ST=Split, L=Split, O=NA, OU=IT, CN=ios-certificate-update.com/emailAddress=Aleksi.Dushku@mail.ruValidity
  Not Before: Jan  6 04:59:56 2018 GMT
  Not After : Jan  6 04:59:56 2019 GMT
Subject: C=CR, ST=Split, L=Split, O=NA, OU=IT, CN=ios-certificate-update.com/emailAddress=Aleksi.Dushku@mail.ru

这是另一个证书,它通过使用另一个mail.ru地址指向俄罗斯。

Server.csr:

Subject: C=HR, ST=Hrvatska, L=Split, O=NA, OU=IT, CN=ios-certificate-update.com/emailAddress=nicholas.vukoja@mail.ru

在此证书中,攻击者同样在位于一封位于俄罗斯的电子邮件中提到了Hrvatska(克罗地亚语)。

证书是自签名的,或由Comodo证书颁发机构签名的。

日志分析

有关MDM的最有趣的信息可以在日志文件中找到,因此,研究者可以根据其中的信息确认以下几点:

1.根据设备序列号,有13个手机设备被攻击;

2.所有设备都位于印度(根据电话号码和电话提供商来判读的);

3.手机型号包括:iPhone 5.4,iPhone 7.2,iPhone 8.1,iPhone 8.2,iPhone 9.3,iPhone 9.4;

4.iOS版本包括:10.2.1,10.3.1,10.3.2,10.3.3,11.0,11.0.3,11.2.1,11.2.5,11.2.6;

针对移动设备管理(MDM)系统的攻击趋势

不过目前,研究者还不知道攻击者如何将这13个设备注册到MDM中,可能是通过对手机的物理访问,或通过使用社会工程,诱骗用户注册他们的设备。

研究者认为攻击者使用了他们的个人手机来测试MDM,因为其中包括名为“Test”和“mdmdev”的设备,且这两款设备共享相同的电话号码但测试名却不一样。

使用BOptions sideloading技术的恶意应用程序

攻击者的目的似乎是将恶意应用程序部署到这13个受感染的设备上,为此,他们决定使用BOptions sideloading技术。其目的是将动态库注入合法应用程序,攻击者使用GitHub项目创建iOS包(.ipa文件)中保存的恶意BOptionspro.dylib库,注入库可以请求其他权限、执行代码并从原始应用程序中窃取信息等,总部位于米兰的间谍软件公司Hacking Team此前曾使用过这种技术。

TELEGRAM,WHATSAPP和APPSSLOADER

研究者通过对残留在MDM服务器上的痕迹进行分析,确定了三个受影响的应用程序(TELEGRAM,WHATSAPP和APPSSLOADER

)。 AppsSLoader似乎无害,攻击者创建此应用程序是为了测试库注入,它只是向用户弹出一个窗口,确认动态库的执行,这很可能是为了在恶意部署之前测试库的有效性而创建的。

攻击影响最大的是Telegram和WhatsApp,它们都被注入了相同的恶意代码,目的是将收集的数据发送到位于 hxxp[:]//techwach[.]com的C2服务器。

如果恶意代码尚未拥有以下权限,则会开始检查并请求它们:

1.访问用户联系人列表的权限(PhnNumber :: getContAccess);

2.访问用户照片的权限(PhnNumber :: getPAccess);

获取权限的目的是为了窃取Telegram和WhatsApp的消息,以Telegram为例,窃取信息的步骤如下:

1.打开’tgdata.db’,这是Telegram使用的SQLite3数据库;

2.检查密钥库中的’UPLOADED_CHAT’ 密钥;

3.查询 “select users_v29.phone_number, users_v29.uid from users_v29;”;

4.查询”select messages_v29.from_id AS oid,users_v29.first_name, users_v29.last_name,users_v29.phone_number,messages_v29.message,messages_v29.mid,messages_v29.to_id from messages_v29 join users_v29 ON (messages_v29.from_id = users_v29.uid);”;

5.解析查询结果,存储日志信息、时间戳和其他元数据;

6. 将这些信息发布到hxxp[:]//techwach[.]com;

如果以WhatsApp为例,则窃取信息的步骤如下:

1.打开’ChatStorage.sqlite’,这是用于WhatsApp消息的数据库;

2.查询 ‘SELECT Z_PK,ZFROMJID,ZTOJID,ZPUSHNAME,ZTEXT,ZMESSAGEDATE FROM ZWAMESSAGE WHERE Z_PK > ‘%d”;

3.解析查询结果,存储日志信息、时间戳和其他元数据;

4.将这些信息发布到hxxp[:]//techwach[.]com;

此外,通过深入分析,恶意攻击还计划在将来从受感染的设备盗取用户的通讯录,对用户实施定位并窃取相册里的图像。

以下是techwach C2服务器上可用的PHP页面列表:

ll.php
dyrKztORKwVWOGo.php
get.php
hh.php
info.php
jDRucchWSoWQGpU.php
UfmcRxYDaVVbrBl.php

此次攻击的一个有趣之处在于,当被攻击者注入恶意代码的合法应用程序运行时,恶意代码可以实现周期性的代码执行。这种现象早在先前分析的iOS恶意软件中被发现过,它是通过运行时修改应用程序的代码执行的。不过攻击者这次使用的技术却与以前发现的现象不一致,该过程几乎完全独立于应用程序,通过创建一个计时器,最终在后台线程中执行恶意代码。攻击者正式通过利用应用程序的后台任务队列来调度要在后台异步执行的任务。这意味着恶意代码在执行恶意攻击时,用户是看不见的,并且可以轻松的与任何实际应用程序同时启动。

PRAYTIME

另外,思科Talos团队在印度的竞选期间发现了另一个执行恶意代码的合法应用程序。PrayTime翻译成中文就是祷告时间的意思,大家都知道,印度是一个宗教很盛行的国家,所以PrayTime程序会向用户发出需要祷告的通知。如果用户点击接受这个通知,则恶意代码会连接到域voguextra[.]com,其目的就是下载并向用户显示特定的广告。此应用程序还利用private framework在安装它的设备上读取短信内容,并将这些内容上传到C2服务器。注意:在iOS开发过程中,虽然使用privateframework的应用会被拒绝审核,但这并不意味着privateframework就不会被使用,相反,它很强大,很好用,甚至能提供一些匪夷所思的功能。

MYAPP

MyApp是一款普通的iOS应用,但是,该应用程序不执行任何操作。除了标准的iOS应用运行代码之外,它几乎没有与之关联的其他代码。这可能是另一个测试应用程序,但研究者无法确定其确切用途。所以,这个应用程序是非恶意的。

Techwach C2服务器

Telegram和WhatsApp中的恶意代码会将收集的数据发送到techwach[.]com服务器。该服务器自2015年8月起一直处于活跃状态。最初,服务器上使用的用户名是arnoldrex。随后,被改为chernobog(一位斯拉夫神)。

总结

本次调查显示,这次袭击针对的是在印度的用户,且只针对使用iPhone用户,根据目前的统计,只有13个用户被攻击了。目前尚不清楚该攻击是否有明确的目标或者具体目的是什么,就连幕后主使也还很模糊,很有可能该攻击目前还可能处于测试阶段。截至目前,该攻击只使用了社会工程方法,换句话说就是要求用户不断点击“确定”按钮即可。这种类型的攻击很难防范,因为用户经常被诱骗。所以在此,研究者再三提醒,用户必须在点击未经请求的链接之前三思,并且用户应验证来自任何未经请求的调用凭据。

攻击者安装了一个开源MDM,并利用它将恶意代码部署到安全应用程序(如Telegram和WhatsApp)中,以便悄悄的从受害者的手机中检索短信或聊天记录,照片和用户的位置。在出现的三年的时间里,由于攻击破坏的数量很少,所以一直没有被曝光。虽然所有技术细节都把幕后的操纵者指向印度,但攻击者试图通过使用mail.ru电子邮件来把研究者的注意力指向俄罗斯黑客。但是,研究者发现留在MDM上的痕迹,却是一个注册的印度电话号码。

一旦用户丢失了对手机的物理访问权限,攻击者就可以更容易的进行恶意活动。攻击者还能够将设备置于他自己的恶意MDM中,这一事实表明,攻击者的确有能力获得初始访问权限。

IOCS

329e025866bc6e88184af0b633eb3334b2e8b1c0817437c03fcd922987c5cf04 AppsSLoader.ipa

aef046b67871076d507019cd87afdaeef602d1d2924b434ec1c165097b781242 MyApp.ipa

4be31095e5f010cc71cf8961f8fe3fc3ed27f8d8788124888a1e90cb90b2bef1 PrayTime.ipa

624689a1fd67891be1399811d6008524a506e7e0b262f549f5aa16a119369aef Telegram.ipa

e3872bb33d8a4629846539eb859340940d14fdcf5b1c002b57c7dfe2adf52f08 Wplus.ipa