一种基于Snort的电力物联网入侵检测方法与流程

文档序号:35140730发布日期:2023-08-17 15:59阅读:62来源:国知局
一种基于Snort的电力物联网入侵检测方法与流程

本发明属于物联网安全领域,具体涉及一种基于snort的电力物联网入侵检测方法。


背景技术:

1、随着分布式能源的不断接入、电力系统环境日益复杂,现有的电力物联网系统中动态分布着海量数据,而电力系统中的信息具有安全级别高、分布广和实用性强的特点,网络的开放性和共享性会对电力系统造成一定的威胁。例如电力系统会受到ddos攻击、apt攻击、漏洞、恶意软件等类型的攻击,这些攻击会带来丢失数据等危险。物联网网络层建立在现有通信网和互联网的基础上实现感知网与通信网的结合,主要用于可靠地接受来自感知层的数据并根据应用需求进行不同的处理,入侵检测技术能实时检测到物联网系统各层是不是受到了非法入侵。现有的基于误用检测方法的snort入侵检测系统依赖预先建立攻击规则库进行检测,无法检测未知的攻击,而随着各类新系统等的产生,新类型的攻击方法在快速增长中,所以该方法不适用;而且攻击规则库的往往需要专业人员的参与才能完成,这就意味算法本身不能自身适应环境的改变,即使是最简单的攻击行为,只要稍作改变,系统就会对其无能为力,更不具备检测出新型攻击的能力。电网内部传输的数据越来越丰富,数据量也越来越大,入侵检测系统所要检测的数据急剧增多,现有的基于snort的网络流量攻击检测技术受snort本身轻量级限制,其对于攻击行为采取的策略是先进行检测若不是则不做反应,若检测出攻击则对其做出响应处理措施,这样一来,系统检测的速度就会大大影响系统对攻击行为响应速度。当入侵检测系统面对海量数据量时,系统如何快速检测并对攻击行为快速响应成为入侵检测中需要考虑的一个问题,不善于处理大量数据。

2、基于误用检测的snort入侵系统中包含六个基本模块:数据包嗅探器、数据包解码器、预处理器、检测引擎、攻击规则库及结果输出模块。此系统工作原理就是先利用网络抓包工具在网络上抓取网络数据包,接下来将获取的网络数据包进行加工处理从中提取出特征属性信息,然后将其与攻击规则库中的规则进行匹配,若匹配成功,则意味着有攻击产生,那么产生报警信息。这种检测系统的优点是可以检测已知攻击类型,且实现简单,但对新攻击却不能发挥作用。另外,由于这种检测依赖攻击规则库,若规则库规则越来越多,系统负担过重,检测速度慢,就可能出现漏报。


技术实现思路

1、本发明所为了解决背景技术中存在的技术问题,目的在于提供了一种基于snort的电力物联网入侵检测方法,实现电力系统物联网中网络层的入侵检测,提高入侵检测中数据处理的速度并扩展可检测识别的范围,提高电网运行安全性并为物联网的正常运行保驾护航。

2、为了解决技术问题,本发明的技术方案是:

3、一种基于snort的电力物联网入侵检测方法,所述方法包括:

4、使用聚类分析模块将预处理后的数据分为两类,第一类为与未知数据及入侵攻击具有明显区别特征的大部分正常数据,第二类为入侵攻击数据、未知数据及与此两者特征相似的小部分正常数据;

5、利用snort自带的检测引擎中的匹配算法进行数据的关联匹配,将从聚类分析模块传递过来的小部分正常数据、入侵攻击数据及未知数据与规则数据库中预设的攻击规则进行模式匹配;

6、利用判别阈值对数据进行匹配结果判别,若匹配成功,则判断数据为已知攻击,将其报警信息传递给输出模块进行处理;若匹配不成功,则将数据送往关联挖掘模块;

7、将检测引擎中筛出的非已知攻击类数据与攻击规则库中的数据进行关联性分析处理,通过检测两者数据中存在的关联关系来判定是否存在新的攻击类型,若存在,将关联挖掘模块筛选得到的新入侵攻击数据放入攻击规则库中,方便后续检测引擎检测到相似攻击时能够进行报警。

8、进一步,所述方法还包括:

9、通过snort系统本身带有的数据包嗅探器在电力系统物联网的网络层抓取网络数据包;

10、将抓取的网络数据包送到snort中数据包解码器进行解码,将捕获的数据包解码成snort识别的统一的格式,即得到解码后的数据包;

11、对解码后的数据包利用snort内部预处理器中的插件对数据进行预处理,得到预处理后的数据。

