首页> 中国专利> 基于安卓应用实时行为的恶意软件检测方法和系统

基于安卓应用实时行为的恶意软件检测方法和系统

摘要

本发明公开了基于安卓应用实时行为的恶意软件检测方法和系统,该方法是由分别收集恶意软件的行为序列集和正常软件的行为序列集以及它们相对应的系统指标信息组成样本库,该方法将样本库进行分类筛选,建立行为特征序列模型,整理相应系统指标信息,存入数据库;监测运行时的软件,生成相对应的日志,其包含行为序列以及系统指标信息;将行为序列与数据库中的特征模型进行对比,并进行分析决策;反馈检测结果,若为恶意软件,需给出相应建议。与现有技术相比,本发明同时记录软件的行为序列与系统指标信息,通过对比数据库中的行为特征序列定位至恶意行为区域,再对比系统指标信息进行分析决策,从定性再到定量,提高了检测恶意软件的精确性。

著录项

  • 公开/公告号CN105809035A

    专利类型发明专利

  • 公开/公告日2016-07-27

    原文格式PDF

  • 申请/专利权人 南京邮电大学;

    申请/专利号CN201610128378.9

  • 发明设计人 孙知信;邢府纬;宫婧;骆冰清;

    申请日2016-03-07

  • 分类号

  • 代理机构南京知识律师事务所;

  • 代理人汪旭东

  • 地址 210003 江苏省南京市鼓楼区新模范马路66号

  • 入库时间 2023-06-19 00:12:25

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-11-09

    授权

    授权

  • 2016-08-24

    实质审查的生效 IPC(主分类):G06F21/56 申请日:20160307

    实质审查的生效

  • 2016-07-27

    公开

    公开

说明书

技术领域

本发明涉及移动通信安全技术领域,具体涉及基于安卓应用实时行为的恶意软件 检测方法和系统。

背景技术

在主流的智能手机操作系统中,谷歌的Android由于其功能强大、开源方便,短 短几年就已经成为全球第一份额的智能手机操作系统。根据Gartner的报告,截止到 2015年的第一季度,全球智能手机销量高达3.36亿,其中采用Android平台的智能手 机已经占据了整个份额的75%以上。但据市场调研机构GDATA公布的一份报告显示, 2015年的第一季度Android平台共出现了50万个新增的恶意应用程序,同比有所上涨。 GDATA称,Android平台平均每18秒就会“诞生”一款新的恶意程序,每天差不多会 有5000款左右。与上个季度相比,Android平台的恶意程序数量增长了6.4%,而与去 年同期相比,增长率为21%。这些恶意软件给手机用户带来了巨大的安全隐患。

目前移动终端恶意软件检测方法根据检测方式不同,其大致可以分为两类,即静 态检测和动态检测。对于静态检测技术,一般是利用反编译工具对移动终端的恶意软 件进行反编译,从文件清单中找出相应的权限或者从源码中找出恶意代码。这种静态 检测技术操作简单,系统开销较小,但是,对于混淆过后的代码,静态检测方法很难 准确的检测出恶意软件,对于传统的动态检测技术,则是运用沙盒,模拟待测试软件 运行,单独提取恶意行为进行对比,这样的分析准确性并不高。而本发明能够很好地 解决上面的问题。

发明内容

本发明目的在于解决了上述现有技术中存在的不足,提出了基于安卓实时行为的 软件检测方法,该方法通过记录安卓应用在运行时的日志以及相关系统指标信息,将 相关行为进行序列映射,根据关键行为确定需对比的数据库中的行为特征序列,若检 测为恶意行为,需要再对相关的系统指标信息进行对比分析,对威胁评估进行加权, 从而提高了危险应用判断的准确性。

本发明解决其技术问题所采取的技术方案是:一种基于安卓应用实时行为的恶意 软件检测方法,该方法包括如下步骤:

