专利转让平台_买专利_卖专利_中国高校专利技术交易-买卖发明专利上知查网

全部分类
全部分类
一种基于类别属性划分的OSSEC报警数据聚合方法

一种基于类别属性划分的OSSEC报警数据聚合方法

IPC分类号 : H04L12/24,H04L12/26,H04L29/06,G06F17/30

申请号
CN201810492657.2
可选规格
  • 专利类型: 发明专利
  • 法律状态: 有权
  • 申请日: 2018-05-22
  • 公开号: CN108833139B
  • 公开日: 2018-11-16
  • 主分类号: H04L12/24
  • 专利权人: 桂林电子科技大学

专利摘要

本发明提出一种基于类别属性划分的OSSEC报警数据聚合方法,该方法包括:S1.采集原始OSSEC报警数据;S2.对原始OSSEC报警数据进行标准化得到标准化OSSEC报警数据;S3.对步骤S1采集的报警数据进行预处理;S4.对步骤S2所述的OSSEC报警数据进行处理使得每条OSSEC报警数据升序逐层匹配;S5.计算每条OSSEC报警数据各属性的相似度。S6.计算每条OSSEC报警数据全局相似度以及计算每条OSSEC报警数据的各个属性的权重值;S7.根据步骤S5得到的各属性的相似度以及步骤S6得到的各属性的权重值计算每条OSSEC报警数据的全局相似度;并计聚合结果。本发明打破了常规的单一依赖时间属性聚合比较,引入嵌套从属关系的思想,采用类别属性划分算法实现报警数据类别属性逐层升序聚合从而灵活计算相邻报警数据的属性相似度。同时,有效地提高了OSSEC报警数据聚合率和系统检测率,以及降低了系统误报率。

权利要求

1.一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,该方法包括以下步骤:

S1.采集原始OSSEC报警数据;

S2.对原始OSSEC报警数据进行标准化得到标准化OSSEC报警数据;

S3.采用内容合并、格式转换和数据过滤的方法对步骤S1采集的报警数据进行预处理,通过设置属性匹配固定时间阈值过滤的方法减少重复报警数据的数量;所述重复报警数据是每两条报警数据间除了时间属性之外其他属性内容均相同的报警数据;

S4.通过改进入侵检测系统的报警数据的读取方式以及类别属性划分对步骤S2所述的OSSEC报警数据进行处理使得每条OSSEC报警数据升序逐层匹配;

S5.计算所述步骤S4所得到的逐层匹配后的每条OSSEC报警数据各属性的相似度;

S6.计算所述步骤S4所得到的逐层匹配后的每条OSSEC报警数据全局相似度以及计算每条OSSEC报警数据的各个属性的权重值;

S7.根据步骤S5得到的OSSEC报警数据的各个属性相似度和步骤S6得到的权重值,进行累乘加权计算得到每条报警数据的全局相似度;并计算聚合结果。

2.根据权利要求1所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,在所述步骤S2中,所述OSSEC报警数据包括由时间戳、主机用户名、源IP、描述信息、规则编号、类别、严重程度等级7种属性构成的七元组。

3.根据权利要求2所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,所述步骤S4具体包括以下子步骤:

S41.对预处理后的OSSEC报警数据进行集合封装;

S42.对整个OSSEC报警数据文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一加载到集合中;

S43.对每条OSSEC报警数据的类别属性以首字母升序排列逐一比较,并循环迭代逐层判别,从而实现类别属性划分;

S44.以指定格式进行保存输出。

4.根据权利要求1所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,在所述步骤S5中,所述各属性的相似度包括报警标识属性的相似度、IP地址相似度和报警时间戳相似度。

5.根据权利要求1所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,在所述步骤S6中,通过熵值法来计算每条OSSEC报警数据的各个属性的权重值。

6.根据权利要求1所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,所述步骤S7具体包括以下子步骤:

S71.计算每条OSSEC报警数据的全局相似度;

S72.对计算全局相似度后的每条OSSEC报警数据进行集合封装;

S73.对整个OSSEC报警数据文件进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一加载到集合中;

S74.将每条OSSEC报警数据全局相似度属性列的内容分别与期望阈值集合进行比较,并统计满足条件的报警条数;

S75.若全局相似度小于期望阈值,则统计满足此条件的报警数据,并可视为作为聚合所得到的报警数据结果;否则,则表明此条OSSEC报警数据不是所期望的聚合范围。

