一种电力二次系统僵尸网络的检测方法技术方案

技术编号:13771450 阅读:136 留言:0更新日期:2016-09-29 16:15
本发明专利技术公开一种电力二次系统僵尸网络的检测方法,抓包模块抓包并时序化报文,协议识别模块解析报文协议并按预设的白名单匹配协议,组流模块对报文按五元组组流生成流记录,流序列拼装模块将流记录按规则序列化成流序列,流序列特征提取模块提取流序列特征并生成僵尸特征库,特征匹配模块判断待测流序列的特征是否符合僵尸特征库中的某种僵尸网络。此种检测方法可降低计算资源的消耗,具有良好的适应性和检测准确率。

【技术实现步骤摘要】

本专利技术属于电力系统自动化通信技术和网络安全
,特别涉及一种电力系统网络分析仪和僵尸网络检测技术。
技术介绍
僵尸网络是指通过各种手段在多台设备中植入恶意程序,使僵尸控制者能相对方便和集中地控制这些设备,向这些受控制的设备发布各种指令进行相应恶意活动的攻击网络。随着全球电力系统和互联网技术的高速发展,电力二次系统的规模和复杂性越来越高,智能化设备和以太网通信的普及在带来更加丰富功能的同时,也为僵尸网络的部署和传播创造了有利的条件。僵尸网络检测方法主要分为两种,第一种基于分析可疑二进制可执行文件,这种方法一般是通过蜜罐捕获可疑二进制文件,分析攻击记录和活动记录,发现并摧毁僵尸网络,这种方法分析周期长,消耗资源大,实时性差;第二种基于分析网络流,通过深度包检测方法分析网络报文的字段特征或者是分析流量的行为特征与关联特征,从而找出僵尸流量与正常流量的差异性,以此发现僵尸网络,但由于网络流量的复杂性,这种方法的准确性相对较低。现有的广域网中的僵尸网络检测方法对于电力二次网络的僵尸网络检测并没有针对性,电力二次系统中使用的网络协议相对较为固定,以站控层网络为例,通常是103、61850、DNP,少数情况下会有网络形式的101和104,除此之外的所有协议报文都可以认为是非常规协议,都可能由僵尸程序产生,所以可以用协议识别的方法检测僵尸网络。但当僵尸程序使用103、61850等规约进行传播和活动时,协议识别方法将失效,此时需要具有更广泛的应用范围的流量行为分析方法补充检测,但流量行为分析方法涉及大量的计算,需要消耗相当大的CPU和内存资源。因此需要一种能针对电力二次系统的特点,将协议识别方法、流量行为分析方法相结合,在大大降低计算资源消耗的基础上也拥有良好的适应性和检测准确率的僵尸网络检测手段,本案由此产生。
技术实现思路
本专利技术的目的,在于提供一种电力二次系统僵尸网络的检测方法,其可降低计算资源的消耗,具有良好的适应性和检测准确率。为了达成上述目的,本专利技术的解决方案是:一种电力二次系统僵尸网络的检测方法,包括如下步骤:步骤一:抓包模块将僵尸恶意代码产生的报文时序化后,输出至组流模块;步骤二:组流模块对输入报文按协议、源端口、目的端口、源IP和目的IP组流,得到流记录集合,每条流记录至少包含该流的流开始时间、流结束时间、报文总数及字节总数,流记录集合输出至流序列拼装模块;步骤三:流序列拼装模块将流记录集合中的每条流记录拼装成流序列,输出至流序列特征提取模块;步骤四:流序列特征提取模块提取每个流序列的平均流时间间隔、平均流持续时间和平均流字节数;步骤五:流序列特征提取模块对流序列进行01序列化,使用循环自相关方法计算01序列的最显著频率,并计算01序列的能量谱密度函数的最显著频率;步骤六:流序列特征提取模块使用X-means聚类算法对平均流时间间隔、平均流持续时间、平均流字节数、01序列的最显著频率和能量谱密度函数的最显著频率这五个流序列特征分别聚类,并计算每个类别的均值、标准差和聚类质量;步骤七:循环执行步骤一到步骤六,流序列特征提取模块输出各个僵尸恶意代码的流量指纹,包含平均流时间间隔、平均流持续时间、平均流字节数、01序列的最显著频率、能量谱密度函数的最显著频率这五个流序列特征的类别均值、类别标准差、聚类质量以及特征匹配个数阈值和特征相似度得分阈值,使用预设步长自动调整特征匹配个数阈值和特征相似度得分阈值,使总的误报率和漏报率在调整范围内达到最小值;步骤八:抓包模块接收待分析报文做为输入,时序化后输出至协议识别模块;步骤九:协议识别模块将待分析报文输出至组流模块组流,按照步骤二到步骤五处理后,将生成的待分析流序列特征输入至特征匹配模块;步骤十:特征匹配模块比对待分析流序列特征与“流量指纹”库,若特征匹配个数超过特征匹配个数阈值,且特征相似度得分超过特征相似度得分阈值,则
将待分析流序列处理为该僵尸网络流序列,若符合多条指纹,则将特征相似度得分最大的流序列处理为该僵尸网络流序列,记录并产生告警。上述步骤一的详细内容是:收集已知僵尸恶意代码样本,在实验环境中逐个部署恶意代码样本,实验环境模拟电力二次系统网络结构,提取特征时,每次部署一种,任由其运行和传播,经过足够长时间后,记录网络中所有报文,并进行时序化后,输出至组流模块。上述步骤三中,将流记录拼装成流序列的方法是:将流记录按照协议、源IP、目的IP及目的端口拼装成流序列,协议、源IP、目的IP及目的端口相同的流记录按时间顺序排列成一条流序列。上述步骤五中,对流序列进行01序列化的过程是:指用一个较小的时间间隔t分割一个流序列,设流序列总持续时间为T,T=Nt,N为正整数,在一个t内,若有流开始,则置为1,否则置0,得到一个长度为N的01序列。上述步骤九中,在流序列特征检测之前,先用协议识别模块进行协议白名单的检测,按照协议结构解析输入报文,与预定义白名单中的协议比较,若不属于白名单,则处理为属于异常报文,记录并产生告警,若属于白名单,则将待分析报文输出至组流模块组流。采用上述方案后,本专利技术的有益效果是:(1)针对电力二次网络的特点,即电力二次系统中使用的网络协议相对较为固定,以站控层网络为例,通常是103、61850、DNP,少数情况下会有网络形式101和104,除此之外的所有协议报文都可以认为是非常规协议,都可能由僵尸程序产生,因此使用协议识别的方法,在检测程序中预先配置协议白名单,可以有效的检测僵尸网络。(2)当僵尸程序使用103、61850等规约进行传播和活动时,协议识别方法将失效,所以流量行为分析方法具有更广泛的应用范围,但流量行为分析方法涉及大量的计算,需要消耗相当大的CPU和内存资源,针对电力二次系统的特点,本专利技术使用了协议识别方法和基于流序列特征的行为分析方法相结合的手段,在大大降低计算资源的消耗的基础上也拥有良好的适应性和检测准确率。(3)本专利技术在描述流序列周期性时,使用循环自相关最显著频率和能量谱密度最显著频率相结合的手段来描述,与其他方法如功率谱密度相比,具有计算量小,资源消耗低的优点。(4)本专利技术所述的检测程序集成于电力二次系统中已有设备网络分析仪中,不需要添加新设备,也不需要改动现有网络架构,有利于具体实施。附图说明图1是本专利技术各模块的整体架构图;图2是本专利技术中僵尸流序列特征指纹的建立过程示意图;图3是本专利技术对站控层报文镜像的检测过程示意图。具体实施方式以下将结合附图,对本专利技术的技术方案进行详细说明。本专利技术提供一种电力二次系统僵尸网络的检测方法,图1描述了本专利技术各模块的整体架构,由六个模块组成,分别是抓包模块、协议识别模块、组流模块、流序列拼装模块、流序列特征提取模块和特征匹配模块,其中,抓包模块抓包并时序化报文,协议识别模块解析报文协议并按预设的白名单匹配协议,组流模块对报文按五元组组流生成流记录,流序列拼装模块将流记录按规则序列化成流序列,流序列特征提取模块提取流序列特征并生成僵尸特征库,特征匹配模块判断待测流序列的特征是否符合僵尸特征库中的某种僵尸网络。图2描述了本专利技术的僵尸流序列特征指纹的建立过程,各个僵尸恶意代码的“流量指纹”由平均流时间间隔、平均流持续时间、平均流字节数、循环自相关最显著频率f1、能量本文档来自技高网
...

