社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)

引言:互联网的世界中,我们都在裸奔。隐私安全问题一直存在也将持续伴随着我们的生活,与我们休戚相关。数据泄露事件频发,Jason's Deli于1月份披露,犯罪分子通过在该公司不同餐厅的多个POS终端上部署抢占RAM的恶意软件,获得的支付卡信息是来自支付卡的磁条全轨数据,记录数量340万。网络安全研究公司Gemini Advisory的4月报告,网络犯罪分子通过植入商店收银系统的软件窃取信用卡和借记卡号码数据记录数量500万……

社会工程学原理引用

“人类天生就容易被蒙骗并且胆小怕事。通过社交工程,你将会把自己体内这两种性格磨练掉。”在电影《我是谁:没有绝对安全的系统》有这样一句经典台词。在信息安全中,人是最薄弱的环节,恶意软件可以通过社会工程学手段进行欺诈用户以收集信息、入侵系统。本次我们分析的恶意软件StealAll就使用了假托、暗度陈仓、尾随等社会工程学手段,达到控制用户手机,监听窃取用户隐私的目的。

恶意行为概述

同过样本的基本信息,对病毒的社会工程学假托手段可见一斑。

样本基本信息:

病毒名称:A.Privacy.StealAll.sf

应用包名:com.android.androidservice

应用安装名称:百度

恶意属性:隐私窃取、远程控制

用户安装病毒应用后,应用通过隐藏自己的桌面Icon,使用户无法直接使用和卸载,注册系统启动、网络变换、短信接收监听来启动应用,并尝试获取root权限,在具有root权限的系统中,将自己的应用置为系统应用,并卸载自身用户应用。在一切准备工作就绪之后,病毒应用通过远控技术开启了监听窃取用户隐私的行为,窃取的用户隐私包含:用户语音通话、短信信息、社交软件数据、通讯录、通话记录、设备信息等。

StealAll恶意行为源码爆破

在android系统中,执行特定的操作,尤其是涉及隐私的行为都需要相应的权限申请,此样本中,主要行为为窃取隐私,除了网络访问的权限还需要其他的权限,逆向思维,我们可以从其申请权限中了解其行为。

权限列表如图1所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(1)

图1 权限列表

其中的RECORD_AUDIO、READ_CONTACTS、READ_SMS、RECEIVE_SMS、SEND_SMS权限都属于极其敏感的权限,下面我们就从源码入手,扒一扒这个样本。

远程控制分析

此病毒样本通过远程控制,达到变换主控地址,长期监听用户手机的目的。我们先用一张图来描述病毒从安装到窃取隐私的远控操作主流程。如图2所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(2)

图2 StealAll远控操作主流程

从图中我们可以看到,远控是通过先获取用户手机号码,上传到服务器,然后通过udp网络和短信发送主控ip和指令进行双通道实现的。我们从源码层面对其流程进行追踪。

首先,最基本的是获取权限和设置监听,我们从receiver入手,在清单文件中注册了TimerReceiver、AutoSMS和NetWorkMonitor,如图3所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(3)

图3 注册广播

通过系统广播触发监听之后,开启服务获取用户电话号码发送到服务器,需要先获取主控ip,通过解密assets文件获取ip如下图4所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(4)

图4 ip地址

获取用户手机号码,如图5所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(5)

图5 获取用户手机号

将用户手机号和一些设备信息通过udp协议上传到服务器,如图6所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(6)

图6 上传用户手机号

获取到用户的手机号码之后,就会向用户手机发送短信,而app端通过监听用户接受短信的广播,判断是否为指令短信,进行拦截和执行远控操作。

监听到用户收到短信时,先根据短信内容是否有标记字段"Your seriala:",判断是否为指令短信,如图7所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(7)

图7 远控短信解析

如果为指令短信则解析指令进行相应操作,并终止短信广播,使用户收不到此信息,有需要时,向远控号码回复信息。分别如图8、图9所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(8)