7.根据权利要求4所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,所述IP地址相似度的计算方法为:

采用无类别域间路由的格式对IP地址进行比较,将每两条OSSEC报警数据相同的二进制位个数r除以IP地址二进制位长度的值作为两个IP地址的相似度;

计算公式设置如下:

其中,Simip(Alerti,Alertj)是报警数据的IP相似度值,Alerti和Alertj分别表示第i条和第j条报警数据。

8.根据权利要求4所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,所述报警时间戳相似度的计算方法为:

将时间间隔Tinternal和预设的最小阈值tmin及最大阈值tmax进行比较,当时间间隔Tinternal小于tmin则相似度为0,当时间间隔Tinternal大于tmax则相似度为1,如果时间间隔Tinternal在tmin和tmax之间,计算公式设置如下:

其中,Simtimestamp(Alerti,Alertj)是报警数据时间戳的相似度值,Alerti和Alertj分别表示第i条和第j条报警数据。

9.根据权利要求5所述的一种基于类别属性划分的OSSEC报警数据聚合方法,其特征在于,每条OSSEC报警数据的全局相似度的计算方法为:

其中,Simsum(Alerti,Alerti+1)是报警数据的总相似度,i,j是计算属性权重时报警数据所在的行号,c是报警数据的属性所在的列号,Wc是报警数据各个属性的权重,Alert(i)attributes和Alert(j)attributes分别表示第i条和第j条报警数据的每个属性的集合,n是报警数据的条数。

说明书

技术领域

本发明涉及一种数据聚合方法,具体涉及一种基于类别属性划分的OSSEC报警数据聚合方法。

背景技术

随着网络技术的快速发展,网络攻击行为和网络流量也快速的增多,从而导致的安全问题也引起了我们的重视。面对目前攻击行为的多样化,分布式的入侵检测系统对这些形成搭建了各种不同的安全设备。然而,我们传统的IDS对攻击行为的处理能力并不完善,由于各个网络安全设备大多处于独立的工作状态,导致了对报警数据的处理效率下降,很容易产生大量的冗余报警,误报警,漏报警等现象。因此对这些报警数据进行聚合,为了能得到更高的检测效率和更多与攻击相关的报警,使得冗余的报警数据能有效减少,并最终降低误报率。

任肖肖等人为不同的攻击类型设置不同的阈值,采用顺序聚类的方法,将相似度高于阈值的报警进行合并,操作简单,适用范围广,但具有较强的次序依赖性和缺乏灵活性。

发明内容

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种基于类别属性划分的OSSEC报警数据聚合方法,以解决现有技术中误报率高的问题。

为实现上述目的及其他相关目的,本发明提供一种基于类别属性划分的OSSEC报警数据聚合方法,该方法包括以下步骤:

S1.采集原始OSSEC报警数据;

S2.对原始OSSEC报警数据进行标准化得到标准化OSSEC报警数据;

S3.采用内容合并、格式转换和数据过滤的方法对步骤S1采集的报警数据进行预处理,通过设置属性匹配固定时间阈值过滤的方法减少重复报警数据的数量;所述重复报警数据是每两条报警数据间除了时间属性之外其他属性内容均相同的报警数据;

S4.通过改进入侵检测系统的报警数据的读取方式以及类别属性划分对步骤S2所述的OSSEC报警数据进行处理使得每条OSSEC报警数据升序逐层匹配;

S5.计算所述步骤S4所得到的逐层匹配后的每条OSSEC报警数据各属性的相似度。

S6.计算所述步骤S4所得到的逐层匹配后的每条OSSEC报警数据全局相似度以及计算每条OSSEC报警数据的各个属性的权重值;

S7.根据步骤S5得到的OSSEC报警数据的各个属性相似度和步骤S6得到的权重值,进行累乘加权计算得到每条报警数据的全局相似度;并计算聚合结果。

优选地,在所述步骤S2中,所述OSSEC报警数据包括由时间戳、主机用户名、源IP、描述信息、规则编号、类别、严重程度等级7种属性构成的七元组。

优选地,所述步骤S3具体包括以下子步骤;

步骤S31.对需要进行内容合并和格式转换处理的OSSEC报警数据进行集合封装和参数定义;

步骤S32.对整个文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一加载到集合中;

步骤S33.对合并后文件做属性的起始字符识别转换处理,将合并后文件按照时间升序输出并转换格式存储;

