基于AOSP的Android恶意软件行为分析系统设计

来源 :电脑知识与技术 | 被引量 : 0次 | 上传用户:chaizw
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:随着Android操作系统的不断进化发展,Android智能终端已经成为新型智能终端最为重要的操作系统之一。2016年第三季度,国内新型智能终端市场搭载Android操作系统的设备出货量占比已经达到88%。但是伴随着Android智能终端市场占有率的提高,Android智能终端受到恶意软件攻击、被“种植”木马的情况也越来越严重。该文提出一种以Android开源项目AOSP为基础,通过改造Android系统源代码构造基于行为特征的恶意软件识别分析系统。
  关键词:AOSP;Android恶意软件;行为特征识别;行为特征库;Android虚拟机
  中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2016)36-0111-02
  Design of Android Malware Behavior Analysis System Based on AOSP
  XIONG Xiong
  (Third Institute of the Ministry of Public Security, Shanghai 201204, China)
  Abstract: With the continuous evolution of the Android operating system, Android intelligent terminal has become one of the most important operating system of the new intelligent terminal. In the third quarter of 2016, the domestic new smart terminal market equipped with Android operating system equipment shipments accounted for has reached 88%. But with the increase of Android smart terminal market share, Android intelligent terminal by malicious software attacks, being planted trojan is also becoming more and more serious. This paper proposes a Android based open source project AOSP as the foundation, through the transformation of the Android system source code structure based on behavior characteristics of malicious software identification analysis system.
  Key words: AOSP; Android malware; Behavior feature recognition; Behavioral feature database; Android virtual machine
  随着Android操作系统的不断进化发展,Android智能终端已经成为新型智能终端最为重要的操作系统之一。2016年第三季度,国内新型智能终端市场搭载Android操作系统的设备出货量占比已经达到88%。但是伴随着Android智能终端市场占有率的提高,Android智能终端受到恶意软件攻击、被“种植”木马的情况也越来越严重。
  在涉及Android恶意软件取证分析的案件中,主要采取的技术手段是通过逆向等技术对涉案APK进行反编译,对反编译的java或者smali代码进行分析,从代码中找到恶意软件拦截短信、发送数据等行为的源代码证据。但是随着APK的源代码混淆技术、加密技术的增强,对恶意软件的反汇编将会越来越困难[1]。
  AOSP是Android 开放源代码项目"Android Open-Source Project"的缩写,Android是一个开源的,用于移动设备的系统。 Android开放源代码项目(AOSP),由谷歌发起,致力于Android的维护和更进一步的发展。
  本文提出一种新的Android恶意软件识别分析方案,本方案基于Android开源项目AOSP,通过对AOSP的源代码进行改造,在项目中新增日志层。之后基于改造的AOSP源代码生成镜像,构造Android虚拟运行环境。将涉案APK安装到虚拟运行环境进行执行。最终对执行过程中产生的日志数据进行分析,即可从中找到APK恶意行为的证据信息。
  1 系统设计目的
  本系统的设计目的是基于AOSP项目,定制化开发一套Android虚拟运行环境。在此运行环境中,可以安装Apk程序,并且能够对安装在此环境中的Apk动态运行时的所作所为做出详细记录并执行自动化分析。分析时可以与外部的知识库相结合以便做出更准确的定性、定量分析。最终能够自动化地给出Apk的动态运行时分析报告,指明此Apk是否具备恶意行为。
  2 设计方案
  总体上,Android恶意软件行为分析系统包括Android虚拟运行环境、统计分析子系统、行为分析子系统以及知识库等四个部分。系统的模块之间关联关系如图1所示:
  系统模块中手动测试是指取证分析人员在安装好Apk之后,手动启动Apk并按照预先设计的运行脚本模拟用户真实操作行为,触发恶意Apk运行。
  自动化测试是指依据预先写好的自動化测试脚本(例如基于Android操作系统自带的Monkey)调度恶意Apk运行。自动化测试脚本在编写时候需要考虑到涉及Android操作系统Broadcast、跨进程通信等手工测试时难以覆盖到的功能,以及需要大量重复运行并验证取证分析思路的场景。   Android虚拟运行环境是本系统的核心功能模块,主要提供了APK的仿真运行环境。Android虚拟运行环境基于AOSP进行了大量的改造,将重要的API接口均添加上了日志记录功能。
  日志统计:Android虚拟运行环境的所有运行日志输出均通过统一的输出接口输出到统计分析模块中。统计分析模块采用时间线排序的方法,将各种类型的日志进行重排,并支持对任意时间段内的日志进行查询,支持按照日志类型进行数据查询,支持基于关键词的日志查询。
  行为分析:行为分析是Android恶意软件行为分析系统的核心模块。主要基于统计日志的输出,采用序列匹配、关键API调度以及其他知识库中记录的敏感知识进行统计分析。行为分析依据频率、特征等多种算法进行分析,并支持扩展。行为分析的输出可以驱动自动化测试模块进行分析结果验证,并支持分析报告生成功能。
  知识库:知识库记录了大量的恶意行为识别方案。数据主要从调度序列、敏感API调用、特殊路径数据读写、特殊数据内容写入读取等几个方面进行记载。便于行为分析模块进行查询匹配。
  报告生成:行为分析模块的分析结果传输到报告生成模块之后,由报告生成模块生成html、doc等各种格式的报告。
  2.1 Android虚拟运行环境架构
  Android虚拟运行环境是系统中最重要的模块。基于AOSP项目,在Android系统层、Linux内核层的重要模块均加上调用控制代码。控制代码主要提供日志记录、堆栈信息以及调用结果控制。
  Android虚拟运行环境架构如图2所示:
  应用层是Android操作系统支撑APK运行的层,在本系统的开发过程中并不需要进行改造。为了防止待分析的APK识别到时在特定的模拟环境中运行,需要保证这一层的接口与AOSP项目完全一致。
  Android框架层是本系统最主要的修改层。APK在运行时,一部分代码是通过Dalvik虚拟机运行,另外一部分则通过ART直接调用底层的so库来执行。但是,绝大部分的代码均通过Dalvik虚拟机调度Android框架层的API进行。Android框架层主要修改的模块涉及Apk安装、授权管理、短信/电话类API、webview调用、系统服务注册、Broadcast Receiver调用、Content Provider调用、intent调用、文件读写以及涉及sqlite读写的API等核心系统功能。此外,还针对http请求的创建等API增加了监控日志[2-3]。
  Linux内核层是Android操作系统的最底层,由于这一层是系统的最底层,大量的系统调度最终都会汇聚到这里。因此本层主要关注的数据包括进程通信类API、网络系统类API、文件系统类API以及权限管理类API。
  对AOSP项目源代码的改造过程中,需要对修改过的接口API增加日志记录功能。日志记录功能记录了API调用时候的关键信息,主要包括“调度时间”、“调用堆栈”、“调用参数”以及“调用结果”等数据。并且,基于APK实际分析的需求,可以通过外部配置代码对API的调用返回结果进行控制。
  接口API的调用记录日志按照json格式进行记录保存,并实时写入到虚拟运行环境的特定文件中,例如 /var/analysis/log.dat。
  2.2 行为分析子系统
  行为分析子系统是本系统的另外一个核心功能模塊,主要提供了自动化的日志数据分析功能。数据分析的方法主要有如下几种形式:
  1)基于敏感API调用的识别分析:例如识别到未提供Root权限的情况下,App通过ART方式获取到了Root权限并调用了需要Root权限才能够调用的API。
  2)基于敏感路径下文件读写的识别分析:例如识别到App尝试对/system或者/data/data目录下其他app的数据进行读写。
  3)基于特定关键词的数据匹配分析:例如识别到调用参数中包含预先内置的关键词,如“验证码”、“银行”等。在短信劫持类App的分析中,基于关键词识别将十分有效。
  4)基于特定网络通信地址的识别分析:依据日志分析App与外部某些ip地址或者特定端口进行了数据通信,如果ip地址和端口是知识库中记录的敏感地址,则可以十分准确的识别[4]。
  5)基于API调度序列的识别分析:对API的调度序列进行识别,可以发现App运行的潜在规律。例如每10分钟会读取一次短信的收件箱。
  6)基于频率的API调用识别分析
  通过对日志数据的统计分析,可以对APK的运行做出较为准确的判断和分析。对于难以通过逆向等方式进行APK恶意行为分析的场景下,将会发挥较大的作用。
  3 结束语
  本文提出了一种基于运行时日志统计分析的方式对恶意APK进行行为特征分析的思路,并提出基于AOSP项目进行恶意行为分析系统的改造及建设方案设计。本文所提出的系统能够对难以通过逆向方式进行分析的APK发挥较大的作用,并且能够极大地缩短分析恶意APK所需的时间,提升取证分析效率。
  参考文献:
  [1] 童振飞. Android恶意软件静态检测方案的研究[D]. 南京: 南京邮电大学, 2012.
  [2] 赵洋, 胡龙, 熊虎, 等. 基于沙盒的Android恶意软件动态分析方案[J]. 信息网络安全, 2014(12): 21-26.
  [3] 陈丹伟, 唐平, 周书桃. 基于沙盒技术的恶意程序检测模型[J].计算机科学, 2012, 39(B06): 12-14.
  [4] 王伟, 彭勤科. 主机日志分析及其在入侵检测中的应用[J]. 计算机工程与应用, 2002, 38(13): 35-37