图8 拦截短信解析指令

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(9)

图9 终止短信广播及回复短信

病毒不仅通过短信通道远控,还使用udp协议,解析网络响应指令进行远控操作,解析udp返回数据指令如下图10所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(10)

图10 解析网络远控指令

根据对远控代码的分析,我们可以得出其指令字典,分为短信指令表和网络指令表,分别如下表1、表2所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(11)

表1 短信远控指令字典

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(12)

表2 网络远控指令字典

隐私窃取分析

上面我们对病毒信息和主控方式进行了描述,对其隐私窃取的框架也已经了然于胸,下面进入核心代码,对其主要窃取隐私的源码进行分析。

获取社交软件信息

对于经常使用的社交软件,每天都在产生着大量的我们的个人信息,甚至我们会将自己的一些秘密和重要的账号信息通过社交软件告诉我们亲密的人,咱们在此不讨论第三方社交平台的安全问题,为了实现用户体验等一些因素,社交软件会将我们的一些社交信息进行本地的存储。大多数人知道的是SD下的一些照片,视频和其他一些文件的存储,那我们的文本聊天记录存储在哪呢?会不会被人恶意窃取?

下面我们对此病毒窃取社交软件信息的行为进行源码分析。通过上面远程控制行为我们知道,在接收特定指定之后,会进行微信数据的窃取行为,接收指令后的操作如下图11所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(13)

图11 解析微信数据窃取指令

接收到含有“weixindb”字段的指令之后,就执行了微信数据拷贝操作方法CopyWeiXinData,进入此方法查看其实现形式,如图12所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(14)

图12 微信数据拷贝

从拷贝微信数据的方法中我们看到它欲将微信数据和语音文件等拷贝到SD卡目录下AndroidService目录,对,就是目录“/data/data/com.tencent.mm/MicroMsg”下的文件,这个文件就存储着你微信的各种数据包含文本聊天的记录,然后通过解密就可以看到你的聊天了,至于如何解密,网上有很多介绍,在此就不做介绍。但是,了解过移动开发的都知道,要想访问app文件数据,也就是“/data/data……”目录,是需要ROOT权限的,那么此病毒又是在哪里获取ROOT权限的呢?我们对命令执行函数RootCmd进行追踪。如图13所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(15)

图13 CMD命令

可以看到其有一个RootUtil的获取root权限的工具类,执行了“zlsu”命令。在服务初始化时,调用了其两个静态方法,尝试获取手机的root权限。在方法preparezlsu文件中,加载自身的zlsu文件,尝试将其写入系统目录,在此,说是尝试,因为能不能成功我们不对其进行评判。尝试写入系统目录的源码和zlsu文件分别如图14、图15所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(16)

图14 尝试写入系统文件

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(17)

图15 zlsu文件路径

监听用户通话及获取用户通话记录

在上面的远控分析中我们知道,此病毒应用可以通过远程操控开启用户和关闭手机的录音功能,达到窃听用户通话的目的,在黑客电影中经常遇到的桥段也可能发生在你的身上,是不是细思极恐?在此病毒应用中录音的监听分为两部分,一是远控随时开启录音,录到什么就不确定了;二是注册电话状态的监听,只要你打电话就进行录音。

首先我们从远控录音开始分析,在收到监听指令之后,病毒应用调用MediaRecorder开启录音功能。如图16所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(18)

图16 远控开启录音

在收到结束录音指令时,关闭录音,并将录音状态和录音文件保存路径发送到服务器,之后服务器会通过发送指令获取用户文件。源码如图17所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(19)

图17 远控结束录音

其次,我们来分析其设置通话监听的行为,在服务开启时,通过TelephonyManager设置通话监听,在通话状态改变时,进行录音操作。设置监听的源码如图18所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(20)

图18 设置通话监听

开启录音的方法如图19所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(21)

图19 监听回调开启录音

在用户通话结束之后,将录音状态和录音文件保存路径发送到服务器。结束录音源码如图20所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(22)