步骤S34.采用属性匹配固定时间阈值预处理算法将格式转换后的OSSEC报警数据以逐一匹配属性的方式对报警数据进行精简;

步骤S35.对合并和转换处理后的OSSEC报警数据进行集合封装定义。

步骤S36.对整个文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一加载到集合中;

步骤S37.在排序后的数据集上移动一个的固定大小时间窗口,每次只检测timeDiff小于窗口内的报警数据;

步骤S38.一一匹配判断比较每条OSSEC报警数据时间之外的属性是否满足过滤条件,若每个属性都满足过滤条件,则输出并存储。

优选地,所述步骤S4具体包括以下子步骤:

S41.对预处理后的OSSEC报警数据进行集合封装;

S42.对整个OSSEC报警数据文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一加载到集合中;

S43.对每条OSSEC报警数据的类别属性以首字母升序排列逐一比较,并循环迭代逐层判别,从而实现类别属性划分;

S44.以指定格式进行保存输出。

优选地,在所述步骤S5中,所述各属性的相似度包括报警标识属性的相似度、IP地址相似度和报警时间戳相似度。

优选地,在所述步骤S6中,通过熵值法来计算每条OSSEC报警数据的各个属性的权重值。

优选地,所述步骤S7具体包括以下子步骤:

S71.计算每条OSSEC报警数据的全局相似度;

S72.对计算全局相似度后的每条OSSEC报警数据进行集合封装;

S73.对整个OSSEC报警数据文件进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一加载到集合中;

S74.将每条OSSEC报警数据全局相似度属性列的内容分别与期望阈值集合进行比较,并统计满足条件的报警条数;

S75.若全局相似度小于期望阈值,则统计满足此条件的报警数据,并可视为作为聚合所得到的报警数据结果;否则,则表明此条OSSEC报警数据不是所期望的聚合范围。

优选地,所述IP地址相似度的计算方法为:

采用无类别域间路由的格式对IP地址进行比较,将每两条OSSEC报警数据相同的二进制位个数r除以IP地址二进制位长度的值作为两个IP地址的相似度;

计算公式设置如下:

其中,Simip(Alerti,Alertj)是报警数据的IP相似度值,Alerti和Alertj分别表示第i条和第j条报警数据。

优选地,所述报警时间戳相似度的计算方法为:

将时间间隔Tinternal和预设的最小阈值tmin及最大阈值tmax进行比较,当时间间隔Tinternal小于tmin则相似度为0,当时间间隔Tinternal大于tmax则相似度为1,如果时间间隔Tinternal在tmin和tmax之间,计算公式设置如下:

其中,Simtimestamp(Alerti,Alertj)是报警数据时间戳的相似度值,Alerti和Alertj分别表示第i条和第j条报警数据。

优选地,每条OSSEC报警数据的全局相似度的计算方法为:

其中,Simsum(Alerti,Alerti+1)是报警数据的总相似度,i,j是计算属性权重时报警数据所在的行号,c是报警数据的属性所在的列号,Wc是报警数据各个属性的权重,Alert(i)attributes和Alert(j)attributes分别表示第i条和第j条报警数据的每个属性的集合,n是报警数据的条数。

如上所述,本发明所述的一种基于类别属性划分的OSSEC报警数据聚合方法,具有以下

有益效果:

本发明打破了常规的单一依赖时间属性聚合比较,引入嵌套从属关系的思想,采用类别属性划分算法实现报警数据类别属性逐层升序聚合从而灵活计算相邻报警数据的属性相似度。同时,有效地提高了OSSEC报警数据聚合率和系统检测率,以及降低了系统误报率。

附图说明

为了进一步阐述本发明所描述的内容,下面结合附图对本发明的具体实施方式作进一步详细的说明。应当理解,这些附图仅作为典型示例,而不应看作是对本发明的范围的限定。

图1为实验整体采集环境架构拓扑图;

图2为采集到的OSSEC报警数据在MySQL中对应表;

图3为采集到的OSSEC报警数据在MySQL中对应的某张具体表;

图4为报警数据实时分析展示图;

图5为OSSEC原始报警数据内容合并和格式转换流程图;

图6为内容合并后的原始OSSEC报警数据;

图7为格式转换后的原始OSSEC报警数据;

图8为属性匹配固定时间阈值预处理流程图;

