一种基于朴素贝叶斯的Android恶意软件分类方法和装置制造方法及图纸

技术编号:13131177 阅读:86 留言:0更新日期:2016-04-06 16:38
本发明专利技术公开了一种基于朴素贝叶斯的Android恶意软件分类方法和装置,该方法主要通过动静态结合的方法提取恶意软件的权限属性特征和敏感API属性特征,并采用朴素贝叶斯算法进行分类,该装置包括特征属性集合模块、权限特征属性模块、敏感API特征属性模块、朴素贝叶斯分类模型模块、输出模块、更新模块、该算法有坚实的数学基础,稳定的分类效率,所需参数也比较少,算法简单,能对恶意应用快速、准确的进行分类,提高了分类效率。

【技术实现步骤摘要】

本专利技术涉及软件安全领域,特别是涉及一种基于朴素贝叶斯的Android恶意软件分类方法和装置
技术介绍
Android自2007年问世以来,Google公司将其定位为开源的移动操作系统,采用软件堆层的架构,底层以Linux内核为基础,中间层包含软件库和Dalivk虚拟机,最上层是各种应用程序。随着Android的迅速发展,基于Android平台的移动终端、软件开发者、应用程序也日益增多,以成为智能手机市场的主导地位,但也正由于它自身的开源性,成为了众多恶意软件开发者的目标,新的恶意软件、变种木马每个季度都在爆发式的增长,移动终端遭受的攻击和威胁、私密信息的泄露也越来越多。目前Android平台应用更多的焦点是关注在恶意行为如何触发捕捉,如何判别行为是否存在恶意,仅停留在区分正常应用与恶意应用层次,然而对于恶意应用进一步的细分类,更多的是参考Androguard,MobileSandbox等知名团队定期的公布Android恶意软件分类列表。现有的对恶意应用的进行分类,寻找共通性方面缺乏,更多依赖于知名团队的定期发布的结果列表,但随着Android恶意应用指数型增长的速度,这种方式缺乏实时性,灵活性。随着Android平台的快速发展,恶意应用出现的速度越来越快,据统计,新出现的恶意代码大部分是在原恶意代码基础上进一步修改而来。新生成的恶意应用通常是设计者为了绕过反病毒软件的查杀,而在原有基础上修改而成。因此,采用变形技术生成的新的恶意应用不仅与原恶意应用存在共性,而且新生成的恶意应用之间也存在共性。如果能根据已知恶意应用代码类别对新生成的恶意应用代码进行快速、准确的分类,并提取出“共性”特征,能极大的缩短对新恶意软件的分析时间,提高分析效率。现有的对恶意应用细化的分类,由于寻找同类应用的“共性”方面缺乏,更多的是依赖于MobileSandbox这类的团队定期发布的分类列表。然而面对层出不穷的恶意程序的新变种及未知恶意程序,仅仅靠定期发布的分类列表是远远不足的,目前常用的分类算法有:支持向量机、K-最近邻、神经网络等算法等。支持向量机(SupportVectorMachine,SVM),可以很好的解决高维问题、非线性问题,但对缺失数据的敏感度高;K-最邻近(kneareastneighbor,KNN)算法简单、有效,但计算量大,当样本不平衡时出错率高;人工神经网络算法分类准确度高,但需要大量的参数支持。
技术实现思路
本专利技术提出一种基于朴素贝叶斯的Android恶意软件分类方法和装置,通过选取恶意应用程序间的“共性”来作为分类依据,能对恶意应用快速、准确的进行分类,提高了分类效率。具体方案如下:一种基于朴素贝叶斯的Android恶意软件分类方法,包括以下步骤:S1:建立特征属性集合,该特征属性集合至少包括权限特征属性和敏感API特征属性,并对相应的特征属性进行分类,获得训练样本集合,该训练样本集合至少包括特征属性集合和分类集合;S2:提取权限特征属性,匹配特征属性集合中的权限特征属性;S3:收集日志信息,匹配特征属性集合中的敏感API(ApplicationProgrammingInterface,应用程序编程接口)特征属性;S4:形成朴素贝叶斯分类模型;S5:输出分类结果;S6:更新训练样本集合和朴素贝叶斯分类模型。其中,所述的步骤S2中提取权限特征属性,匹配特征属性集合中的权限特征属性的具体步骤是:S21:反编译待分类软件,获取待分类软件的权限特征属性;S22:将获取到的样本权限列表与属性特征相匹配,如果存在,则标记为第一标志符,否则标记为第二标志符。其中,所述的步骤S3中收集日志信息,匹配特征属性集合中的敏感API特征属性的具体步骤是:S31:将待分类软件安装到Android沙箱中运行,并采集输出的敏感行为日志;S32:Android沙箱在应用程序Framework框架层、Dalvik虚拟机和本地Native层采用APIHooking技术,标记敏感API;S33:触发敏感API,自动记录日志;S34:采集输出的日志信息,匹配属性特征集合中的敏感API特征属性,如果存在,则标记为第一标志符,否则标记为第二标志符。其中,所述的步骤S4中形成分类朴素贝叶斯分类模型的具体步骤是:S41:设X={a1,a2,...,am本文档来自技高网
...

【技术保护点】
一种基于朴素贝叶斯的Android恶意软件分类方法,包括以下步骤:S1:建立特征属性集合,该特征属性集合至少包括权限特征属性和敏感API特征属性,并对相应的特征属性进行分类,获得训练样本集合,该训练样本集合至少包括特征属性集合和分类集合;S2:提取权限特征属性,匹配特征属性集合中的权限特征属性;S3:收集日志信息,匹配特征属性集合中的敏感API特征属性;S4:形成朴素贝叶斯分类模型;S5:输出分类结果;S6:更新训练样本集合和朴素贝叶斯分类模型。

【技术特征摘要】
1.一种基于朴素贝叶斯的Android恶意软件分类方法,包括以下步骤:
S1:建立特征属性集合,该特征属性集合至少包括权限特征属性和敏感API
特征属性,并对相应的特征属性进行分类,获得训练样本集合,该训练样本集
合至少包括特征属性集合和分类集合;
S2:提取权限特征属性,匹配特征属性集合中的权限特征属性;
S3:收集日志信息,匹配特征属性集合中的敏感API特征属性;
S4:形成朴素贝叶斯分类模型;
S5:输出分类结果;
S6:更新训练样本集合和朴素贝叶斯分类模型。
2.根据权利要求1所述的基于朴素贝叶斯的Android恶意软件分类方法,其特
征在于,所述的步骤S2中提取权限特征属性,匹配特征属性集合中的权限特征
属性的具体步骤是:
S21:反编译待分类软件,获取待分类软件的权限特征属性;
S22:将获取到的样本权限列表与属性特征相匹配,如果该权限存在,则标
记为第...

【专利技术属性】
技术研发人员:魏丽珍邱建张婷高静峰罗佳
申请(专利权)人:厦门安胜网络科技有限公司
类型:发明
国别省市:福建;35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1