基于格式异构的溢出漏洞检测方法、系统及存储介质
技术领域
本发明涉及网络安全技术领域,特别涉及一种基于格式异构的溢出漏洞检测方法、系统及存储介质。
背景技术
随着互联网的发展以及网络信息的迅猛增长,保护网络和主机的安全变得越来越重要。而漏洞能够使攻击者在没有被授权的情况下访问或者破坏系统,那么如何发现、处理漏洞也就成为研究人员主要关注的方向。
现阶段对溢出漏洞的分析大多依靠人工,溢出漏洞数量多和不同溢出类型的判断方法不同导致人工分析效率降低,鲜少有自动化的方案可以完成检测。
现有的漏洞的检测方法是将发现的漏洞与漏洞库中的已有行为特征进行比对,这种方式对于未知的漏洞不具备检测能力。
在以往的检测中,对于发现的漏洞就会将其行为特征以及信息存入漏洞库,并且需要不断地漏洞库进行更新维护,既占用资源又占用人力。
发明内容
基于上述问题,本发明提出了一种基于格式异构的溢出漏洞检测方法、系统及存储介质,基于大量统计计算,能够筛选出目标检测特征,针对目标检测特征进行聚类计算,得到异常文件,并进行深度检测,同时对未知漏洞具备检测能力。
本发明通过如下方法实现:
一种基于格式异构的溢出漏洞检测方法,包括:
捕获网络数据包,并将网络数据包还原为文件;
对还原的文件按照文件类型进行分类,将同类型文件分流到同一检测分支;
提取各检测分支中文件的结构特征;
通过特征提取算法,计算各文件相应结构特征间的差异度;
提取差异度超过阈值的结构特征为目标检测特征,并获取各目标检测特征的特征集;
对提取出的特征集分别进行聚类分析,若存在关联程度低的结构特征,则该结构特征对应文件为异常文件;
针对异常文件进行告警,并深度检测。
所述的方法中,所述结构特征包括:入口点特征、节表特征及特定偏移位特征。
所述的方法中,所述特征提取算法包括:方差选择算法、相关系数法及卡方检验法。
所述的方法中,提取差异度超过阈值的结构特征为目标检测特征,替换为:提取与文件关联度较大的差异度超过阈值的结构特征为目标检测特征。
本发明还提出了一种基于格式异构的溢出漏洞检测系统,包括:
捕获模块,捕获网络数据包,并将网络数据包还原为文件;
分类模块,对还原的文件按照文件类型进行分类,将同类型文件分流到同一检测分支;
第一特征提取模块,提取各检测分支中文件的结构特征;
差异计算模块,通过特征提取算法,计算各文件相应结构特征间的差异度;
第二特征提取模块,提取差异度超过阈值的结构特征为目标检测特征,并获取各目标检测特征的特征集;
分析模块,对提取出的特征集分别进行聚类分析,若存在关联程度低的结构特征,则该结构特征对应文件为异常文件;
深度检测模块,针对异常文件进行告警,并深度检测。
所述的系统中,所述结构特征包括:入口点特征、节表特征及特定偏移位特征。
所述的系统中,所述特征提取算法包括:方差选择算法、相关系数法及卡方检验法。
所述的系统中,提取差异度超过阈值的结构特征为目标检测特征,替换为:提取与文件关联度较大的差异度超过阈值的结构特征为目标检测特征。
一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一所述的基于格式异构的溢出漏洞检测方法。
本发明的优势在于,本发明通过对文件结构特征的聚类分析比较,确定文件是否为结构异常文件,及威胁溢出文件,本发明方法中所检测的结构特征是根据相应提取算法自动筛选出的合适的位置及特征,该位置和特征并非固定的,因此更加灵活,不依赖于漏洞库,对于未知漏洞同样具有检测能力。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一种基于格式异构的溢出漏洞检测方法实施例流程图;
图2为本发明一种基于格式异构的溢出漏洞检测系统结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。
一种基于格式异构的溢出漏洞检测方法,如图1所示,包括:
S101:捕获网络数据包,并将网络数据包还原为文件;
S102:对还原的文件按照文件类型进行分类,将同类型文件分流到同一检测分支;
S103:提取各检测分支中文件的结构特征;
S104:通过特征提取算法,计算各文件相应结构特征间的差异度;
S105:提取差异度超过阈值的结构特征为目标检测特征,并获取各目标检测特征的特征集;
S106:对提取出的特征集分别进行聚类分析,若存在关联程度低的结构特征,则该结构特征对应文件为异常文件;
通常正常文件的特征值是大量重复性存在的,而漏洞溢出文件的特征值相比而言只是小部分的存在。因此,只要对各个分支中的结构特征进行聚类分析,就可以识别大量的正常文件及小部分的格式结构异常的文件。特定偏移内容,具有统计学差异;特定字段与格式规范定义冲突等。通过聚类将各个特征集中距离其他的多数的特征点较远的特征点置为可疑的特征。最终确立存在可疑特征的文件为结构异常文件。
聚类分析可以通过已知的聚类算法进行计算,如K-means聚类算法:对选取的多个特征利用K-means聚类算法进行统计比对。随机选取k个特征点作为初始聚类中心,然后计算各个特征点到聚类中心的位置,把特征点归到离它最近的那个聚类中心所在的类簇。对于调整后的新簇计算新的聚类中心,如果相邻两次的聚类中心没有任何变化,说明此时误差平方和函数已经达到最小,聚类准则函数已经收敛,最终实现聚类。通过聚类我们将距离中心点较远的特征点置为可疑的特征,距离中心点较近的为正常特征。
S107:针对异常文件进行告警,并深度检测。
基于上述方法,可以过滤掉大量的正常文件,将溢出漏洞锁定在更小的范围内,只需对过滤后的这些文件进一步的分析和检测,以提高效率。
所述的方法中,所述结构特征包括:入口点特征、节表特征及特定偏移位特征等。
所述的方法中,所述特征提取算法包括:方差选择算法、相关系数法及卡方检验法。
所述的方法中,提取差异度超过阈值的结构特征为目标检测特征,替换为:提取与文件关联度较大的差异度超过阈值的结构特征为目标检测特征。
为便于理解技术方案,以PDF文件为例进行进一步说明:对于获取到的一批PDF文件,提取PDF文件文件结构的特征值,利用机器学习的特征提取方法包括但不限于方差选择法、相关系数法、卡方检验法等提取出差异度超过阈值的特征(即PDF文件中文件相关性较大的且同一特征里存在明显差异性的特征),对提取出的特征进行聚类分析,聚类分析方法包括但不限于K-means聚类算法,数量多且聚在一起的为正常的特征值,数量少且距离其他特征值较远的为异常的特征值。通过聚类的最终结果判断出格式异常的PDF文件。
本发明还提出了一种基于格式异构的溢出漏洞检测系统,如图2所示,包括:
捕获模块201,捕获网络数据包,并将网络数据包还原为文件;
分类模块202,对还原的文件按照文件类型进行分类,将同类型文件分流到同一检测分支;
第一特征提取模块203,提取各检测分支中文件的结构特征;
差异计算模块204,通过特征提取算法,计算各文件相应结构特征间的差异度;
第二特征提取模块205,提取差异度超过阈值的结构特征为目标检测特征,并获取各目标检测特征的特征集;
分析模块206,对提取出的特征集分别进行聚类分析,若存在关联程度低的结构特征,则该结构特征对应文件为异常文件;
深度检测模块207,针对异常文件进行告警,并深度检测。
所述的系统中,所述结构特征包括:入口点特征、节表特征及特定偏移位特征。
所述的系统中,所述特征提取算法包括:方差选择算法、相关系数法及卡方检验法。
所述的系统中,提取差异度超过阈值的结构特征为目标检测特征,替换为:提取与文件关联度较大的差异度超过阈值的结构特征为目标检测特征。
一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上任一所述的基于格式异构的溢出漏洞检测方法。
本发明的优势在于,本发明通过对文件结构特征的聚类分析比较,确定文件是否为结构异常文件,及威胁溢出文件,本发明方法中所检测的结构特征是根据相应提取算法自动筛选出的合适的位置及特征,该位置和特征并非固定的,因此更加灵活,不依赖于漏洞库,对于未知漏洞同样具有检测能力。同时也解决了认为处理漏洞效率低,以及对漏洞库进行维护的资源占用问题。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。