图9为OSSEC报警数据精简前后对比;(a)为精简之前各类别的OSSEC报警数量,(b)为精简之前各类别的OSSEC报警数量占比,(c)为精简之后各类别的OSSEC报警数量,(d)为精简之后各类别的OSSEC报警数量占比;

图10为基于类别属性的OSSEC报警聚合算法流程图;

图11为类别属性划分的原始OSSEC报警数据;

图12为OSSEC聚合函数执行过程图;

图13为不同期望值下OSSEC报警数据聚合率对比;其中,曲线1表示本发明所述方法,曲线2表示文献《基于多源报警日志的网络安全威胁态势感知关键技术研究》的方法;

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

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图式中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

本发明提供一种基于类别属性划分的OSSEC报警数据聚合方法,其考虑到每条报警数据类别属性存在不具有统一性,类别间的层次不是简单的单层关系。直接顺序聚合,会出现做每相邻两条OSSEC报警数据对比的次数增加和类别属性查找时的深度加深,从而出现聚合率低下。通过类别属性划分算法实现报警数据随机打散读取,从而有效地提高了OSSEC报警数据的聚合率,而且提高了入侵检测系统的检测性能。

如图14所示,本实施例提供一种基于类别属性划分的OSSEC报警数据聚合方法,包括步骤如下:

步骤1、搭建真实的数据采集OSSIM开源平台下的OSSEC分布式入侵检测系统,采集不同的IDS系统产生的报警数据。

步骤2、不同的IDS系统产生的报警数据格式不同,若直接聚合分析将造成很大不便。基于此,必须对报警数据进行统一的标准化,方便后续的聚合处理。本实施例借鉴国际标准入侵检测消息交换格式DMEF(Intrusion Detection Message Exchange Format)来规范主机入侵检测系统HIDS(Host Intrusion Detection System)报警OSSEC格式。

步骤3、根据步骤1采集到的原始报警数据出发,采用内容合并、格式转换和数据过滤等方法来初步消除原始报警数据本身的缺陷,从中抽取能够用于聚合的主要属性并存储在数据库中,最后通过设置属性匹配固定时间阈值过滤的方法来减少重复报警数据的数量。其中,重复报警数据是每两条报警数据间除了时间属性之外其他属性内容均相同的报警数据。

步骤4、根据步骤3所得到的精简后的OSSEC报警数据,通过改进入侵检测系统报警数据的读取方式,以类别属性划分的方式达到每条报警数据升序逐层匹配的目的。

步骤5、根据步骤3所得到的逐层匹配后的OSSEC报警数据,计算各属性的相似度。

步骤6、根据步骤3所得到的逐层匹配的OSSEC报警数据,考虑到聚合关键取决于报警数据之间的全局相似度。在计算全局相似度的时候,需为每种报警属性设置一个权重W,用来衡量该属性在计算全局相似度中的重要性,通过客观的熵权计算方法计算每条报警数据的各个属性的权重值。

步骤7、根据步骤5和步骤6分别得到的OSSEC报警数据的各个属性相似度和权重,进行累乘加权计算得到每条报警数据的全局相似度。由于OSSEC收集到的大量报警数据中存在重复冗余数据,通过设置不同的期望值可以有效地去除一定的冗余达到进一步精简报警数据目的。

步骤8、验证所提出方法的有效性,还定义了误报率和检测率来作为评价系统检测性能的指标。

于本施例中,步骤1的子步骤如下:

步骤1-1、基于集群分布式思想,通过在OSSIM环境下部署ossec-agent1到ossec-agent4共四个数据采集节点,ossec-server作为服务端节点。实验整体采集环境架构拓扑图如图1所示。

步骤1-2、深入学习并利用OSSEC组件的相关报警规则,通过一系列的攻击实验,总共采集OSSEC报警数据150283条。基于主机的入侵检测设备OSSEC在收集报警数据时,每个文件按日期单独存储,同时,每个文件里数据是以时间发生的先后顺序增加的。图2是nssa-senor4机器上采集到的OSSEC报警数据在MySQL中对应的表。

步骤1-3、每一张OSSEC报警数据表尽管其内容不同,但大部分属性都相同。其字段内容主要属性包括:sid、cid、signature、signature_ren、signature_id、signature_rev、timestamp、unified_event_id、unified_event_ref、unified_ref_time、priority、classification、Rule_id、Description、User、Src_IP、Level等属性。图3是nssa-sensor3机器上采集到的OSSEC报警数据在MySQL中对应的某张具体表。

