基于深度学习的Android恶意软件识别方法研究
发布时间:2021-01-22 00:34
近年来,移动互联网的发展使得智能手机成为我们生活中不可缺少的一部分,极大的方便了人们的生活。然而,人们在使用手机的过程却不得不面临着隐私和财产安全问题。由于Android的流行性和自身的开放性,迅速成为了不法分子的攻击目标。因此,如何有效的检测Android恶意软件,具有很重要的学术意义和现实意义。现有的对Android恶意软件的静态分析往往局限于某一特征,比如字符串特征如权限、API(Application Programming Interface)调用,或者结构性特征如函数调用图、数据流图等。但随着恶意软件攻击行为的不断变化,仅使用一种特征进行分析,往往会出现检测错误的情况。因此,本文从多特征的角度刻画Android应用软件,从而提高检测的准确率。本文的主要研究内容和创新点包括:(1)提出基于操作码序列的Android恶意软件检测模型。该模型创新性的结合了函数调用图和操作码文本序列,通过函数调用的顺序对操作码文本序列重新组织,并使用长短期记忆神经网络(LSTM)构建模型。在此基础上,结合敏感函数、函数调用序列等设计了5种特征进行对比实验。实验结果表明基于函数调用顺序的操作码序列相...
【文章来源】:电子科技大学四川省 211工程院校 985工程院校 教育部直属院校
【文章页数】:74 页
【学位级别】:硕士
【部分图文】:
019年移动端新增恶意程序类型分布
第二章ANDROID恶意软件检测技术基础9图2-1LinuxAndroid系统架构图(4)应用程序框架。建立在本地库层之上的应用程序框架为我们提供了应用程序编程接口和更高级别的服务。另外,通过以JAVA类形式编写的API,能够帮助我们使用Android操作系统的功能,同时Android开发人员使用这些高级服务来构建应用程序。它还包含一个Android硬件抽象层(HAL),该层允许Android应用程序框架与特定于硬件的设备驱动程序进行通信。同时Android应用程序使用硬件抽象层的API从不同的硬件设备获取命令。该应用程序框架包含以下关键服务:活动管理器:主要负责管理应用的生命周期。内容提供程序:提供从应用程序到其他层的数据。资源管理器:提供对非代码资源的访问。通知管理器:用户会收到有关在后台发生的所有操作的通知。
电子科技大学硕士学位论文12示方法。其核心方法是将语料库中的每个词语表示为一维特征,包含该词语则为“1”,不包含则为“0”,最终将文本序列表示为01串组成的向量。这种方法在机器学习处理离散特征时取得了良好的表现效果,然而面对自然语言中庞大的语料库,该种表示方法会造成特征维度过高,存储成本和计算成本都会很高。(2)词袋模型(Bagofwords)文本特征表示的另一种方法是词袋模型[26]。在one-hotencoding文本表示方法中,只关注文本序列中是否出现该词语,而不考虑该词出现的频率。词袋模型在one-hotencoding基础上进行了改进,增加了频率的维度。且词袋模型的一个前提假设是词语之间是相互独立的,不考虑词语之间的相互关联,使用的核心方法是统计每个词语的词频,组成词频的向量来表示文本序列。图2-2N-gram模型处理恶意代码示例(3)N-gram模型N-gram模型[27]是自然语言处理中的一种常用模型。词袋模型假设词语之间是相互独立的,不考虑词语之间的联系。与词袋模型不同,N-gram模型是一种概率模型,其认为某个词的出现依赖于前面的词,即第N个词的出现与前面N-1个词有关系,而与其他的词没有关联。实际计算时通过一个滑动窗口,在文本序列中依次滑动,窗口内的词语作为特征,统计窗口内词语在全部文本序列出现的次数作为特征,形成的向量表示文本序列。近年来,研究者尝试使用N-gram模型进行恶意代码文本处理,一个windows下的使用N-gram模型提取恶意代码文本特征示例如图2-2所示。(4)TF-IDF技术TF-IDF技术[28]是一种统计方法,可以用来评定一个词对于一篇文章或者整个
本文编号:2992187
【文章来源】:电子科技大学四川省 211工程院校 985工程院校 教育部直属院校
【文章页数】:74 页
【学位级别】:硕士
【部分图文】:
019年移动端新增恶意程序类型分布
第二章ANDROID恶意软件检测技术基础9图2-1LinuxAndroid系统架构图(4)应用程序框架。建立在本地库层之上的应用程序框架为我们提供了应用程序编程接口和更高级别的服务。另外,通过以JAVA类形式编写的API,能够帮助我们使用Android操作系统的功能,同时Android开发人员使用这些高级服务来构建应用程序。它还包含一个Android硬件抽象层(HAL),该层允许Android应用程序框架与特定于硬件的设备驱动程序进行通信。同时Android应用程序使用硬件抽象层的API从不同的硬件设备获取命令。该应用程序框架包含以下关键服务:活动管理器:主要负责管理应用的生命周期。内容提供程序:提供从应用程序到其他层的数据。资源管理器:提供对非代码资源的访问。通知管理器:用户会收到有关在后台发生的所有操作的通知。
电子科技大学硕士学位论文12示方法。其核心方法是将语料库中的每个词语表示为一维特征,包含该词语则为“1”,不包含则为“0”,最终将文本序列表示为01串组成的向量。这种方法在机器学习处理离散特征时取得了良好的表现效果,然而面对自然语言中庞大的语料库,该种表示方法会造成特征维度过高,存储成本和计算成本都会很高。(2)词袋模型(Bagofwords)文本特征表示的另一种方法是词袋模型[26]。在one-hotencoding文本表示方法中,只关注文本序列中是否出现该词语,而不考虑该词出现的频率。词袋模型在one-hotencoding基础上进行了改进,增加了频率的维度。且词袋模型的一个前提假设是词语之间是相互独立的,不考虑词语之间的相互关联,使用的核心方法是统计每个词语的词频,组成词频的向量来表示文本序列。图2-2N-gram模型处理恶意代码示例(3)N-gram模型N-gram模型[27]是自然语言处理中的一种常用模型。词袋模型假设词语之间是相互独立的,不考虑词语之间的联系。与词袋模型不同,N-gram模型是一种概率模型,其认为某个词的出现依赖于前面的词,即第N个词的出现与前面N-1个词有关系,而与其他的词没有关联。实际计算时通过一个滑动窗口,在文本序列中依次滑动,窗口内的词语作为特征,统计窗口内词语在全部文本序列出现的次数作为特征,形成的向量表示文本序列。近年来,研究者尝试使用N-gram模型进行恶意代码文本处理,一个windows下的使用N-gram模型提取恶意代码文本特征示例如图2-2所示。(4)TF-IDF技术TF-IDF技术[28]是一种统计方法,可以用来评定一个词对于一篇文章或者整个
本文编号:2992187
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/2992187.html