【技术保护点】
一种电力二次系统僵尸网络的检测方法,其特征在于包括如下步骤:步骤一:抓包模块将僵尸恶意代码产生的报文时序化后,输出至组流模块;步骤二:组流模块对输入报文按协议、源端口、目的端口、源IP和目的IP组流,得到流记录集合,每条流记录至少包含该流的流开始时间、流结束时间、报文总数及字节总数,流记录集合输出至流序列拼装模块;步骤三:流序列拼装模块将流记录集合中的每条流记录拼装成流序列,输出至流序列特征提取模块;步骤四:流序列特征提取模块提取每个流序列的平均流时间间隔、平均流持续时间和平均流字节数;步骤五:流序列特征提取模块对流序列进行01序列化,使用循环自相关方法计算01序列的最显著频率,并计算01序列的能量谱密度函数的最显著频率;步骤六:流序列特征提取模块使用X‑means聚类算法对平均流时间间隔、平均流持续时间、平均流字节数、01序列的最显著频率和能量谱密度函数的最显著频率这五个流序列特征分别聚类,并计算每个类别的均值、标准差和聚类质量;步骤七:循环执行步骤一到步骤六,流序列特征提取模块输出各个僵尸恶意代码的流量指纹,包含平均流时间间隔、平均流持续时间、平均流字节数、01序列的最显著频率、能量谱密度函数的最显著频率这五个流序列特征的类别均值、类别标准差、聚类质量以及特征匹配个数阈值和特征相似度得分阈值,使用预设步长自动调整特征匹配个数阈值和特征相似度得分阈值,使总的误报率和漏报率在调整范围内达到最小值;步骤八:抓包模块接收待分析报文做为输入,时序化后输出至协议识别模块;步骤九:协议识别模块将待分析报文输出至组流模块组流,按照步骤二到步骤五处理后,将生成的待分析流序列特征输入至特征匹配模块;步骤十:特征匹配模块比对待分析流序列特征与“流量指纹”库,若特征匹配个数超过特征匹配个数阈值,且特征相似度得分超过特征相似度得分阈值,则将待分析流序列处理为该僵尸网络流序列,若符合多条指纹,则将特征相似度得分最大的流序列处理为该僵尸网络流序列,记录并产生告警。...