于本施例中,步骤2的子步骤如下:

步骤2-1、通过搭建入侵检测系统Snort并配合搭建PHP、HTML、Sendmail、MySQL、Analogi的环境来直接对采集到的OSSEC报警数据进行预先的查看和分析。

步骤2-2、系统搭建完成后,通过Analogi登录,将实时监控网络数据包,并通过数据库输出接口将入侵日志传送到MySQL数据库中,数据分析控制台则可以通过数据库接口读取数据,并显示在Analogi上,如图4所示。

并以每个OSSEC报警数据类别属性为分析基础,进一步细化得到的分类结果如表1所示。

表1原始OSSEC报警数据分类表

步骤2-3、从MySQL数据库将采集到的每条原始OSSEC报警数据借鉴IDMEF格式输出,每条OSSEC报警数据包括时间戳、主机用户名、源IP、描述信息、规则编号、类别、严重程度等级等7种属性构成的七元组。每个属性的含义如表2所示。

表2报警数据属性含义表

于本施例中,步骤3的子步骤:

步骤3-1、对需要进行内容合并和格式转换处理的OSSEC报警数据进行集合封装和参数定义。

具体地,因考虑到自身采集的原始OSSEC报警数据都是以每天日期信息标记分开存储,同时,数据文件里每条报警数据以6行内容换行隔开,在一定程度上造成了后续聚合处理艰难的问题。基于此,本实施例在做数据预处理时提出基于MapReduce的多个小文件合并、数据内容和格式转换算法。

步骤3-2、对需合并和转换处理的OSSEC原始报警数据进行集合封装和定义算法中用到的各个参数。

步骤3-3、然后,将/var/OSSEC/logs目录下的2017年1月份至7月份采集到的原始Ossec报警数据经过Hadoop平台下的MapReduce程序以正则表达式筛选的方式进行多个小文件合并处理得到alters_Jan2Jul.log,在一定程度上起到了方便后续聚合处理的目的。其中,需过滤排除该目录下的隐藏文件和非.log文件。

步骤3-4、其次,对整个文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一将加载到集合中。同时,因自身数据特点,在alters_Jan2Jul.log里每7行数据为一条OSSEC报警数据,基于此,以行号加1与7取模得到结果来作为控制每条数据划分的依据。

步骤3-5、最后,对合并后的log文件做属性的起始字符识别转换算法处理,将其按照时间升序输出并转换格式存储到alters_Jan2Jul.txt。

基于MapReduce的多个小文件合并算法,以及数据内容和格式转换算法的整个执行过程如图5所示。

其内容合并后的原始OSSEC报警数据图如图6所示。

经过多个小文件内容合并后的OSSEC报警是每7行为一条完整的数据,尽管内容排列整齐,但对于数据聚合处理分析存在一定的难度。基于此,进一步对其进行预处理操作,对合并后的log文件做属性的起始字符识别转换算法,将log文本发明件转换以txt文本发明件输出,并每一行代表一条OSSEC报警数据。格式转换后的原始OSSEC报警数据图如图7所示。

步骤3-6、属性匹配固定时间阈值预处理算法用于将格式转换后的OSSEC报警数据以逐一匹配属性的方式控制报警数据达到最精简的目的。

步骤3-7、首先,对合并和转换处理后的OSSEC原始报警数据进行集合封装定义。

步骤3-8、然后,对整个文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一将加载到集合中。

步骤3-9、其次,在排序后的数据集上移动一个60s的固定大小时间窗口,每次只检测timeDiff小于窗口内的报警数据。

步骤3-10、最后,一一匹配判断比较每条报警数据时间之外的属性是否满足过滤条件,对字段User、Src_IP、level和Rule_id采取逐个校验比较方式,这4个字段只要有差异,新接收的报警数据就会转入下一节点的验证过滤操作。当且仅当每个属性都满足过滤条件才可输出并存储,否则,视为不过滤预处理操作。

属性匹配固定时间阈值预处理流程如图8所示。

其中,为了衡量报警数据预处理的效果,实验分析中定义报警数据精简率来作为评价标准。假设原始报警数量为src_n个,精简后报警为dst_n个,其报警数据精简率公式如下:

ReduceRate用来反映聚合方法消除重复和冗余报警的效率,ReduceRate越大,表示精简越高,也就说明报警冗余去除的效果就越明显,提供给下一层数据聚合处理的数据源质量也就更高,精简前后各类别的报警数量和占比情况如图9所示。