图20 监听回调结束录音

获取用户手机截屏

获取手机截屏也是此病毒窃取的隐私很重要的一部分,很多应用程序尤其是涉及用户金钱利益的应用都会对自身数据进行重重加密和防护,因此即使恶意人员获取了我们的网络协议包或者应用本地数据也很难从中获取私密的信息。但是,我们使用这些金融软件时都会进行明文展示,不管是账户余额还是密码输入等,如果第三方应用没有对防劫持进行安全防护的话,对用户来说是极其危险的,恶意人员可能通过截屏来获取你的隐私信息。下面我们就此病毒中的截屏操作和窃取进行源码分析。

在主服务开始后,会初始化截屏类Screen,如图21所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(23)

图21 初始化截屏类Screen

在Screen的初始化方法Init中,传入了AssetManager的对象,去加载assets目录下的文件,在其方法中我们发现一些加密数据,对其进行解密,执行操作及方法源码如图22所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(24)

图22 加载截屏工具

我们可以看到其加载了一个开源的手机截屏的工具fb2png,并将其copy到tmp目录下,那么它是在何时调用此工具来截屏的呢?在主服务中还有一个设置的定时器Timer,设定时间执行这些窃取行为,Timer及调用截屏测操作如图23所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(25)

图23 定时器开启截屏操作

Timer设置定时任务如图24所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(26)

图24 设置定时任务

设置定时之后,就定时截取用户的手机屏幕,将其存在文件夹下,然后通过命令获取这些截屏,使用截屏工具fb2png截屏和发送截图存储目录的源码如图25所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(27)

图25 执行截屏命令

获取用户通讯录

Android系统中用户的通讯录是存在在数据库中,用通讯录软件来进行管理的,为了方便第三方应用的使用,它使用了内容提供者对外提供通讯录内容,那么第三方应用就可以使用特定的URI对其进行解析获取用户的通讯录。此病毒应用中,通过远程指令“contact”来控制获取用户的通讯录信息。我们来看一下其调用内容解析者对用户通讯录进行窃取行为的源码,如图26所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(28)

图26 窃取用户通讯录

获取用户短信

Android系统中短信与通讯录是一个原理,也是存储在数据库中使用内容提供者提供给第三方应用使用,在此病毒中,在接收到远程控制指令“getsms”时,就会执行窃取用户短信箱中的短信的行为。获取短信的URI为“content://sms/”,窃取用户短信信息的源码如图27所示:

社会工程学病毒StealAll全线爆破(社会工程学病毒StealAll全线爆破)(29)

图27 窃取用户短信信息

此病毒恶意行为的主要属性是隐私窃取,除了以上详细分析的五大隐私窃取项之外,还有电话号码、设备信息、用户使用应用程序信息和设备信息等等,这些信息在android系统中都有相应的API提供,在此,不再进行一一分析。对于此类监听病毒,与我们的切身利益息息相关,如何才能跳坑?

防护措施与建议

针对StealAll家族类病毒,立足android系统特性,我们给出以下几种防护措施和建议:

Ø 建议用户提高警觉性,使用软件请到官网下载。到应用商店进行下载正版软件,避免从论坛等下载软件,可以有效的减少病毒的侵害。

Ø 对于大部分使用android6.0以上系统手机的用户,在安装应用进行授权时,针对敏感性高又与软件功能使用无关的权限谨慎授予或拒绝赋权。

Ø 手机系统不轻易ROOT以免被恶意软件侵害。

Ø 用手机权限管理系统,除常用软件必须权限,可设置为询问。

Ø 手机安装安全防护软件、定期清理垃圾、查杀木马病毒。

Ø 用户发现感染手机病毒软件之后,可以向“12321网络不良与垃圾信息举报受理中心”或“中国反网络病毒联盟”进行举报,使病毒软件能够第一时间被查杀和拦截。

,

免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com

    分享
    投诉
    首页