一种基于频繁项集描述的移动互联网恶意应用检测方法

文档序号:9767834阅读:562来源:国知局
一种基于频繁项集描述的移动互联网恶意应用检测方法
【技术领域】
[0001] 本发明属于移动互联网网络安全技术领域,具体涉及一种基于频繁项集描述的移 动互联网恶意应用检测方法。
【背景技术】
[0002] 随着移动互联网的迅速发展,移动终端的使用数量也在急剧增长,并在2011年超 过了 PC端上网用户数量。4G网络的部署、智能手机操作系统的普及(当前主流智能操作系统 为Android和ios)以及各类移动应用的快速出现和普及,能够快捷和方便的满足用户的大 多生活及工作需要,大大推动了移动端上网用户数量和移动互联网上网流量的急剧增加。
[0003] 手机移动终端的方便使用使得越来越多的个人业务转移到移动终端,很多传统互 联网端恶意应用开始向移动端移植,且数量呈现急剧增长的态势。与PC相比,受限于制造及 硬件水平,当前手机智能操作系统在资源方面有较大的限制,如电池容量、内存及CHJ等,使 得其无法像PC那样充分利用本地资源对恶意应用进行检测和分析。此外,不同的操作系统 和硬件架构,使得传统互联网下的一些安全机制无法完全移植应用到移动互联网。
[0004] 对移动端应用的分析,相关检测技术主要包括静态样本分析和动态行为分析。静 态样本分析技术通过分析应用的静态特征,如文件占用、源码依赖、特定字符串等确定应用 的分类;动态行为分析技术通过对应用的行为进行监控,检测其行为是否具有恶意倾向判 断是否为恶意应用。对移动端恶意应用的描述,一般需要利用静态或动态技术对特定恶意 移动样本的特征进行抽取,并保存为特征向量组。利用这些特征向量数据作为训练依据,可 对后续的样本进行检测。静态分析技术的输出主要包括:样本文件的相关信息,如文件大 小、hash、需要的权限、文件类型和结构等;样本的函数调用,如组件间的调用关系,函数依 赖序列;动态分析技术对样本的输出数据主要包括:样本的执行日志,如执行调用函数系 列、样本执行输出文件、访问的外部资源、对隐私数据的访问、向外发出的数据等;样本资源 的占用,如内存的使用,cpu执行事件以及电池的消耗等。
[0005] 在静态特征分析技术中,基于恶意样本签名匹配技术的检测相对比较简单,主要 针对已知的恶意应用,有很高的准确率,但对未知样本和使用了混淆及加密技术的样本检 测能力不足。权限机制是Android系统安全的核心组成部分之一,其本质上是一种对资源的 访问控制机制。一些研究人员针对移动应用运行所需要申请的权限信息,从大量的应用程 序包中提取该程序的权限声明,分析这些应用的权限特征,如应用是否存在权限过度申请、 不同应用的权限申请倾向。部分研究工作针对恶意应用中的API调用关系,基于采用静态分 析的方法抽取API调用,将恶意应用的行为逻辑抽象为代表所属威胁模式的向量序列,标记 为特定的行为序列图。对新增应用,采用机器学习的方法,用与其最为接近的威胁模式序列 所属的分类标记应用。
[0006] 应用动态分析系统一般采用在应用层或内核层动态监控应用执行的方式,记录和 保存应用的动作及输出。在应用层主要依赖于特定客户端,在内核层则主要通过对关键内 核API函数的劫持实现。
[0007] 当前已有研究成果中所提出和实现的方法,主要基于客户端应用,依赖于客户端 应用对特定基础资源数据的收集,这导致依赖客户端应用的架构方式无法覆盖全部的移动 端用户;基于单个终端抽取得到的应用特征及行为描述具有较大的随机性。

【发明内容】

