中国工程论文网
代写工程论文
当前位置:工程论文网 > 工程硕士论文 > 软件工程硕士论文 > 基于中间语言的移动应用安全性检测方法研究

基于中间语言的移动应用安全性检测方法研究

时间:2018-04-22 21:39来源:www.e-lunwen.com 作者:lgg 点击:
本文是一篇软件工程硕士论文,软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准。
本文是一篇软件工程硕士论文,软件工程是一门研究用工程化方法构建和维护有效的、实用的和高质量的软件的学科。它涉及程序设计语言、数据库、软件开发工具、系统平台、标准、设计模式等方面。(以上内容来自百度百科)今天为大家推荐一篇软件工程硕士论文,供大家参考。
 
第 1 章 绪 论
 
1.1 研究背景
近年来,随着移动互联网的快速发展,通讯基础设施趋向于成熟,4G 网络和 WiFi 已经广泛覆盖,各式各样的智能移动终端产品已经十分普及[1]。人们利用移动终端,比如手机、智能手表、平板电脑等,获取资讯、进行社交、完成购物等。智能手机作为现代人生活中必不可少的通讯工具,其超过电脑成为主流主要有以下几个原因[2]:1)设备体积小,功能大。智能手机有着几乎和 pc 机一样强大的功能,但是其体积却很小,方便携带。2)功能齐全。无论是 iOS 系统还是 Android 系统,应用商店里面都有成千上万中应用,满足人们的日常生活中的各种需要。衣食住行都可以通过手机解决。但与此同时,针对移动智能设备的恶意应用也越来越多,对用户的隐私和个人财产安全造成了巨大的威胁。2016 年,在“互联网+”战略的推动下[3],移动互联网和传统行业有了越来越多的联系,人们的衣食住行都可以通过互联网解决。人们使用移动互联网的场景越来越多,工作场景、生活场景、消费场景中都有移动互联网的身影。与此同时,互联网正在进入越来越多的领域,比如智能硬件、医疗、教育、旅游等市场也正在融入移动互联网产品。根据 Zenith Media的研究显示,到 2017 年,移动互联网流量将占整个互联网流量的 75%,而这个比例在 2016年的时候是 68%,而在 2012 年的时候,仅仅是占 40%。这表明这几年移动互联网正在飞速发展。移动互联网发展的关键是移动设备,最主要的是智能手机。在未来,移动互联还将进一步发展,其市场的潜力仍然巨大,移动智能手机设备将是主要战场。根据《移动互联网安全报告 2016》显示[4],2015 年中国活跃的手机网民数量达到了 7.8亿,智能手机联网终端达到 11.3 亿部,其中九成以上运行 Android 操作系统和 iOS 操作系统,其中运行 Android 操作系统的智能手机最多,比例高达 78.9%。由于 Android 市场巨大的用户量,使得其也成为了黑客的目标,大量的恶意应用程序给用户带来了巨大的隐患。Android 拥有繁多的第三方市场,比如豌豆荚,百度应用等,加上中国因为政策,不能使用 Google Play,使得对应用程序的审查成为了一个重大的问题。根据 360 今年的安全报告,2015 全年,360 安全中心累积截获 Android 平台新增恶意程序样本 1874.0 万个,和 2014年比增长了 5.7 倍,是 2013 年的 27.9 倍,平均每天截获的新增恶意程序样本竟然高达 51342个。360 互联网安全中心累计监测到 Android 用户感染恶意程序 3.7 亿次,是 2014 年的 1.1倍,是 2013 年的 3.8 倍;平均每天感染量达到了 100.6 万人次。所有的手机恶意程序中,资费消耗类恶意程序的感染量是最大的,比例高达 73.6%。其次为恶意扣费,占 21.5%和隐私窃取类型,占 4.1%。由此可见,Android 平台的恶意程序是一个很严重的问题,亟待解决。
........
 