其他文献
摘要:工程教育中对实践创新教育的重视程度不够,课程体系的设置不够合理,实践教学平台不够完善等问题的出现,使得工程技术人才无法适应飞速发展的行业要求。该文以创新型工程技术人才培养为出发点,依托“卓越计划”,在培养方案的制订、课程体系的构建、实践教学平台的搭建等方面进行改革,提出了卓越计划和MOOC背景下的创新型工程技术人才培养模式。  关键词:“卓越计划”;MOOC;创新型;工程技术人才;实践  中
摘要:通过深入企业进行再调研,结合国家、社会职业资格认证体系,注重行业、企业参与课程设计,“项目案例”均由合作单位共同参与制订,突出了课程的实践性、针对性和职业性。课程建设围绕五部分的技能点展开,以实际项目为背景,基于工作过程,真题实做,把企业真实的项目加以教学化提炼,序化,融入职业素养的教育,让学生能切实掌握实际技能,学生的懂网、建网、用网和管网的综合能力进一步增强。  关键词:课程建设;精品资
探讨潘妥拉唑及奥美拉唑对健康人24h胃内PH的影响。方法:28例健康志愿者随机分为3组,其中PAN组10例,OME组8例,分别静脉滴注PAN80mg,OME80mg,1次/d,连续2d,第2天给药后进行胃内PH24h监测;对照组10例,直接进行胃内PH24h监测。结果:PAN及OME均能明显
目的;合成2-去氧-2,3-去氧-N-乙酰神经氨酸8,9-二硫酸酯衍生物,并探讨其与唾液酸酶抑制活笥的关系。方法:在对4,7-二羟基保护后,用三氧化硫三甲胺「SO3.N(CH3)3」对8,9-二羟基进行硫酸酯化,并对化合物(3),(4),(5),(6)进行初步唾液酸
摘要:针对程序设计基础在教学过程中存在的问题,在分析了课程和教学对象的基础上,确立了基于“强基础、重实践、激创新”的教学理念,提出了一套理论课程和实践课程的改革方案,以提高课程的教学质量,增强学生分析问题和解决问题的能力,并在实际中取得了较好的教学效果。  关键词:程序设计基础; 教学理念; 教学改革; 课程体系建设  中图分类号:TP393 文献标识码:A 文章编号:1009-3044(2016
摘要:在计算机技术和信息技术不斷发展进步的情况,目前已经步入了互联网 时代,在这样的时代背景下,计算基础实训课程的重要性就更显著了。基于此,该文首先针对计算机基础实训课程教学存在的问题展开了分析和探究,然后就实训改革的一些注意要点作出了辨析,最后针对中职学校提出了实现实训课程教学改革的实践方法,以供参考。  关键词:计算机基础;实训课程;教学改革;实践方法  中图分类号:G424 文献标识码:A
近年来,信息技术飞速发展的过程中,给人们工作及生活的多个领域都带来了极大的转变,流媒体在对互联网进行应用的过程中,其功能也发生了极大的转变,应用的范围也更加广泛。现
目的:探讨胶质细胞源性神经营养因子(GDNF)对唯物事运动神经元的保护作用。方法:大鼠分为假手术组、生理盐水(NS)组和GDNF组,改良Allen法撞击致伤T12脊髓,蛛网膜下腔分别给予NS和GDNF,分别取不同时间的伤段脊髓
将SD大鼠随机分成训练组和对照组,参照Bedford大鼠耐力训练模型对训练组进行电动跑台训练,16周后将SD大鼠断头处死,将胸主动脉取出,使用计算机图像采集及分析系统测量血管环的张
运用文献资料、专家咨询、问卷调查、数理统计等研究方法,对网络环境下体育专业学生信息获取的渠道、障碍等进行分析,揭示高校体育专业学生信息获取决策过程规律。结果显示:认知