[0008] 针对现有技术的不足,本发明提出一种基于频繁项集描述的移动互联网恶意应用 检测方法,该方法不需要移动设备客户端应用的支持,便于调整和部署,其分析的数据对象 针对恶意应用的网络行为,不受恶意应用加壳、加密、动态加载执行等技术的影响。
[0009] 一种基于频繁项集描述的移动互联网恶意应用检测方法,包括以下步骤:
[0010] 步骤1、采用已知移动端恶意应用样本历史流量数据作为训练数据,提取恶意应用 样本的频繁项集,建立恶意应用样本库;
[0011] 步骤2、在移动互联网中采集并保存各个移动终端的网络流量数据,对上述流量数 据按照应用种类和时间进行分组并按照切分窗口进行切分,获得每个移动终端各应用的频 繁项集;
[0012] 步骤3、将步骤2所获取的频繁项集与恶意应用样本库进行比对,判断各应用是否 为恶意应用,若是,则提醒该移动终端此应用为恶意应用;否则,返回执行步骤2。
[0013] 步骤2所述的在移动互联网中采集各个移动终端的历史流量数据,对上述流量数 据按照应用种类和时间进行分组并按照切分窗口进行切分,获得每个移动终端各应用的频 繁项集,具体步骤如下:
[0014] 步骤2-1、在移动互联网中采集各个移动终端的网络流量数据并保存;
[0015] 步骤2-2、将固定周期内每个用户的应用流量数据按照应用种类进行分组;
[0016] 步骤2-3、对每个用户的各个应用按照时间顺序将流量数据进行分组;
[0017] 步骤2-4、获取恶意应用样本库内流量数据的最大时间间隔,将该时间间隔作为切 分窗口对应用流量数据进行切分;
[0018] 步骤2-5、将每个切分窗口内的流量数据进行向量化获得项集集合,并提取该项集 集合的频繁项集。
[0019] 步骤2所述的在移动互联网中采集各个移动终端的历史流量数据,具体为:在移动 互联网运营商Gn设备旁侧设置流量采集装置。
[0020] 步骤3所述的将步骤2所获取的频繁项集与恶意应用样本库进行比对,具体为:确 定频繁项集内每一项的相似度,再根据每项的相似度获得各应用的频繁项集与已知恶意样 本的频繁项集之间的Jaccard距离,若Jaccard距离小于设定的阈值,则为恶意应用,否则, 为正常应用。
[0021] 步骤2-4所述的获取恶意应用样本库内流量数据的最大时间间隔,即获取样本库 中每个应用的最大时间间隔,再求取平均值。
[0022] 步骤2-5所述的频繁项集,采用aprior算法进行挖掘,即挖掘出该应用频繁出现的 行为。
[0023]本发明优点:
[0024]本发明提出一种基于频繁项集描述的移动互联网恶意应用检测方法,通过全面采 集移动互联网中的各类数据,包括网络数据包、业务日志、安全设备事件等,构建大数据分 析环境,利用大数据分析技术,构建移动端应用的特征数据,描述应用,解决同一样本在不 同的移动终端上抽取得到的样本数据差异问题;本方法不需要移动设备客户端应用的支 持,便于调整和部署;本方法分析的数据对象针对恶意应用的网络行为,不受恶意应用加 壳、加密、动态加载执行等技术的影响。
【附图说明】
[0025] 图1为本发明一种实施例的基于频繁项集描述的移动互联网恶意应用检测方法流 程图;
[0026] 图2为本发明一种实施例的应用特征数据提取的随机性示意图;
[0027] 图3为本发明一种实施例的抽取应用描述示意图;
[0028] 图4为本发明一种实施例的应用间的相似性度量示意图。
【具体实施方式】
[0029]下面结合附图对本发明一种实施例做进一步说明。
[0030] 本发明实施例中,基于频繁项集描述的移动互联网恶意应用检测方法,方法流程 图如图1所示,包括以下步骤:
[0031] 步骤1、采用已知移动端恶意应用样本历史流量数据作为训练数据,提取恶意应用 样本的频繁项集,建立恶意应用样本库;
[0032] 步骤2、在移动互联网中采集并保存各个移动终端的网络流量数据,对上述流量数 据按照应用种类和时间进行分组并按照切分窗口进行切分,获得每个移动终端各应用的频 繁项集;
[0033] 具体步骤如下:
[0034] 步骤2-1、在移动互联网中采集各个移动终端的网络流量数据并保存;
[0035] 本发明实施例中,如图2所示,在运营商移动网络侧能够观测到移动用户发出的所 有网络数据(日志),基于移动网络的特点,能够将每条网络数据定位到具体的终端设备上; 对每个终端发出的网络流量,以时间为索引,抽取流量特征,建立时间顺序数据库;在此基 础上,以特定应用为对象,以时间分割和流量特征为依据,从每个用户流量中抽取属于特定 应用的流量数据;由于每个用户的操作和使用习惯不同,如不同用户触发了不同的功能模 块,导致特定应用在网络流量上的表现也存在较大的差异;
[0036]本发明实施例中,以客户端产生的HTTP网络流量为基础,在某省运行商Gn设备旁 部署数据采集程序,并对采集的数据进行整理和存储,建立移动端应用的历史流量数据库, 作为
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1