1.2 国内外研究现状
从 2005 年 Google 公司发布第一个 Android 操作系统,到如今 Android 系统成为了移动终端使用人数最多的操作系统,Android 系统在成长,伴随而来的,针对 Android 系统的恶意应用也在急剧增长。随着智能手机在人们日常生活中发挥着越来越重要的作用,智能手机安全问题的日益凸显,许多科研人员针对恶意应用的检测投入了大量的时间和精力,并且取得了巨大的成就,为接下来的工作提供了帮助。在 2009 年 Garcia Teodora[5]等人[5]提出了基于签名的恶意代码检测方法。这种检测系统为每一个恶意代码建立一个特有的签名,通过和签名进行比对的方法检测是否为恶意应用。但是,缺点是恶意代码的任意一个微小的改变就能通过测试。在 2010 年,Shabtai, Asaf 等人[6]提出一个基于行为检测 Android 恶意应用检测框架:Andromaly。该系统在后台动态的检测系统的 CPU、网络、电量等信息,并使用机器学习算法对检测到的数据集进行分析,判断其是正常代码还是恶意代码。但是,该系统缺少恶意样本进行检测,作者只用了自己编写的 4 个恶意程序,虽然在实验的过程中取得了较好的结果,但是无法保证其在发展过程中具有适应性。在 Shabtai 的实验中,他使用了多种机器学习算法进行验证,并且证明了机器学习算法在恶意代码检测中的可行性。2010 年,Tomas Blasing 等人[7]提出了 AASandbox(应用程序沙箱)的检测技术,该方法使用了静态分析和动态分析对可疑应用进行检测。静态分析了 Android 程序反编译后得到的 smali 代码,并进行模式匹配,输出到日志中。动态分析即在 Android 模拟器中运行程序,通过 mokey 工具模拟用户输入,输出到日志中。2012 年,Sahas 和 Khan[8]将机器学习中的经典算法支持向量机(SVM)应用 Android恶意应用检测。文章中把应用程序的权限和源码中提取控制流图作为特征,通过修改支持向量机算法,以适应特征的形态,在并且得到良好的检测效果。在 2013 年 zheng 等人[9]开发了 DroidAnalytics 系统。这个系统基于签名的方式实现的。该系统能自动收集、管理、分析和提取 Android 恶意应用。该系统对大量的恶意应用程序进行了验证。这个系统也是第一个如此大型的 Android 恶意应用分析检测软件。特别是对恶意应用的重新打包能够有效的进行分析。
.........
 
第 2 章 Android 系统安全机制及恶意代码检测分析
 
2.1 Android 系统概述
Android 是基于 Linux 内核开发开源的移动平台操作系统。Android 操作系统因为其开源性,应用开发简单,受到业界广泛关注并成为手机制造商的首选操作系统。由于其开源性,市面有很多其定制版本,并且广泛的应用到了平板、电视、智能手表等领域。Android 系统是基于 Linux 内核开发的操作系统,因此,在 Linux 中的安全机制,Android系统全部继承。同时,Android 作为移动平台最主要的系统,也具备了移动终端的特性,提供了额外的安全机制。1) 沙箱环境。沙箱机制是为了保护进程之间的安全性。Android 应用程序都是运行在DVM 中或者 ART 虚拟机中,每当启动一个新的应用,Android 操作系统的都会开启一个或者几个独立的进程,每个进程都运行在独立的虚拟机中。这种独立的虚拟环境就称作为沙箱环境。沙箱环境限制了不用应用程序之间的资源访问,实现了程序之间的分离和权限机制。同时,沙箱环境保证了进程之间的独立性,当一个程序奔溃的时候,其他程序的运行不会受到影响。2) Linux 用户权限机制。在 Linux 系统中,为了保证安全性,采用的是用户权限机制,Android 系统是基于 Linux 内核开发的,也继承了用户权限机制。具体实现如下,在 Android应用程序安装的时候,系统给定一个唯一的用户 ID,在该应用程序运行期间,系统保持其用户 ID 不变。通过用户 ID,每个应用程序只能访问各自的资源,而不能访问系统资源或者其他应用程序的资源。这在内核的级别通过控制访问权限,保证了系统的安全。
..........
 
2.2 Android 恶意程序检测技术
Android 系统由于其开源性,用户人数巨大,潜在利益巨大,一直成为黑客攻击的重点对象。在 Android 系统慢慢成为主流的移动终端的操作系统的过程中,其也成为了黑客攻击的主要目标,大量的恶意应用层出穷,严重影响用户的使用安全。与此同时,大量的研究人员也开始研究恶意代码的检测方法。经过多年的较量,Android 应用程序中仍然存在着大量的恶意程序。在此本文将具体分析目前最流行的恶意程序的机制。Android 恶意程序是指通过诱导安装等方法诱惑用户安装,并且以窃取用户隐私,恶意破坏和恶意收费等破坏性行为为目的的非法程序。根据 360 烽火实验室[4]发布的《Android恶意软件专题报告 2016》,恶意程序表现形式主要为钓鱼软件、勒索软件、色情播放器软件、顽固木马等四种。钓鱼软件:钓鱼软件是指通过欺骗的手段,诱使用户泄露其隐私信息得软件。钓鱼软件往往具有非常具有欺骗性的页面,精心设计的文字或图片,以假乱真,欺骗用户输入隐私信息,以盗取用户信息。钓鱼软件在骗取用户在虚假的页面上输入包括银行卡信息、账号密码等重要隐私信息后,将这些隐私信息进行回传。通常,钓鱼软件还会窃取用户手机的联系人,短信、手机号码等隐私信息,并将这些信息汇总,威胁用户的个人隐私和财产安全。其主要的形式是通过伪基站,仿冒银行或者运营商,发送指向钓鱼页面或者钓鱼软件下载地址的恶意链接,用户点击链接后,被要求输入相关隐私信息,以达到窃取用户信息的功能。有的钓鱼软件在用户下载安装后,就能直接窃取用户手机中的隐私信息,而无需用户输入信息。
..........
 