【技术特征摘要】
1.一种电力二次系统僵尸网络的检测方法,其特征在于包括如下步骤:步骤一:抓包模块将僵尸恶意代码产生的报文时序化后,输出至组流模块;步骤二:组流模块对输入报文按协议、源端口、目的端口、源IP和目的IP组流,得到流记录集合,每条流记录至少包含该流的流开始时间、流结束时间、报文总数及字节总数,流记录集合输出至流序列拼装模块;步骤三:流序列拼装模块将流记录集合中的每条流记录拼装成流序列,输出至流序列特征提取模块;步骤四:流序列特征提取模块提取每个流序列的平均流时间间隔、平均流持续时间和平均流字节数;步骤五:流序列特征提取模块对流序列进行01序列化,使用循环自相关方法计算01序列的最显著频率,并计算01序列的能量谱密度函数的最显著频率;步骤六:流序列特征提取模块使用X-means聚类算法对平均流时间间隔、平均流持续时间、平均流字节数、01序列的最显著频率和能量谱密度函数的最显著频率这五个流序列特征分别聚类,并计算每个类别的均值、标准差和聚类质量;步骤七:循环执行步骤一到步骤六,流序列特征提取模块输出各个僵尸恶意代码的流量指纹,包含平均流时间间隔、平均流持续时间、平均流字节数、01序列的最显著频率、能量谱密度函数的最显著频率这五个流序列特征的类别均值、类别标准差、聚类质量以及特征匹配个数阈值和特征相似度得分阈值,使用预设步长自动调整特征匹配个数阈值和特征相似度得分阈值,使总的误报率和漏报率在调整范围内达到最小值;步骤八:抓包模块接收待分析报文做为输入,时序化后输出至协议识别模块;步骤九:协议识别模块将待分析报文输出至组流模块组流,按照步骤二到步骤五处理后,将生成的待分析流序列特征输入至特征...

【专利技术属性】
技术研发人员:张阳胡绍谦汤震宇
申请(专利权)人:南京南瑞继保电气有限公司南京南瑞继保工程技术有限公司
类型:发明
国别省市:江苏;32

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

1