基于机器学习的恶意文件检测方法及系统技术方案

技术编号:28872054 阅读:15 留言:0更新日期:2021-06-15 23:04
本发明专利技术提供一种基于机器学习的恶意文件检测方法及系统,属于信息安全技术领域。所述方法包括:识别待测文件的文件类型;提取所述待测文件的特征;将所述待测文件的特征输入与所述待测文件的文件类型对应的训练好的分类器中分类计算,得到所述待测文件的分类结果。使用该方法在文件发生变种、混淆的情况下依然可以识别出恶意文件,且占用资源少,能够快速得到检测结果。

【技术实现步骤摘要】
基于机器学习的恶意文件检测方法及系统
本专利技术涉及信息安全
,具体地涉及一种基于机器学习的恶意文件检测方法以及一种基于机器学习的恶意文件检测系统。
技术介绍
恶意文件检测是网络安全领域重要的课题,近年来,恶意文件的数量呈指数增长,传统的处理方式已经不能及时有效的处理鉴定海量的数据。传统的恶意文件检测技术无外乎两种,一种是基于静态特征的检测分析,例如,基于应用程序编程接口序列的检测方法,将文件的编程接口特征提取出来,建立特征库用于恶意文件的检测。这一类的检测技术虽然对软件代码的分析速度比较快,但恶意文件可以通过代码混淆、变种等方式对抗这些检测。因此静态检测存在误报率高,无法识别混淆、变种的文件,容易被绕过的问题。另一种是基于动态特征的检测方式,例如,基于沙箱的恶意文件检测,通过在沙箱环境中观察恶意文件的行为特征,从而判断出文件是否是恶意的。这种方法虽然能够解决在静态检测中存在的准确率不够的问题,但是这种算法消耗大量的资源,耗时较为严重。因此动态检测存在检测效率低,资源消耗严重问题。
技术实现思路
本专利技术实施方式的目的是提供一种基于机器学习的恶意文件检测方法及系统,使用该方法在文件发生变种、混淆的情况下依然可以识别出恶意文件,且占用资源少,能够快速得到检测结果。为了实现上述目的,本专利技术第一方面提供一种基于机器学习的恶意文件检测方法,所述方法包括:识别待测文件的文件类型;提取所述待测文件的特征;将所述待测文件的特征输入与所述待测文件的文件类型对应的训练好的分类器中分类计算,得到所述待测文件的分类结果。进一步地,所述识别待测文件的文件类型,包括:获取待测文件的文件头数据;根据所述文件头数据识别所述待测文件的文件类型。文件头数据用于显示这个文件的实际用法,并且不容易人为修改,根据文件头数据确定的文件类型更准确。可选的,所述特征包括:所述待测文件的熵序列的统计特征、所述待测文件中每个字符的字符占比以及所述待测文件中的“https”字段个数。进一步地,所述提取所述待测文件的特征,包括:将所述待测文件转换为二进制数据;将所述二进制数据划分为预设长度的数据块;计算每个所述数据块的信息熵,得到所述待测文件的熵序列;计算所述熵序列的统计特征;计算所述待测文件中每个字符的字符占比;计算所述待测文件中的“https”字段个数。通过将待测文件划分为若干块后,计算每个数据块的信息熵,再对整个文件的所有数据块的信息熵进行统计,能够有效检测出待测文件中较短的恶意片段,准确率更高。可选的,所述统计特征包括:平均值、方差、最大值以及最小值。可选的,所述训练好的分类器的训练过程包括:收集一定数量的训练数据文件;识别训练数据文件的文件类型;根据所述文件类型对所述训练数据文件进行分类;对于每一类训练数据文件:分析确定该类训练数据文件中的恶意文件和非恶意文件,并进行标记;提取标记好的该类训练数据文件的特征;将该类训练数据文件的特征输入分类器进行训练,得到该类训练数据文件对应的训练好的分类器。可选的,所述分类器包括:GBDT分类器、随机森林分类器以及SVM分类器。本专利技术第二方面提供一种基于机器学习的恶意文件检测系统,所述系统包括:文件类型识别单元,用于识别待测文件的文件类型;特征提取单元,用于提取所述待测文件的特征;以及文件分类单元,用于将所述待测文件的特征输入与所述待测文件的文件类型对应的训练好的分类器中分类计算,得到所述待测文件的分类结果。该系统结构简单,使用该系统在文件发生变种、混淆的情况下依然可以识别出恶意文件,且占用资源少,能够快速得到检测结果。进一步地,所述特征提取单元包括:文件转换模块,用于将所述待测文件转换为二进制数据;数据划分模块,用于将所述二进制数据划分为预设长度的数据块;统计特征计算模块,用于计算每个所述数据块的信息熵,得到所述待测文件的熵序列,并计算所述熵序列的统计特征;字符占比计算模块,用于计算所述待测文件中每个字符的字符占比;“https”字段个数计算模块,用于计算所述待测文件中的“https”字段个数。另一方面,本专利技术提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行本申请所述的基于机器学习的恶意文件检测方法。通过上述技术方案,使用该方法在文件发生变种、混淆的情况下依然可以识别出恶意文件,且占用资源少,能够快速得到检测结果。本专利技术实施方式的其它特征和优点将在随后的具体实施方式部分予以详细说明。附图说明附图是用来提供对本专利技术实施方式的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本专利技术实施方式,但并不构成对本专利技术实施方式的限制。在附图中:图1是本专利技术一种实施方式提供的基于机器学习的恶意文件检测方法流程图;图2是本专利技术一种实施方式提供的基于机器学习的恶意文件检测系统框图。具体实施方式以下结合附图对本专利技术的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本专利技术,并不用于限制本专利技术。图1是本专利技术一种实施方式提供的基于机器学习的恶意文件检测方法流程图。如图1所示,所述方法包括:识别待测文件的文件类型;提取所述待测文件的特征;将所述待测文件的特征输入与所述待测文件的文件类型对应的训练好的分类器中分类计算,得到所述待测文件的分类结果。通常文件扩展名用来识别文件类型,但是文件扩展名可以很容易被人为修改。所有的文件都是以二进制的形式进行存储的,在每一个文件的开头实际上都有一片区域用来显示这个文件的实际用法,这就是文件头标志,通常文件头标志用十六进制表示。读取文件头数据就可以判断文件的正确类型。例如:以“4D5A90”开头的文件为dll文件。在本专利技术的一些实施例中,所述识别待测文件的文件类型,包括:获取待测文件的文件头数据;根据所述文件头数据识别所述待测文件的文件类型。文件头数据用于显示这个文件的实际用法,并且不容易人为修改,根据文件头数据确定的文件类型更准确。通过文件头数据识别出来的类型非常详细,例如仅仅图片就包括png、JPEG、JPG、gif、bmp等等,为了适当减少分类器数量,在一些实施例中,会将具体的文件类型进行归类,将相似类型进行合并,例如将png、JPEG、JPG、gif、bmp都归类为图片类。在这些实施例中,同一文件类型会包括至少一个的文件头数据,在检测到文件头数据后会将文件头数据于不同类型包含的文件头数据进行比较,以确定文件对应的文件类型。可选的,所述特征包括:所述待测文件的熵序列的统计特征、所述待测文件中每个字符的字符占比以及所述待测文件中的“https”字段个数。信息熵是用来描述信源不确定度的概本文档来自技高网...