得到,src_n为150283条,dst_n为31268条,总的报警精简率为79.19%。

于本施例中,步骤4的子步骤:

步骤4-1、首先,对精简后的OSSEC报警数据进行集合封装;

步骤4-2、然后,对整个OSSEC报警数据文本进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一将加载到集合中。

步骤4-3、其次,对每条报警数据的类别属性以首字母升序排列逐一比较,并循环迭代逐层判别,从而实现类别属性划分。

步骤4-4、最后,以指定格式进行保存输出。

OSSEC报警数据类别属性划分算法整个执行过程如图10所示。

类别属性划分的原始OSSEC报警数据如图11所示。

于本施例中,步骤5的子步骤:

步骤5-1、报警标识属性的相似度计算。其中,每两条OSSEC报警数据Rule_id,description,

User,Level如果相同,则相似度设为1,如果不相同,那么相似度为0。

步骤5-2、IP地址相似度的计算。对于IP地址的比较,采用无类别域间路由的格式进行分析,将每两条报警数据相同的二进制位个数r除以IP地址二进制位长度的值作为两个IP地址的相似度。计算公式设置如下:

其中,Simip(Alerti,Alertj)是报警数据的IP相似度值,Alerti和Alerti是报警数据。

步骤5-3、报警时间戳相似度的计算。将时间间隔Tinternal和预设的最小阈值tmin及最大阈值tmax进行比较,当时间间隔小于tmin则相似度为0,大于tmax则相似度为1,如果在tmin和tmax之间,则由公式计算得到。计算公式设置如下:

其中,Simtimestamp(Alerti,Alertj)是报警数据时间戳的相似度值,Alerti和Alerti是报警数据,Alert_singame是报警数据的名称属性。

于本施例中,步骤6的子步骤:

步骤6-1、选取权重计算方法。通常对于报警数据属性权重的确定计算方法,一般来说有两大类:一类是人为的主观判断来给对不同属性打分,比如基于一些专家的结论来进行打分、根据层次不同来进行分析、认为经验来进行判断等;另一类是客观方法,如熵权计算方法,主成分分析方法等。考虑到一般采用PCA需要数据比较难获取且存在相关及多重共线性问题,同时,它并不考虑因变量和自变量之间的关系,无法充分体现每个主成分的作用,因此本发明选用熵值法来确定各个指标的权重计算。

步骤6-2、选取权重计算工具MATLAB 2016a版本。

步骤6-3、各属性权重计算。在计算全局相似度的时候,需为每种报警属性设置一个权重W,用来衡量该属性在计算全局相似度中的重要性。通过MATLAB 2016计算得知,权重矩阵为[0.0120 0.0362 0.0125 0.1622 0.3692 0.4204]。

于本施例中,步骤7的子步骤:

步骤7-1、每条报警数据的全局相似度计算。结合步骤5得到的各个属性相似度和步骤6得到的各个属性权重,进行累乘加权计算。计算公式设置如下:

其中,Simsum(Alerti,Alerti+1)是报警数据的总相似度,i,j是计算属性权重时报警数据所在的行号,c是报警数据的属性所在的列号,Wc是报警数据各个属性的权重,Alert(i)attributes和Alert(j)attributes分别表示第i条和第j条报警数据的每个属性的集合,n是报警数据的条数。

步骤7-2、首先,对计算全局相似度后的OSSEC报警数据进行集合封装;

步骤7-3、然后,对整个OSSEC报警数据文件进行逐条顺序读取加载,若读取到最后一行则直接跳出循环,否则一一将加载到集合中。

步骤7-4、其次,读取指定的每条报警数据总相似度属性列的内容分别与期望阈值集合进行比较,并统计满足条件的报警条数。

步骤7-5、聚合函数计算。若全局相似度小于期望阈值,则统计满足此条件的报警数据,并可视为作为聚合所得到的报警数据结果。否则,则表明此条报警数据不是所期望的聚合范围。

OSSEC聚合函数整个执行过程如图12所示。

通过训练取期望值H在不同值时聚合效果对比,结果如图13所示。可以看出,在0.1≤H≤0.2时,有一个明显的上升趋势并且逐渐减少差距,在0.2≤H≤0.6时,两者聚合率对比变化不大基本保持稳定,且均低于50%,在0.6≤H≤0.8时,发生了一次大幅度的增长,聚合后的OSSEC报警数据明显增加,在0.8≤H≤0.9时两者聚合率趋于稳定。总而言之,无论在低的期望值还是高的期望值,本发明的方法都相对要优越常规的顺序聚合。同样,将期望值设为0.8,为后续的报警数据融合提供来源。