步骤1:针对安卓应用的行为进行分析,将易引起危险的行为定义为关键行为并映 射为字母,将普通行为即不易引起危险的行为定义为正常行为并映射为数字。

步骤2:分别收集标准的恶意软件的行为序列集和正常软件的行为序列集,以及它 们所对应的系统指标信息,组成样本库;

步骤3:对样本库中的行为序列进行分类重构,对系统指标信息进行筛选;

步骤4:建立行为特征模型,整理相关系统指标信息;

步骤5:监控运行时的安卓应用,获得日志信息,将日志中的行为序列进行映射, 并取得相关系统指标信息;

步骤6:将待测应用的行为序列进行对比分析,判断是否存在恶意行为,若为恶意 行为,则根据数据库中相关系统指标信息进行分析决策;

步骤7:针对分析决策的结果,显示相关信息,若为恶意软件,则需给出相应建议。

本发明步骤3包括对于行为序列重构采取了一种分类方法,以关键行为为分割点, 将行为序列进行递归分类,直到每个子序列中只包含一个关键序列,在递归的过程中, 将子序列重构,对于恶意行为序列而言则是不断的剔除正常行为序列,留下恶意行为 子序列,对于正常行为则是不断的剔除疑似恶意行为的序列。

本发明步骤4包括与行为特征模型相对应的系统指标信息包括CPU消耗,内存消 耗,发送的数据包通过无线网络连接数,运行的进程数,电池电量,网络传输的数据 量,读取或写入文件路径以及文件大小。

本发明步骤6包括将行为序列与数据库中行为特征序列进行对比,若为恶意行为, 需对恶意行为序列的系统指标进行分析,参照数据库中样本数据后,对威胁评估进行 加权,加权需同时参考包括恶意行为序列以及与此序列相关的系统指标信息;若为正 常行为,检查是否存在异常系统指标信息,若有则需对系统指标信息进行评估。

本发明还提供了一种基于安卓应用实时行为检测系统,该系统包括中央控制区、 事件触发管理模块、用户行为序列管理模块、系统指标信息管理模块、行为序列分类 模块、风险评估模块、分析决策模块、建议管理模块。

中央控制区:处理来自用户的请求,并负责发送指令。

事件触发管理模块:模拟用户对待检测的应用进行一系列的操作。

用户行为序列管理模块:记录用户行为并进行映射。

系统指标信息管理模块:记录应用运行时的相关系统指标信息。

行为序列分类模块:对监测样本库的应用的行为序列进行分类。

风险评估模块:对样本中用户行为序列以及相关系统指标信息进行风险评估。

分析决策模块:对待检测应用的用户行为序列进行分析,若发现可疑行为,则需 要参考相关行为的系统指标信息,以此为依据进行评估。

建议管理模块:根据分析决策模块的结论,给用户提出建议。

有益效果:

1、组建样本库时,本发明采取了正常行为与恶意行为互为参照并以此排除各自无 用的行为的方法,提高了样本库中行为特征序列的准确性。

2、检测恶意软件时,本发明先检测用户行为,再根据行为定位到相关系统指标信 息,结合用户行为以及系统指标信息进行分析,从定性到定量,极大地提高了恶意软 件检测的准确率。

3、当检测软件时并未发现明显的恶意行为,但用户相关操作引起了系统指标异常, 例如内存占用过大,CPU利用率过高等,本发明系统也会将相关情况向用户反馈,很 好地提高了恶意软件检测准确性。

附图说明

图1为本发明的方法流程图。

图2为本发明的序列分类示意图。

图3位为本发明的系统架构图。

具体实施方式

下面结合说明书附图对本发明创造作进一步的详细说明。

本发明是采取基于安卓应用实时行为的动态检测方法,首先通过对大量的行为序 列样本进行分类,得出需要的行为特征模型,同时对与行为特征模型相关的系统指标 信息进行筛选整理,之后监控待测应用,记录该应用的行为以及系统指标信息,将获 得的行为序列进行映射,与数据库中信息进行对比得出检测结果。

