没有合适的资源?快使用搜索试试~ 我知道了~
⃝⃝可在www.sciencedirect.com上在线ScienceDirectICTExpress 4(2018)1www.elsevier.com/locate/icte基于FPGA的IEC 61850工业网络入侵检测Junsik Kim,Jaehyun Park韩国仁川仁荷大学信息通信工程系,邮编:22212接收日期:2017年12月1日;接收日期:2018年1月7日;接受日期:2018年1月8日2018年2月1日在线发布摘要针对基于IEC 61850标准的变电站自动化工业网络,提出了一种基于FPGA的网络入侵检测系统该系统使用Shift-And算法检测IEC 61850消息中的恶意网络数据包为了在有限的FPGA内存中实现复杂的规则匹配模块,提出了一种特殊设计的规则匹配模块。为了评估其可行性,本文使用XilinxZynq-7030FPGA实现了一个包含265个正则表达式匹配模块的原型,并给出了其性能。c2018韩国通信信息科学研究所。出版服务由Elsevier B.V.这是一个开放获取的文章下CC BY-NC-ND许可证(http://creativecommons.org/licenses/by-nc-nd/4.0/)。关键词:网络入侵检测系统; IEC 61850;正则表达式;变电站自动化; FPGA1. 介绍变电站自动化系统中智能电气设备之间的通信在整个配电网的实时操作中起着重要作用[1,2]。考虑到电网的实时控制和监测,IEC 61850被提出,并被广泛用于变电站自动化[3,4]。尽管IEC 61850是实现智能电网等现代电力网络互操作性的关键要素,但由于IEC 61850消息的脆弱性,采用使用标准交换以太网的IEC 61850也会附带网络安全风险[5- 7 ]。为了降低这种网络安全风险,广泛采用通过分析网络数据包来保护计算机系统的网络入侵检测系统(NIDS)[8]。NIDS根据定义恶意数据包的通信模式的预定义规则,在接收到的网络数据包中区分恶意数据包。Snort和Suricata*通讯作者。电子邮件地址:jhyun@inha.ac.kr(J. Park)。同行评审由韩国通信信息科学研究所负责。https://doi.org/10.1016/j.icte.2018.01.002是使用最广泛的入侵检测软件,它利用用户定义的检测规则进行深度数据包检测。尽管这些基于软件的NIDS很灵活,但数据包检查是由软件执行的,处理速度取决于CPU核心的性能。 这意味着检测速度随着规则复杂度的增加而变慢。此外,IEC 61850网络的NIDS需要在理解物理基础设施之后进行专门设计,以确定观察到的通信模式是良性的还是恶意的[9,10]。在过去的几十年中,已经提出了几种基于FPGA的NIDS系统,以在实时控制环境中实现更高的性能,例如在变电站自动化中。在这样的系统中,可疑数据包过滤使用预定义的规则,通常写在正则表达式和FPGA处理后,被转换为有限状态机(FSM)。然而,实现大尺寸FSM通常需要FPGA的大量存储器块 为了提高内存使用效率,Hieu提出了一种将冗余状态合并为一个的结构[11],而Freire提出了一种使用Huffman编码的方法[12]。另一方面,Bando提出了一种避免重叠问题的方法[13]。之间2405-9595/c2018韩国通信信息科学研究所出版社:Elsevier B.V.这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。2J. Kim,J.园区/ICT Express 4(2018)1--|--在这些体系结构中,扩展的Shift-And算法(ESA)对于动态地重新配置模式(例如正则表达式匹配)是有用的。Kaneta使用FPGA实现了ESA [14,15]。然而,在它们的架构中,由于状态的最大数量取决于寄存器的长度,因此应用具有许多状态的正则表达式具有挑战性。此外,有限状态机的状态数迅速增加的约束重复的展开。 在一个实际的NIDS中,检测规则的几个重复使用,导致非常大量的状态。为了克服这一问题,本文提出了一种改进的扩展移位与结构与计数器模块。2. 相关工作2.1. 模式匹配方法正则表达式是指定单个模式字符串以匹配一组字符串的通用语言。 它主要用于NIDS软件中的字符搜索、DNA模式检测和深度数据包检测。表1总结了用于定义由基于FPGA的NIDS引擎检测的数据包模式的正则为了应用ESA [14],正则表达式应该被转换为非确定性有限自动机,如等式中定义的。(一).A=(Q,I,F,I)(1)其中Q是整个状态集,是正则表达式中的所有字符,I是开始状态,F是结束状态,是转换函数。转换函数确定下一个状态。当NFA接收到一个新的字符α时,下一个状态根据如等式2所示的转换函数来确定。(二)、D是根据输入字符和当前状态确定=(q,α,q′),q ∈ Q,α ∈ D {n},q′∈ D(q,α) . ( 二)NFA可以从一个状态移动到多个状态,因此多个状态可以同时处于活动状态。然而,为了应用Shift-And算法,NFA应该具有仅在一个方向上移动的属性。2.2. GOOSE模式示例IEC 61850标准使用通用面向对象变电站事件(GOOSE)消息用于变电站内的由于GOOSE消息被编码在以太网分组的应用协议数据单元(APDU)中,因此使用GOOSE消息的网络攻击是可能的例如,正则表达式RE=GOOSEID.{0,20}[\x50−\x58](3)可以检测具有TAG号的数据包,位于GOOSEID字符串后第21位的八位字节在80和88之间通过组合站的MAC地址,来自特定站的一系列GOOSE表1正则表达式描述。符号描述.匹配任何一个字符[,]这与在多个字符中选择一个并使用多个相同。可以用“-”符号指定范围(,)多个表达式可以绑定在一起。*零个或多个字符{m,n} m倍以上n倍以下?0或1次发生+不止一次|其中一个表2转换表:RE=GOOSE ID。{0, 20}[\x50-\x58]。位位置1 2 3 4 5 6 7 8 9初始化1 0 0 0 0 0 0 0接受0 0 0 0 0 0 0 1移动[D] 0 0 0 0 0 0 1 1 0移动[E] 0 0 0 0 1 0 0 1 0移动[G] 1 0 0 0 0 0 0 1 0移动[I] 0 0 0 0 0 1 0 1 0移动[O] 0 1 1 0 0 0 0 1 0移动[S] 0 0 0 1 0 0 0 1 0移动[x50-x58] 0 0 0 0 0 0 1 1移动[. ] 0 0 0 0 0 0 0 1 0重复[. ] 0 0 0 0 0 0 0 1 0开始0 0 0 0 0 0 1 0 0结束0 0 0 0 0 0 0 1 0空间0 0 0 0 0 0 1 1 0CR 0 0 0 0 0 0 0 1 0上面的正则表达式 如果要从具有特定MAC地址的设备发送具有标签号84的分组,则可以通过与预定义MAC地址进行比较来阻止具有未确认地址的分组。 表2示出了等式2中所示的GOOSE消息的示例的转换表。(三)、表中的项用于ESA的NFA转换函数,并且算法的操作在以下部分中描述。2.3. 扩展的Shift-And算法在本文中,Navarro提出的ESA用于处理正则表达式[14]。由于激活状态在ESA中由单个比特表示,因此可以通过移位操作来执行状态转换。因此,如果寄存器长度是w位,则可以检测到w个该算法的NFA是线性的,状态转移是逐步进行的。当B具有字长为m的存储器表中所有字符的转移条件时,输入字符α用作存储器的地址。 如果NFA的当前状态是D,并且新字符到达,则下一个状态Dn由等式(1)更新。(4).D n←((D 1)|0 m−1 1)&B [α].(四)由方程式(4),将当前状态D与移位操作后的B(q,α)进行比较以确定下一状态。模式匹配J. Kim,J.园区/ICT Express 4(2018)13=--+=关于我们图1.一、 系统框图。决定了D′10m−1 0或不。如等式(4)是一种精确的模式匹配,它不能应用于扩展正则表达式。因此,添加R、F、I和A以扩展正则表达式,并使用以下等式计算下一个状态DnD′←(D 1)|0 m−1 1)&B [α])|(D&R [α])(5)D f←D′|F(6)D n←D′|(A&((<$(D f−I))<$D f))。(七)当量(5)用于精确模式匹配和迭代表达式。等式(6)和(7)用于下列情况:,和m,n可以发生。R有一个所有字符重复条件的表,F指的是空字符串的结束位置I是起始位置,A是起始和结束之间的位置。然而,该算法有一个缺点,因为约束重复RE=α{m,n}被RE=(α?)n−mαm,(n≥m),状态数增加。3. 系统架构3.1. 总体系统结构所提出的系统的总体结构如图1所示。定义的规则通过主机接口存储在FPGA内部块存储器中。FPGA的主控制模块分析从主机接收的命令以执行预定操作。此外,更新模块更新块存储器和模式匹配模块的寄存器的信息。以太网报头解析器确定传入数据包的协议类型,将其传递给有效载荷解析器,然后有效载荷解析器将有效载荷数据传递给模式匹配模块。模式匹配模块使用ESA来检测与来自有效载荷的用户定义的规则相匹配的模式。特别是,如果协议类型是GOOSE或SV,则需要进行有效载荷检查,因为它 直接应用于以太网有效载荷,而无需对时间关键型操作进行加密。MAC地址比较器比较源和目的MAC无论是黑名单还是白名单。由于有多个模式匹配模块和MAC地址比较器,可以同时检查多个输入数据包,这有助于变电站控制应用的实时入侵检测。3.2. 模式匹配模块图2示出了执行Kaneta [15]提出的扩展移位与操作的模式匹配模块的结构。已经添加了几个信号以使用具有大量状态的NFA链入是来自前一个模块的信号,链出是激活下一个模块的信号主控制模块的En和Chain En信号分别用于使能模块和链信号Match Out信号将模式匹配结果传递给主控制模块。 STATE、MOVE和REPEAT分别对应于等式(1)中的D、B和R。(5). START、END和SPACE分别表示I、F和A,(6)和(7)。MOVE和REPEAT是块存储器,使用输入数据包作为地址。因此,当新的分组到达时,等式2的操作被执行(5)-(7)由组合电路在一个时钟中执行。当主控制模块从主机接收到新的正则表达式时,控制模块更新块存储器和寄存器此外,模式匹配模块包括一个计数器模块以支持受约束的重复。计数器模块具有存储受约束重复的位置的CR寄存器和存储范围值的两个存储器。如果在CR和STATE寄存器的AND运算之后,按位OR运算结果为1,则计数运算开始,AND运算的结果用作优先级编码器的输入,并从存储器加载到范围。如果受约束的重复的状态是连续的,例如REA 1,3 B 2,4,字符A的计数值暂时存储在寄存器中,不需初始化即可继续。此外,两个状态之间的差值被用作实际计数值。如果计数值在该范围内,则通过信号有效,并且当前NFA状态可以移动到下一个在前面的结构中,该示例有七个状态,4J. Kim,J.园区/ICT Express 4(2018)1图二. 模式匹配模块。展开,但是可以通过在所提出的结构中应用计数方案来将状态减少到两个状态。4. 实施结果该 架 构 使 用 XilinxVivado 2017.1 实 现 。 目 标 FPGA 是Zynq-7030 SoC 。 整 个 系 统 使 用 43 , 080 个 LUT 当 每 个MOVE和REPEAT命令使用0.5 BRAM,一个模式匹配模块使用一个BRAM。由于Zynq-7030的BRAM的大小限制,计数器模块的最大值和最小值存储在分布式RAM中。因此,与其他架构相比,所提出的结构可以比较137个正则表达式[15]。最大工作时钟为133.35 MHz,可应用于高达1.066 Gbps的网络。5. 结论针对基于IEC 61850标准的变电站自动化工业网络,提出了一种基于FPGA的网络入侵检测系统(NIDS)。该结构扩展了现有的Shift-And算法结构,以解决由约束重复引起的内存效率低下的问题。在所提出的系统中,展开的状态被替换为一个状态,通过增加一个约束的重复寄存器和一个优先级编码器,可以检测激活状态的计数操作。此外,在所提出的系统中,一个大的NFA可以分为几个NFA和单独处理,通过使用一个并行匹配模块。考虑到可行性评估,使用Xilinx Zynq-7030 FPGA实现了具有265个正则表达式匹配模块的原型54.81%的 LUT。致谢这 项工 作 得到 了 韩国 能源 技 术评 估 和规 划 研究 所(KETEP)和大韩民国贸易、工业能源部(MOTIE)的支持(第200920161510101820)。利益冲突作者声明,本文中不存在利益冲突。引用[1] B. Huang,X.白氏Z.周,加-地Cui,L.朱河,巴西-地Hu,Energyinformatics : Fundamentalsand standardization , ICT Express 3(2)(2017)76-80.[2] 新墨西哥州Lakhoua,关键基础设施的SCADA网络安全审查,J.COMPUT。Sci.控制系统10(1)(2017)15-18。[3] IEC,IEC标准61850变电站通信网络和系统,2003年。[4] L. Guo,J.Wu,G.Li,J.Li,J.Wu,智能变压器与ISO/IEC/IEEE 21451传感器的软件定义网络模型,ICT Express 3(2)(2017)67-71。[5] J. Hong,C.- C. Liu,M. Govindarasu,使用基于网络的多播消息进行变电站自动化的网络入侵检测,在:创新智能电网技术会议,ISGT,IEEE PES,2014年,pp. 一比五[6] M.T.A. Rashid,S. Yussof,Y.尤索夫河Ismail,对IEC61850变电站自动化系统网络的安全攻击的回顾,在:第六届信息技术和多媒体国际会议论文集,2014年,第100页。五比十[7] N. Moreira,E.Molina,J.Lázaro,E.Jacob,A.Astarloa,变电站自动化系统的网络安全,更新。坚持住。能源Rev. 54(补充C)(2016)1552-1562.[8] T. 克鲁兹湖Rosa,J. 普罗恩湖马格拉拉斯湾 奥比湖 L ev,J. 姜,P. Simoes,监控和数据采集系统的网络安全检测框架,IEEE Trans.印第安纳通知。 12(6)(2016)2236-2246.[9] Y. 杨 ,H.- Q. 许 湖, 加 - 地 Gao , Y. B. Yuan , K. McLaughlin, S.Sezer,基于IEC 61850的SCADA网络的多维入侵检测系统,IEEETrans. 动力输送32(2)(2017)1068J. Kim,J.园区/ICT Express 4(2018)15[10] 英国Premaratne,J. Samarabandu,T.S.锡杜河Beresh,J. C.谭,一种适用于IEC 61850自动化变电站的入侵检测系统,IEEETrans.PowerDelivv. 25(4)(2010)2376-2383。[11] T.T. Hieu , N.T.Tran , A memory efficient FPGA-based patternmatchingengine for stateful NIDS,in:Fifth International Conferenceon Ubiquitous and Future Networks,ICUFN,2013,pp.252-257[12] E. 弗莱雷湖Schnitman,W.奥利维拉,A.Duarte,Evaluation of thehuffmanencoding for memory optimization on hardware networkintrusion detection , in : III Brazilian Symposium on ComputingSystems Engineering,2013,pp.131比136[13] M. Bando,N.S.阿尔坦河Wei,X. Guo,H.J. Chao,Range hash forregularexpression pre-filtering , in : ACM/IEEE Symposium onArchitectures for Networking and Communications Systems ,ANCS,2010,pp.1-12号。[14] G.纳瓦罗,M。Raffinot,字符串中的灵活模式匹配:文本和生物序列的实用在线搜索算法,剑桥大学出版社,剑桥,2002年。[15] Y. Kaneta , S. Yoshizawa , S. ichi Minato , H. Arimura , Y.Miyanaga,用于大规模规则表达式匹配的动态可重构位并行架构,在:现场可编程技术国际会议,2010年,pp. 21比28
下载后可阅读完整内容,剩余1页未读,立即下载
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
- 我的内容管理 收起
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
会员权益专享
最新资源
- RTL8188FU-Linux-v5.7.4.2-36687.20200602.tar(20765).gz
- c++校园超市商品信息管理系统课程设计说明书(含源代码) (2).pdf
- 建筑供配电系统相关课件.pptx
- 企业管理规章制度及管理模式.doc
- vb打开摄像头.doc
- 云计算-可信计算中认证协议改进方案.pdf
- [详细完整版]单片机编程4.ppt
- c语言常用算法.pdf
- c++经典程序代码大全.pdf
- 单片机数字时钟资料.doc
- 11项目管理前沿1.0.pptx
- 基于ssm的“魅力”繁峙宣传网站的设计与实现论文.doc
- 智慧交通综合解决方案.pptx
- 建筑防潮设计-PowerPointPresentati.pptx
- SPC统计过程控制程序.pptx
- SPC统计方法基础知识.pptx
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功