12、进一步,对解码后的数据包利用snort内部预处理器中的插件对数据进行预处理,包括:对能分片的数据包进行重新组装、处理明显的错误,最终得到的数据为适用于检测引擎使用的形式。

13、进一步,使用聚类分析模块将所述预处理后的数据分为两类,第一类为与未知数据及入侵攻击具有明显区别特征的大部分正常数据,第二类为入侵攻击数据、未知数据及与此两者特征相似的小部分正常数据,具体包括:

14、对预处理后的数据进行标准化处理,计算每个特征属性的平均值及平均绝对误差,并对每条数据记录进行标准化度量;

15、将标准化处理后的数据作为总数为n的数据对象,根据具体使用需求,挑选出每个数据对象含有的特征属性,并确定需要聚类的个数;

16、通过随机函数确定k个初始聚类中心,计算每个数据对象到各个聚类中心的欧式距离,通过比较距离值的大小将数据对象划分到距离最小的聚类中;

17、计算每个类的质心,并将它们作为再次聚类的初始聚类中心;

18、将聚类中心与上一次的聚类中心进行对比,当聚类中心与前次相同时,将聚类中心范围内的数值进行聚类结果输出并保存到数据库,当聚类中心与前次不同时,继续调整并生成新的聚类中心,即重复上述步骤。

19、进一步,将检测引擎中筛出的非已知攻击类数据与攻击规则库中的数据进行关联性分析处理,通过检测两者数据中存在的关联关系来判定是否存在新的攻击类型,具体包括:

20、在关联分析模块中输入全部数据集合、构建数据集合区,并设置支持度阈值a;

21、计算数据集合区中k项集的支持度,通过枝剪过滤掉不满足最小支持度阈值a的项集,得到频繁k项集;

22、通过全连接或并操作获取k+1项集,计算k+1项集的支持度,并将k+1项集移入数据集合区,令k=k+1;

23、重复计算数据集合区中k项集的支持度;

24、当不存在k+1项集时即满足迭代终止条件,而上次迭代的频繁k项集便是最终项集,同样从数据集中筛选建立的最终关联性攻击性数据集。

25、进一步,将由关联挖掘模块筛选得到的新入侵攻击数据放入攻击规则库中,便于后续检测引擎检测到相似攻击时能够进行报警,具体包括:

26、将关联性攻击数据中与snort规则头中相关的项放在一起,作为snort规则的头部部分;

27、将关联性攻击数据中和snort规则选项相关的项目放在一起,作为规则选项部分;

28、将规则头部部分和规则选项部分二者进行合并,然后形成snort规则,再将其添加到snort规则库中。

29、进一步,根据对输出数据的格式需求,选择相应的snort输出模块插件,此时系统能够对检测到的攻击型数据按照需求的格式进行报警并记录到日志中。

30、与现有技术相比,本发明的优点在于:

31、本发明提供一种基于snort的电力物联网入侵检测方法,所述方法包括:通过snort系统本身带有的数据包嗅探器在电力系统物联网的网络层抓取网络数据包;将捕获的数据包送到snort中数据包解码器进行解码,将捕获的数据包解码成snort认识的统一的格式;对解码后的数据利用snort内部预处理器中的插件对数据进行预处理,包括对能分片的数据包进行重新组装,处理一些明显的错误等,使最终得到的数据为适用于检测引擎使用的形式;使用聚类分析模块将数据分为两类,第一类为与未知数据及入侵攻击具有明显区别特征的大部分正常数据,第二类为入侵攻击数据、未知数据及与此两者特征相似的小部分正常数据;利用snort自带的检测引擎中的匹配算法bmhs4c算法进行数据的关联匹配,将从聚类分析模块传递过来的小部分正常数据、侵入攻击及未知数据与规则数据库中的攻击规则进行模式匹配;利用判别阈值对数据进行匹配结果判别,若匹配成功,则判断数据为已知攻击,将其报警信息传递给输出模块进行处理;若匹配不成功,则将数据送往关联挖掘模块;将检测引擎中筛出的非已知攻击类数据与攻击规则库中的数据进行关联性分析处理,通过检测两者数据中存在的关联关系来判定是否存在新的攻击类型;将由关联挖掘模块筛选得到的新入侵攻击数据放入攻击规则库中,方便后续检测引擎检测到相似攻击时能够进行报警;根据对输出数据的格式需求,选择相应的snort输出模块插件,此时系统能够对检测到的攻击型数据按照需求的格式进行报警并记录到日志中。此方法合理可行。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1