【技术保护点】
1.一种基于机器学习的恶意文件检测方法,其特征在于,所述方法包括:/n识别待测文件的文件类型;/n提取所述待测文件的特征;/n将所述待测文件的特征输入与所述待测文件的文件类型对应的训练好的分类器中分类计算,得到所述待测文件的分类结果。/n

【技术特征摘要】
1.一种基于机器学习的恶意文件检测方法,其特征在于,所述方法包括:
识别待测文件的文件类型;
提取所述待测文件的特征;
将所述待测文件的特征输入与所述待测文件的文件类型对应的训练好的分类器中分类计算,得到所述待测文件的分类结果。


2.根据权利要求1所述的基于机器学习的恶意文件检测方法,其特征在于,所述识别待测文件的文件类型,包括:
获取待测文件的文件头数据;
根据所述文件头数据识别所述待测文件的文件类型。


3.根据权利要求1所述的基于机器学习的恶意文件检测方法,其特征在于,所述特征包括:所述待测文件的熵序列的统计特征、所述待测文件中每个字符的字符占比以及所述待测文件中的“https”字段个数。


4.根据权利要求3所述的基于机器学习的恶意文件检测方法,其特征在于,所述提取所述待测文件的特征,包括:
将所述待测文件转换为二进制数据;
将所述二进制数据划分为预设长度的数据块;
计算每个所述数据块的信息熵,得到所述待测文件的熵序列;
计算所述熵序列的统计特征;
计算所述待测文件中每个字符的字符占比;
计算所述待测文件中的“https”字段个数。


5.根据权利要求4所述的基于机器学习的恶意文件检测方法,其特征在于,所述统计特征包括:平均值、方差、最大值以及最小值。


6.根据权利要求1所述的基于机器学习的恶意文件检测方法,其特征在于,所述训练好的分类器的训练过程包括:
收集一定数量的训练数据文件;
识别训练数据文件的文件类型;
根据所述文件...

【专利技术属性】
技术研发人员:王卓超于金龙王智民王高杰
申请(专利权)人:北京六方云信息技术有限公司北京六方云科技有限公司
类型:发明
国别省市:北京;11

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

1