本发明的检测流程详图如图1所示,具体包括:

步骤1:收集若干恶意应用以及正常应用组成样本库,通过脚本语言将服务器端样 本安装至系统模拟器中,并启动应用监控系统,该监控系统主要记录其行为日志以及 系统指标信息,系统指标信息包括CPU消耗,内存消耗,发送的数据包通过无线网络 连接数,运行的进程数,电池电量,网络传输的数据量,读取或写入文件路径名称以 及大小等;

步骤2:利用事件触发器模拟用户对应用进行操作,记录日志信息,包括应用行为 以及其相对应的系统指标信息;

步骤3:根据记录的日志,分别对恶意行为序列以及正常行为序列进行映射,关键 行为映射为字母,普通行为映射为数字,并与系统指标信息相关联;

步骤4:对行为序列进行分类重构,并依据重构后的序列筛选系统指标信息,行为 序列分类重构如图2所示,具体包括:

1.以关键行为为参照,假设关键行为数量为n,其中n泛指一个数字。在进行第一 次分割时,左子树的行为序列包含第1个行为至第n-1的关键行为,右子树的行为序 列包含从第1个关键行为后一个行为至最后一个关键行为,其中n-1泛指一个数字。

2.经过一次分割后的子序列需要与数据库中的特征模型进行对比,去掉不需要的 行为序列。恶意行为序列需要参照数据库中正常行为序列特征模型进行重构,去掉绝 对安全的行为,即去掉与最终形成的恶意行为特征模型无关的行为。而对正常行为序 列,也需要参照数据库中恶意行为序列特征模型,去掉疑似存在恶意的行为,即去掉 与最终形成的正常行为特征模型无关的行为;

3.重复上述步骤2,再次进行分割,将第一个子树分割的左子树作为一部份,第一 个子树的右子树与第二个子树的左子树组成一个部分,第二个子树的右子树组成一部 份,对于两个子树混合的部分,取两个子树的并集。

4.以上述步骤3为模板进行递归,直至每个子类只包含一个关键行为;

5.对得到的最终行为序列进行归类,以关键行为为该类型的特征,按照序列长度 进行非递增排序;

步骤5:以分类重构的序列为样本建立行为特征模型,并且整理相关序列的系统指 标信息,即留下一个或者多个具备代表该行为的系统指标信息,例如该行为容易造成 内存泄露,则保留内存信息。

步骤6:对得到的行为特征序列以及相对应的系统指标信息根据危险程度进行评 估,得到相应的危险系数;

步骤7:监控运行时的待测安卓应用,得到日志信息;

步骤8:将日志中的应用行为进行序列映射,并取得相应系统指标信息;

步骤9:将待测应用的行为序列与行为序列特征模型进行对比分析。具体包括:

1)计算出行为序列中的关键行为的个数作为对比的次数,并且去掉最后一个关键 行为之后的普通行为,再根据关键行为确定要对比的数据库中行为特征模型,假如行 为序列中没有关键行为,则跳至步骤6;

2)从行为序列的最后一个关键行为开始,与数据库中行为序列特征模型的最长的 序列从后往前逐一进行对比,即在行为特征模型中寻找行为序列的最长的子序列,并 进行记录,之后再删除倒数第二个关键行为之后的序列;

3)根据步骤1中所计算的关键行为个数,按照步骤2的方法进行对比,直至寻找 出该行为序列所包含的所有行为特征序列;

4)根据寻找到的行为特征序列,筛选出与该序列每个行为对应的系统指标信息;

5)将筛选后的系统指标信息与数据库中该行为特征序列的系统指标信息进行比 对,若超过,则需要对其危险程度进行评估,根据一个集成算法进行加权,在加权时, 还需考虑该行为特征序列的危险程度,若最终超过设定的阈值,则可判定为恶意应用, 并根据最终结果划分危险程度;

