Android手机木马病毒的提取与分析
2015-11-14刘洪伟李璐戴芬
刘洪伟+李璐+戴芬
摘要:为有效侦破使用手机木马进行诈骗、盗窃等违法犯罪的案件,对手机木马病毒的特点、植入方式、运行状态进行了研究,利用dex2jar、jdgui等工具软件查看apk文件源代码。结合实例,讲述了如何提取关键代码与配置数据,并对手机木马病毒的危险函数、启动方式、权限列表进行分析,证明了该方法的可行性,提取了违法犯罪行为的关键线索服务于侦查办案和证据固定。
关键词:安卓系统;手机木马;木马植入;木马提取;代码分析
中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2015)22-0022-02
Abstract: In order to investigate and solve the criminal cases of swindle and theft ,researched implant, running status of the mobile phone trojan virus,used dex2jar,jdgui tools to decode APK files source code.With an example, it tells how to extract the key code and configuration data, and analyzes the risk function, startup mode and authority list of mobile phone trojan virus. It proves the feasibility of this method, and extracts the key clues of illegal crime.
Key words: Android; mobile phone trojan; trojan implanted; trojan extraction; code analysis
智能手机给用户带来便利的同时,手机恶意软件也在各种各样的违法活动中充当了重要角色,其中手机木马病毒犯罪日渐加速化、产业链化、智能化和隐藏化。Android手机木马病毒主要完成植入木马、运行病毒、监控手机、盗取信息、转走钱财。他们伪造成“XX照片”、“违章查询处理”、“开房记录查看”、“XX神器”等易于被人点击安装的方式出现,这种恶意短信中附的网址,其实就是诱导下载一个手机软件,安装后手机内并不会显示出该应用,但其中的木马病毒已植入,后台会记录下机主的一切操作,可以随时监控到手机记录。若机主登录网银、支付宝、微信红包等,银行卡账号、密码就都被泄露了,黑客能轻易转走资金。此类案件近期呈现高发的趋势。面对各种各样善于伪装隐藏的手机木马病毒,如何提取分析,并固定证据成为一项重要工作。本文从Android手机木马病毒的特点入手,讲述了如何提取分析关键代码与配置数据,从而分析出违法犯罪行为的关键线索服务于侦查办案和证据固定。
1 木马病毒的植入、提取
1.1植入
(1)很多用户不希望支付软件费用,含有木马的手机应用的第三方网站通过提供破解版、修改版来诱骗下载。(2) 通过发送短信或彩信到用户手机,诱骗手机用户点击短信中URL或者打开彩信附件,从而达到了植入木马的目的。带网址链接的短信诈骗是目前十分流行的诈骗方式,短信内容不断变化,但诈骗、盗窃的目标不变,那就是诱导点击安装短信的链接网址中的木马。
木马植入到目标系统,需要一段时间来获取信息,必须隐藏自己的行踪,以确保木马的整体隐藏能力,以便实现长期的目的。主要包括本地隐藏、文件隐藏、进程隐藏、网络连接隐藏、内核模块隐藏、通信隐藏、协同隐藏、日志过滤和Rootkit模块的隐藏。然后实现了Android系统下木马攻击的各种功能,主要有删除SIM卡和手机里的通讯录、删除SD卡里的文件和上传文件到电脑控制端。
1.2提取
对于手机系统来讲,为了能够及时有效的发现手机病毒木马程序必须采用动静结合的方式。通过对Android运行任务进行检查可以发现是否有可疑程序在运行。
提取的方式,一是根据URL链接地址,从互联网上进行提取;二是根据手机存储的位置,找到安装文件进行提取,比较常见的提取位置有:一般存放在根目录下、DownLoad文件夹中、还有隐藏在系统文件system文件夹中;三是遇到URL无法打开,安装源文件被删除等情况,借助豌豆荚、360手机助手等工具软件,从应用程序找出木马病毒进行导出成apk文件。
2木马病毒的分析
Android木马程序由client端程序和server端程序组成,server端通过移动互联网控制client端,client端程序安装在目标手机上,接收控制端的一些命令并执行,同时把结果返回给控制端,android木马带来的危害主要是远程窃密、通话监听、信息截获和伪造欺骗。Android手机木马病毒程序是以APK文件形式存在的,APK是基于JAVA开发的,JAVA的优势之一就是JAVA的反编译要比其他高级语言容易实现。在JAVA环境中可以用apktool、DoAPK、apk manager、Dex2jar和jdgui等工具将APK文件反编译,生成应用程序的XML配置、JAVA源代码和图片、语言资源等文件。一个APK文件结构为:“META-INF\ Jar文件”、“res\ 存放资源文件”、“AndroidManifest.xm程序全局配置文件”“classes.dex”Dalvik字节码、“resources.arsc”编译后的二进制资源文件。其中classes.dex和AndroidManifest.xml是侦查破案工作中分析的重点。AndroidManifest.xml是程序全局配置文件,描述应用的名字、版本、权限、引用库文件等信息,每一个应用程序的根目录都会有一个AndroidManifest.xml文件;classes.dex是Dalvik字节码,可以在Android Dalvik虚拟机上直接运行的执行程序,利用解析工具可以将其转换为Java源代码进行阅读和理解。本文通过介绍一种新型的木马病毒程序MM.APK来对Android系统中的木马进行分析。该款病毒程序发送到我市多位用户手机,接收到银行发送的转账验证码,造成财产损失20余万元。
2.1 AndroidManifest.xml
该新型木马程序,AndroidManifest.xml文件定义的功能有:启动服务、获取用户ID(手机串号)、添加View、调用Intent的setAction、获取邮件Session、获取本机电话号码、读取文件、激活ActivityForResult、注册ContentObserver、登录邮箱、初始化Intent、传递附加信息、初始化URL、发送短信、写入文件、发送邮件、读取手机短信、隐藏桌面快捷图标、获取运行service、查询App共享数据等功能。
2.2 classes.dex 文件
使用dex2jar工具对classes.dex文件进行反编译,再使用jdgui工具来查看源代码文件的具体内容。首先,该程序通过短信点击下载到手机后会自动安装并在后台运行,手机界面会自动隐藏图标;其次,MM.APK软件安装成功后会向特定手机号码136****8120发送安装成功信息,同时把手机的内容发送到136****8120@163.com的邮箱中。
3 结束语
通过对新型木马病毒的分析,此类型的木马程序主要是定向发送,盗窃银行卡钱财为主,嫌疑人留有实施犯罪接收的邮箱和手机号码,案件侦查人员和取证人员可以通过此类方法掌握该类木马病毒实施恶意行为的配置数据、JAVA关键代码等内容,最终确定回传方式,快速锁定犯罪嫌疑人。但对于采用代码混淆或加壳的手机木马病毒程序,很难进行精准还原。在具体的工作实践中,充分利用多种技术,灵活运用网络资源,分析木马病毒使用者的目的、动机,进而分析案件线索,为案件的侦破提供方向和技术执掌,充分发挥网络侦查的作用。
参考文献:
[1] 董蕾,黄淑华,尹浩然,等. 基于Android 平台的手机木马关键技术分析[J].技术研究,2011(11):63-65.
[2] 刘昊辰,罗森林. Android 系统木马隐藏及检测技术[J].技术研究,2013(1):33-37.
[3] 朱雪梅. Android木马攻击与防范技术的研究[D].杭州电子科技大学,2013.
[4] 黄晓昆 . Windows+Mobile 平台木马关键技术的研究与实现[D].中山大学,2008.
[5] 赖超,龙曦,李金霖,等.基于 Android 平台的手机后台监听技术[J]. 计算机工程应用技术,2011(6):9472-9474.
[6] 刘泽衡.基于 Android 智能手机的安全检测系统的研究与实现[D].哈尔滨工业大学,2011.
[7] 蔡罗成. Android 后台监听实现机制浅析[J].信息安全与通信保密,2010(6):39-41.
[8] 戴威,郑滔. 基于 Android权限机制的动态隐私保护模型[J]. 计算机应用研究,2012,5(9):3478-3412.