由此可见,在一定程度上本发明提出的方法从类别属性划分来计算报警数据属性相似度,相比常规手段的顺序聚合而言,更能使得聚合率提高并维持平稳。

于本施例中,步骤8的子步骤:

步骤8-1、根据以下规则对收集到的报警数据进行了标定。如果一条报警数据满足以下三个条件:(1)源IP地址符合模拟的攻击IP地址;(2)目的IP地址符合模拟攻击的受害机IP地址;(3)报警的时间戳在模拟攻击所发生的时间窗之内。则该条报警被标记为真报警,否则就被称为误报警。

步骤8-2、经标定后,数据集含有23236条真报警和8032条误报警。以70%随机抽取作为训练数据集,30%作为测试数据集。类似Pietraszek定义的反映报警处理性能的指标,给出了一个混合矩阵C,如表3所示,表中“+”代表真报警(攻击报警),“-”代表误报警。

表3混合矩阵C

步骤8-3、本发明为了验证所提出方法的有效性,还定义了误报率和检测率来作为评价系统检测性能的指标。基于此,定义如下的一组反映报警处理性能的指标。

系统检测率(TP)计算公式如下所示:

TP=C11+C12/(C11+C12+C21+C22)(6)

系统误报率(FP)计算公式如下所示:

FP=C21/(C21+C22)(7)

C11表示原标定报警数据是真报警(+),做检测算法后得到分类结果还是真报警(+)的数据条数的和。C12表示原标定报警数据是真报警(+),做检测算法后得到分类结果是误报警(-)的数据条数的和。C21表示原标定报警数据是误报警(-),做检测算法后得到分类结果是真报警(+)的数据条数的和。C22都表示原标定报警数据是误报警(-),做检测算法后得到分类结果还是误报警(+)的数据条数的和。

步骤8-4、使用SPSS里的KMeans树算法作为OSSEC报警数据检测系统的检测方法,系统分别采用本发明的聚合方法(简称方法1)和文献[基于多源报警日志的网络安全威胁态势感知关键技术研究]的聚合方法(简称方法2)进行检测性能比较。两者的系统检测率和误报率对比情况如表4所示。

表4系统检测率与误报率对比

由表4可知,方法1的检测率为88.92%,高出方法2的检测率10%左右,在一定程度上说明对真报警还是误报警的判定有着明显的作用,而且误报率也有所降低。

步骤8-5、同时,为了对比两种方法的运行效率,定义了系统检测平均运行时间(TA)如下所示:

TA=T/n (8)

其中,T为检测方法运行的总时间(ms),n为测试数据样本总数,两种方法的平均运行时间对比见表5所示。

表5平均运行时间对比

由表5实验得出,相比于方法2,方法1的系统检测平均运行时间略少,可以稍微加快系统检测运行效率。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

一种基于类别属性划分的OSSEC报警数据聚合方法专利购买费用说明

专利买卖交易资料

Q:办理专利转让的流程及所需资料

A:专利权人变更需要办理著录项目变更手续,有代理机构的,变更手续应当由代理机构办理。

1:专利变更应当使用专利局统一制作的“著录项目变更申报书”提出。

2:按规定缴纳著录项目变更手续费。

3:同时提交相关证明文件原件。

4:专利权转移的,变更后的专利权人委托新专利代理机构的,应当提交变更后的全体专利申请人签字或者盖章的委托书。

Q:专利著录项目变更费用如何缴交

A:(1)直接到国家知识产权局受理大厅收费窗口缴纳,(2)通过代办处缴纳,(3)通过邮局或者银行汇款,更多缴纳方式

Q:专利转让变更,多久能出结果

A:著录项目变更请求书递交后,一般1-2个月左右就会收到通知,国家知识产权局会下达《转让手续合格通知书》。

动态评分

0.0

没有评分数据
没有评价数据
×

打开微信,点击底部的“发现”

使用“扫一扫”即可将网页分享至朋友圈

×
复制
用户中心
我的足迹
我的收藏

您的购物车还是空的,您可以

  • 微信公众号

    微信公众号
在线留言
返回顶部