[ English ]
[ English ]
安天CERT & AVL Team
分析报告PDF下载
首次发布时间:2014年11月08日 08时00分
本版本更新时间:2014年11月10日17时00分
当前版本:V1.5
目 录
4.4 “破界”运行于iOS平台核心文件(sfbase.dylib)分析
如果“网络威胁”是一个幽灵的话,那么2014年,这个幽灵就一直在流窜。当“心脏出血(Heartbleed)”和“破壳(Shellshock)”把我们的目光刚刚锁定在类UNIX系统和开源领域时,沙虫(SandWorm)漏洞又让我们重回Windows战场。而北京时间11月6日起,引发业内关注的一个被称为“WireLurker”新样本通过Windows和Mac OS X系统实现对iOS系统的侵害。这个样本的形态和特点,无疑值得关注和深入分析,鉴于此样本影响的平台非常广泛,安天组成了由安天CERT(安天安全研究与应急处理中心)和AVL Team(安天旗下独立移动安全研究团队)的联合分析小组,但在我们同时研究了此次威胁的先发厂商Palo Alto Networks的大报告后,我们发现其已经非常详尽完备。在当年Stuxnet、Flame的分析中,我们意识到与兄弟厂商之间进行马拉松式的分析竞赛,一方面虽能提升分析深度和粒度,但同时也会造成业内资源的冗余消耗,是一柄双刃剑。因此我们决定减少此次分析兵力投入。以安天CERT和AVL Team的新分析员为主完成此次分析。雏鹰初飞,如有不足之处, 希望得到批评指正。也希望大家通读Palo Alto Networks的报告《WIRELURKER:A New Era in iOS and OS X Malware》和《WireLurker for Windows》,获得更系统全面的信息。
同时令我们非常开心的是,Palo Alto Networks相关报告的主笔亦曾是安天CERT曾经的小伙伴Claud Xiao。尽管远隔重洋,但我们依然面对同样的安全威胁而战斗。
海上出明月,应急响应时。伙伴隔海望,不觉起相思。
该恶意代码被其发现者Palo Alto Networks命名为“WireLurker”,直译其名为“连线潜伏者”。在我们讨论中文命名时,考虑到WireLurker主要拥有如下传播特点:通过第三方APP市场“麦芽地”(亦发现百度网盘的分享)进行下载传播到iOS系统。同时其亦具有如下功能特点:可在Windows平台运行带有恶意代码的包裹文件并将恶意代码安装到iOS系统、可在Mac OS X平台运行带有恶意代码的包裹文件并将恶意代码安装到iOS系统;最终对iOS系统相关文件进行窃取回传。从相关WireLurker样本所传播的环境涉及到Windows、Mac OS X两个桌面系统,涉及到一家第三方App市场,并最终危害智能终端操作系统iOS的特点来看,其跨越了多个系统平台,利用相关同步接口,突破了各平台间的边界,所以安天经过讨论最终将WireLurker的中文命名定为“破界”。下图是此恶意代码整体传播与执行的示意图,或许能解释我们将其中文名命名为“破界”的初衷。
“破界”恶意代码在用户iOS系统中的主要恶意行为包括:获取电话、短信、浏览器、移动储存挂载、搜索、系统偏好等信息,并通过POST上传到服务器,其中通讯录和短信通过sqlite数据库获取,还会检测更新的恶意代码版本。
因在安天进行分析时,Palo Alto Networks在其美国公司所在地时间11月5日发布针对苹果OS X及iOS系统的恶意代码新家族的分析大报告,并将其命名为“WireLurker”。按恶意代码家族命名中的规律,以最早发现的反病毒厂商命名为准,所以安天将该恶意代码命名为:Trojan/iOS.WireLurker。
为了使“破界”恶意代码疫情迅速得到控制,苹果已经撤销恶意软件的安装证书,使恶意软件无法进行安装操作;且传播源“麦芽地”网站已经于北京时间2014年11月07日17时关闭了苹果App大全的Mac软件分享功能。
“麦芽地”传播源虽告一段落,但百度云ekangwen206用户分享的247个文件中全部带有能够感染iOS系统的“破界”恶意代码,所有文件均为苹果手机与平板的安装应用程序,程序类别多样,包括但不限于文字处理软件、即时通讯软件、游戏软件、银行终端软件等。根据百度云盘记录的下载次数,我们将所有应用下载次数进行汇总统计,截止目前共计下载72527次,其中下载RAR包文件70979次,下载DMG包文件1548次。
文件类别 |
统计数量 |
下载次数 |
说明 |
RAR |
180 |
70979 |
Windows平台的RAR压缩文件,内部包含恶意安装程序 |
DMG |
67 |
1548 |
iOS平台的DMG压缩文件,内部包含恶意安装程序 |
将下载文件解包后,我们对恶意安装包的时间戳进行统计,根据样本的时间戳内容,这些恶意文件应该是使用生成器统一生成,且编译时间在2014/3/13(不排除人为修改可能),那么可推测这些恶意文件可能是在2014年3月就开始传播了。
文件类别
|
时间戳
|
AutoCAD360 2.1 |
2014/3/13 15:56 |
OPlayer 2.0.12 |
2014/3/13 15:56 |
QQ餐厅 2.2 |
2014/3/13 15:56 |
中国银行手机银行 2.6.3 |
2014/3/13 15:56 |
圣经 4.3.3 |
2014/3/13 15:56 |
我查查 5.8.0 |
2014/3/13 15:56 |
水果忍者免费版 1.8.4 |
2014/3/13 15:56 |
波克斗地主 2.21 |
2014/3/13 15:56 |
讯飞语音输入 1.0.1073 |
2014/3/13 15:56 |
…… |
|
酷我音乐 3.4.0 |
2014/3/13 15:56 |
铁路12306 1.24 |
2014/3/13 15:56 |
阿里旺旺 1.00.091 |
2014/3/13 15:56 |
音悦台 1.2.5.7 |
2014/3/13 15:56 |
鳄鱼小顽皮爱洗澡 1.13.0 |
2014/3/13 15:56 |
龙珠祖玛 1.9.0 |
2014/3/13 15:56 |
将下载的文件进行分析后发现RAR包样本都有共性行为:解包后包含6个相同的 DLL文件,一个“使用说明.txt”文件,一个与安装包同名但后缀为.exe的文件。后缀为.exe文件均包含“破界”恶意文件,当其运行后将恶意文件释放到TEMP目录命名为“apps.ipa”,随后调用iTunes接口安装至iOS设备。后缀为.exe文件中除恶意代码外还包含正常iOS安装包,当其运行后释放到TEMP目录命名为“third.ipa”,随后安装至iOS设备。
DMG包中也存在“破界”恶意代码,其文件名称更改为“infoplistab”,且其HASH值与“apps.ipa”的HASH值相同。
下面为后缀为.exe文件中嵌入的apps.ipa恶意文件“破界”二进制对比图:
下面为后缀为.exe文件中嵌入的名称为third.ipa的正常文件二进制对比图:
如果iOS设备已被越狱,则“破界”恶意代码从PC端向iOS端释放并安装恶意应用apps,apps启动后加载其包下的lib文件sfbase.dylib,该文件以Cydia插件形式运行获取root权限,运行后会hook sendEvent函数,获取电话、短信、浏览器、移动储存挂载、搜索、系统偏好等信息通过POST上传到服务器,其中通信录和短信通过sqlite数据库获取,还会检测更新样本版本。下图为“破界”恶意代码执行流程。
1.
解包分析
下面以“中国银行手机银行 2.6.3.rar”为例进行分析。解包后有如下8个文件,其中6个DLL与 1个文本文件为正常文件,后缀为.exe文件为恶意文件。
解压后文件 |
MD5值 |
说明 |
libiconv-2_.dll |
9C8170DC4A33631881120A467DC3E8F7 |
正常的文件 |
libxml2.dll |
C86BEBC3D50D7964378C15B27B1C2CAA |
正常的文件 |
libz_.dll |
BD3D1F0A3EFF8C4DD1E993F57185BE75 |
正常的文件 |
mfc100u.dll |
F841F32AD816DBF130F10D86FAB99B1A |
正常的文件 |
msvcr100.dll |
BF38660A9125935658CFA3E53FDC7D65 |
正常的文件 |
zlib1.dll |
C7D4D685A0AF2A09CBC21CB474358595 |
正常的文件 |
使用说明.txt |
34DBC4D5D0A550F8DDC6A8564E7B5B2F |
正常的文件 |
中国银行手机银行 2.6.3.exe |
224A12F1EF2B599881BFBEE2C8BFC084 |
捆绑恶意代码的PE文件 |
2.
向iOS设备安装分析
l 当系统中未装入iTunes时,双击“中国银行手机银行 2.6.3.exe”时,出现警告提示,当点击“是”,会连接iTunes的官方下载站点: http://www.apple.com/cn/itunes/download/。
l 当系统中安装iTunes时,会有如下安装提示:
l 当接入iOS设备时,会有如下提示:
l 当点击“点击安装”时会进行安装并提示安装完成。
安装完成后在测试设备中无新增应用(正常应用及恶意应用均未安装成功),测试中将正常版本及越狱版本均进行了测试,测试设备:IPad MINI2 + iOS 7.0.4。
3.
释放文件分析
会在用户的Temp目录下释放出如下两个文件:
解压后文件 |
MD5值 |
说明 |
apps.ipa |
54d27da968c05d463ad3168285ec6097 |
“破界”恶意文件 |
third.ipa |
59f6781f26e490a6ef37bf50e2256efa |
正常的文件 |
Apps.ipa文件在“中国银行手机银行 2.6.3.exe”中的偏移地址为:0xdbb22
third.ipa文件在“中国银行手机银行 2.6.3.exe”中的偏移地址为:0x1FDA00
4.
PE文件的代码分析
释放正常文件(third.ipa)和恶意文件(Apps.ipa):
将恶意文件apps.ipa(“破界”恶意代码)向iOS设备中进行安装。
1.
样本概述
本次分析以“三国杀 2.2.7.dmg”为例,该dmg文件并非MAC上的应用程序,而是直接调用代码连接iOS设备向其安装app。其文件中包含的app为:third.ipa。同时,注意到该包中包含一个名为infoplistab的文件,该文件为另外一个app(与“中国银行手机银行 2.6.3.exe”中的Apps.ipa为同一文件,MD5一致)。dmg文件内部结构如下:
2.
向iOS设备安装分析
a) 测试设备为非越狱设备时:
l 当运行“三国杀 2.2.7.dmg”时,出现绿色安装器的一个对话框,选择链接iOS设备进行app的安装。此安装器的制作方为“麦芽地”。
l 点击安装,则向iOS设备安装其资源文件中的third.ipa文件。
l 在非越狱版本中仍然可以安装成功,并且能够正常运行。
测试设备:未越狱+ IPad MINI2 + iOS 7.0.4
b) 当设备为已越狱iOS设备时:
l 连接设备,MAC无任何用户操作,界面显示仍需要点击安装。
l 已越狱的IPad MINI2设备上已被安装名为“应用大全”、“三国杀”的应用。
测试设备:已越狱+ IPad MINI2 + iOS 7.0.4
3.
释放文件分析
释放的文件中third.ipa为正常应用程序。 而infoplistab为恶意iOS应用(“破界”恶意代码)。其文件结构如下,包含恶意执行代码sfbase.dylib。
4.
关键APP文件的代码分析
“三国杀 2.2.7.dmg”安装程序会收集设备信息,判断是否iOS设备已经越狱,若设备已越狱则将恶意文件infoplistab释放出来,向iOS设备中安装。
1. start启动apps应用程序后,该应用程序会将其文件中的sfbase.dylib以Cydia插件的形式运行。
2. 窃取隐私:sfbase.dylib通过MSHookMessageEx来hook sendEvent函数,用于获取UIWindow相关的数据,电话、短信、浏览器、移动储存挂载、搜索、系统偏好等。
3. 通过getPhoneUser将通信录数据库拷贝到tmp临时空间,再通过查询语句获取内容。
4. 通过getSMSUser将短信数据库拷贝到tmp临时空间,再通过查询语句获取内容,其中包括了iMessage信息。
5. 最后使用getLoaclInfo将获取到的本地信息调用uploadFromFile函数通过POST上传信息,地址为:www.comeinbaby.com/app/saveinfo.php。
6. 检查更新:sfbase.dylib通过CheckUpdate调用CheckUpdate2检查是否有新版本,下载到临时空间并释放CheckUpdate2函数会检测样本是否有版本更新,地址为:http://www.comeinbaby.com/app/getversion.php?v=%@&adid=%@,其中参数v值为getCurrentVersion数据,即版本号;参数adid值为sharedManager+advertisingIdentifier+UUIDString数据;目前该域名已经不可访问。
[1]
Palo
Alto Networks,WIRELURKER:A New Era
in iOS and OS X Malware
https://www.paloaltonetworks.com/content/dam/paloaltonetworks-com/en_US/assets/pdf/reports/Unit_42/unit42-wirelurker.pdf
[2]
Palo
Alto Networks,WireLurker for Windows
http://researchcenter.paloaltonetworks.com/2014/11/wirelurker-windows/
[3]
VirusTotal,WireLurker在VirusTotal中的检出
[4]
百度云,ekangwen206用户分享文件集
http://pan.baidu.com/share/home?uk=2789483096#category/type=0
[5]
麦芽地,关于暂停麦芽地软件板块的公告
http://news.maiyadi.com/news-958442-1-1.html
安天是专业的下一代安全检测引擎研发企业,安天的检测引擎为网络安全产品和移动设备提供病毒和各种恶意代码的检测能力,并被超过十家以上的著名安全厂商所采用,全球有数万台防火墙和数千万部手机的安全软件内置有安天的引擎。安天获得了2013年度AV-TEST年度移动设备最佳保护奖。依托引擎、沙箱和后台体系的能力,安天进一步为行业企业提供有自身特色的基于流量的反APT解决方案。
本报告编写团队来自安天CERT和安天AVL Team。
安天CERT全名为安天安全研究与应急处理中心,是负责安天技术体系中快速响应的机构。负责安全威胁应急处置、重大威胁深度分析、安全趋势研判探索等工作内容,由病毒分析、安全研究、应急处理和安全服务方面的资深工程师组成,英文名称为Antiy CERT,是中国网络安全应急响应体制的重要企业节点。
AVL Team是安天旗下独立移动安全研究团队,前身是安天武汉研发中心。主要研究方向包括移动终端反病毒引擎开发、移动互联网安全研究,以及其他新兴安全领域研究等,是国内移动无线互联网安全领域研发的新锐力量。
关于反病毒引擎更多信息请访问: |
http://www.antiy.net (英文) |
关于安天反APT相关产品更多信息请访问: |
更新日期 |
更新版本 |
更新内容 |
2014-11-08 08:00 |
V1.0 |
文档创建、结构设计、概述撰写、某传播源分析撰写 |
2014-11-08 22:00 |
V1.1 |
增加“破界”恶意代码分析中流程分析、Windows平台样本分析、iOS平台关键样本分析 |
2014-11-09 17:00 |
V1.2 |
增加“破界”恶意代码分析中Mac OSX平台样本分析 |
2014-11-09 23:00 |
V1.3 |
增加“破界”命名说明,增加整体文档修订 |
2014-11-10 01:20 |
V1.4 |
更新图、更新描述文字、增加安天CERT与AVL Team说明 |
2014-11-10 08:50 |
V1.42 |
整体文档修订与校对 |
2014-11-10 13:30 |
V1.43 |
进行配图、二维码、加签名、修订 |
2014-11-10 17:00 |
V1.5 |
内容修订、更换部分测试内容 |