6)若不存在关键行为,检查该行为序列是否存在异常系统指标信息,若有则需对 该系统指标信息进行评估,例如某个正常行为占用CPU或者内存过大,则需要向用户 反馈。

步骤10:针对分析决策的结果,显示相关信息,若检测出恶意行为,在给出恶意 行为的同时,还需向用户提出相关建议,若并未检测出恶意行为,但是系统指标信息 有异常,则需向用户反馈异常信息。

如图2所示,本发明是将软件的行为序列依照关键行为和普通行为分别映射为字 母和数字,并设计了一种算法,是将行为进行分类重构,最终组成行为序列特征模型。 建立样本库,根据相对应的行为序列特征模型对系统指标信息进行筛选整理。在对软 件进行监测时,依照样本库对比确认为恶意行为后,则需要再对数据中的系统指标信 息进行对比分析。对恶意软件的评估进行加权时,需同时参考恶意行为序列以及与此 序列相关的系统指标信息。

如图3所示,本发明提供了一种基于安卓应用实时行为检测系统,该系统包括中 央控制区、事件触发管理模块、用户行为序列管理模块、系统指标信息管理模块、行 为序列分类模块、风险评估模块、分析决策模块、建议管理模块。具体技术方案包括 如下:

中央控制区是最重要的组成部分,它处理来自用户的请求,并对相关模块,例如 事件触发模块、分析模块等发送指令。

事件触发管理模块是模拟用户对待检测的应用进行一系列的操作。

用户行为序列管理模块,当中央控制区对事件触发模块发送指令后,也会通知启 动用户行为序列管理模块,此时用户行为序列管理模块会记录发送短信,打电话,拍 照,文件操作等一系列行为。当监控完成后,此模块会对用户行为进行映射,得到用 户行为序列。若检测的目标是样本应用,用户行为序列管理模块完成行为序列映射后, 向中央控制区发送行为序列分类请求,行为序列分类模块完成后,中央控制区会通知 用户行为序列管理模块以分类后的行为序列为样本,建立行为特征序列模型,并写入 数据库。

系统指标信息管理模块,当中央控制区对事件触发模块发送指令后,也会通知启 动系统指标信息管理模块,系统指标信息管理模块会记录CPU消耗,内存消耗,发送 的数据包通过无线网络连接数,运行的进程数,电池电量,网络传输的数据量,读取 或写入文件路径名称以及大小等信息。若检测的目标是样本应用,则需要根据行为特 征序列模型筛选出需要的系统指标信息,并写入数据库。

行为序列分类模块则是对监测样本库的应用的行为序列进行分类,采取以关键行 为为参照,不断的对序列进行分割并剔除无关行为。

风险评估模块,针对每一种行为特征序列以及相匹配系统指标信息分配分别评估 其风险系数,并记录到数据库之中。

分析决策模块包含用户行为序列分析以及危险行为加权管理两个模块。对于用户 行为分析模块则是用监测到的用户行为序列与数据库中的行为特征序列逐一对比,直 至在数据库中找到最长子序列,由关键行为次数决定寻找次数。危险行为加权管理模 块则是对该应用的危险程度进行评估,根据一个集成算法进行加权,评估时需要参照 用户行为以及该行为的系统指标信息的风险系数。最后向用户呈现详细报告时,会展 示决策分析模块确认的恶意行为以及同时刻的系统指标信息。

建议管理模块则是根据分析决策模块的结论,给用户提出相关建议。

例如,待检测软件先读取了用户隐私文件,后通过网络或者短信形式发出,本系 统先会简述可疑行为,并提供该软件所读取文件信息以及之后发送出的消息,最后向 用户建议使用此应用时可禁止易造成信息泄露的相关权限。

上述所描述的具体实施仅仅用以解释本发明,并不用于限定本发明。本发明方案 所公开的技术手段不仅限于上述实施方式所公开的技术手段,还包括由以上技术特征 任意组合所组成的技术。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号