第 3 章 基于 Jimple 指令的静态检测 ....... 18
3.1 Android 权限特征提取.........19
3.1.1 APK 结构和权限特征.........19
3.1.2 反编译获取权限........20
3.2 Soot 反编译.......20
3.3 Jimple 提取特征 .........24
3.4 本章小结...........25
第 4 章 深度学习的检测模型..... 26
4.1 卷积神经网络.............26
4.2 梯度下降的反向传播算法.............30
4.3 改进 DPCNN ....32
4.4 恶意应用检测模型.....34
4.5 实验和结果.......39
4.6 本章小结...........43
第 5 章 总结与展望............. 44
5.1 总结.........44
5.2 展望.........44
 
第 4 章 深度学习的检测模型
 
在上一章我们介绍了静态检测的过程,并且介绍了特征提取的两个来源:权限特征和Jimple 指令序列码。本章将介绍主要的分类算法和分类模型。本文采用改进的卷积神经网络双池化卷积神经网络用于对 Jimple 指令序列码的特征提取,然后和权限特征共同组成静态特征集合,最后使用支持向量机进行分类和预测。
 
4.1 卷积神经网络
深度学习的概念来自于人工神经网络的研究,由 Hinton[37]等人在 2006 年提出。深度学习是指在构建模型的时候,往往由多个层次共同参与,其能通过组合低层特征,形成更加抽象的高层表示属性类别或特征,以发现数据的中的隐含信息和特征。Lecun 等人[38]提出的卷积神经网络是第一个真正多层结构学习算法,它利用空间相对关系减少参数数目以提高训练性能。卷积神经网络[39](Convolutional neural networks, CNN) 是一种带有卷积结构的深度神经网络,通过卷积结构可以大大减少参数的数量,加快训练速度。卷积神经网络已成为当前图像理解领域的研究热点,它是生物视觉网络在计算机视觉方面的应用。卷积神经网络采用了权值共享和池化操作,这两种方案大大降低了网络模型的复杂度,减少了需要训练的权值的数量,并且图像可以直接作为输入,避免了传统识别算法中复杂的特征提取和数据重建过程。卷积神经网络作为图像处理的多层神经网络,其对图片进行平移,翻转,白化,比例缩放等形式的改变,而不影响其识别结果。在卷积神经网络的典型结构中, 开始几层是卷积层和池化层交替,在靠近输出层的最后几层网络通常是全连接的神经网络。卷积神经网络的使用分为两步,卷积神经网络模型训练和对输入数据的预测。训练过程主要是对卷积核权重和偏置值和池化层的连接参数等网络参数的调整。预测过程是指网络通过输入数据,通过计算给出相应的标签。
........
 
总结
 
本文对 Android 恶意代码的静态检测发放做了详细而深入的研究,主要做了如下几个方面的工作:
(1)介绍相关理论知识与关键技术,包括 Android 系统的相关知识、Android 恶意代码检测的相关技术,Android 恶意应用的相关信息,机器学习中的分类算法等相关知识。
(2)提出了一个使用 Jimple 中间语言作为载体对恶意应用进行研究的方法。Jimple是一种三地址、有类型的、基于语句的中间代码。在 Soot 中使用 dexpler 可以直接将 dex文件反汇编成为 Jimple 语言的文件。对生成的 Jimple 语言进行简化后提前代码序列,用于神经网络中提取特征,并检测恶意应用。
(3)提出了一种用于分析 Android 恶意代码序列特征的双池化卷积神经网络。恶意应用程序的敏感代码段位于不同的类文件中,应该使用相应的方法提取敏感代码段,并用于特征。卷积神经网络通过参数共享和池化操作,减少了需要调整的参数。同时,卷积神经网络通过采用类似于 BP 神经网络的反向传播算法用于对卷积神经网络的训练。为了解决当样本数量不够大时而产生的过拟合问题,而引入了 dropout 技术,在训练过程中随机让部分的神经网络不参与其中。在这个基础之上,结合本文的需要,提出了双池化卷积神经网络。并且给出了改进的网络的结构和具体模型。
(4)构建了基于静态特征的恶意应用深度神经网络的检测模型。该模型使用双池化卷积神经网络提取 Android 敏感代码特征的提取,并结合权限特征,将所有的静态特征使用支持向量机的权限特征算法进行分类。经过试验,取得了良好的效果。
..........
参考文献(略)
(责任编辑:gufeng)
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
栏目列表
点击提交代写需求
点击提交代写需求
点击提交代写需求
推荐内容