针对iec60870-5-101协议的安全防护方法及系统的制作方法_2

文档序号:9814264阅读:来源:国知局
对IEC60870-5-101协议在协议链路层和应用层进行了多级安全防护,可以有效地抵御针对采用IEC60870-5-101协议的工控设备或系统的多种攻击,确保采用IEC60870-5-101协议的各种工控设备和系统的保密性、完整性和可用性,有效地避免了传统的采用IEC60870-5-101协议的工控设备或系统不具备安全防范机制导致的安全风险。
[0040]图2是本发明另一实施方式的安全防护方法的流程图。如图2所示,在一些实施方式中,其中所述第一预设白名单为链路地址白名单。
[0041]S21:当所述外部访问请求不是完整的帧时,阻断所述外部访问请求;
[0042]S22:当所述外部访问请求为完整的帧时,提取所述外部访问请求包含的链路地址,根据所述链路地址白名单判断所述链路地址是否为允许访问的链路地址;
[0043]S23:若所述链路地址为允许访问的链路地址,确定所述外部访问请求的帧类型;
[0044]S24:否则,阻断所述外部访问请求。
[0045]本实施方式通过引入IEC60870-5-101协议帧的完整性检查,可以有效地避免采用非IEClOl协议报文持续向工控设备或系统装置发起通讯请求,导致工控设备和系统性能下降的情形。
[0046]此外,还可以在预设针对应用层的白名单,在应用层实现对外部请求的过滤。
[0047]图3为本发明又一实施方式的安全防护方法的流程图。如图3所示,在一些实施方式中,第二预设白名单包括应用功能白名单,所述应用功能白名单包括允许访问的应用功能对应的ASDU类型标识、传输原因码及信息对象地址范围。该方法包括:
[0048]S31:当所述外部访问请求为可变格式帧时,提取所述外部访问请求的ASDU类型标识、传输原因码和信息对象地址,根据所述应用功能白名单确定所述外部访问请求的应用功能是否为允许访问的应用功能;
[0049]S32:若所述外部访问请求的应用功能不在所述应用功能白名单定义的范围内,阻断所述外部访问请求;
[0050]S33:否则,判断所述外部访问请求的应用功能是否为控制功能。
[0051 ] 在IEC60870-5-101协议中,只有可变格式帧包括ASDU(应用服务数据单元),ASDU由数据单元标识和多个信息对象构成。其中,数据单元标识包括类型标识、可变结构限定词、传输原因和公共地址,信息对象包括信息对象地址、信息对象元素和信息对象时标。由于应用功能涉及ASDU类型、传输原因等多个内容的组合应用,因此,本实施方式结合IEClOl协议提供的应用传输功能,将IEClOl协议的传输功能按应用场景进行分类,例如划分成:站初始化功能、总召唤功能、分组召唤功能、电能量召唤功能、遥控功能、步位置调节功能、设定功能、参数设置功能、校时功能、事件传输功能、文件传输功能等等应用功能,并将这些功能与涉及ASDU类型的可能的传输原因组合等建立关联关系。针对某条传输链路,通过白名单中定义传输链路允许的“应用功能及其信息地址范围”,从而间接定义允许通过的ASDU类型、传输原因及信息对象。
[0052]本实施方式中通过将白名单分为链路地址白名单和应用功能白名单,并且分别在链路层和应用层对访问请求进行白名单过滤,进一步保证了整个工控系统网络的安全性与可靠性;由于采用了分组方式,将实际应用中常用的应用功能与通讯传输协议中的ASDU类型及传输原因建立了对应关系,并针对应用功能建立白名单,避免了传统的以ASDU类型、传输原因为单位设置过滤规则导致的易用性差、容易遗漏过滤规则、系统处理效率低等问题,可以有效地防止对工控设备或系统的可用性破坏,如非法更改装置地址、非法上传配置文件、非法下发控制操作命令等,从而保证了工控系统间通信的安全性。
[0053]图4是本发明另一实施方式的安全防护方法的流程图。如图4所示,其中第二预设白名单包括数据访问范围白名单和控制对象白名单,该方法包括:
[0054]S411:当所述外部访问请求的ASDU所属的应用功能是控制功能时,提取所述外部访问请求的控制功能对应的信息对象地址及控制值,根据所述控制对象白名单确定所述控制值是否在允许范围内;
[0055]S412:若所述控制值在允许范围内,将所述外部访问请求转发至到内部通讯端口 ;
[0056]S413:否则,阻断所述外部访问请求;
[0057]S421:当所述外部访问请求的ASDU所属的应用功能不是控制功能时,根据所述数据访问范围白名单确定所述外部访问请求的ASDU的信息对象地址是否在允许访问的范围内;
[0058]S422:若所述信息对象地址在允许访问的范围内,将所述外部访问请求转发至到内部通讯端口 ;
[0059]S423:否则,阻断所述外部访问请求。
[0060]本实施方式通过数据访问范围白名单过滤,可以有效地保护控制系统重要数据的机密,避免系统数据被非法获取,通过提取控制操作过程包含的控制对象地址及其控制值,并将控制值与对应的容许控制值的范围进行比对,可以有效地保护控制操作的合法性和正确性。
[0061]在一些实施方式中,在阻断所述外部访问请求后,生成系统日志记录和告警输出信号。
[0062]图5是本发明又一实施方式的安全防护方法的流程图。如图5所示,该方法包括以下步骤:
[0063]SlOl:从外部端口接收数据请求;
[0064]S102:按照IEClOl协议定义的帧结构对所述外部数据请求进行组包;
[0065]S103:检测所述外部数据请求是否组成完整帧;若是,执行步骤S104;否则执行步骤SI14;
[0066]S104:提取所述外部数据请求组成的帧包含的链路地址;
[0067]S105:根据链路地址白名单确定所述外部数据请求组成的帧包含的链路地址是否为允许访问的链路地址;若是,执行步骤S106,否则执行步骤S114;
[0068]S106:确定所述外部数据请求组成的帧是否包含ASDU;若包含,执行步骤S107,否则执行步骤SI 14;
[0069]S107:对比所述外部数据请求组成的帧中包含的ASDU的类型标识及传输原因与应用功能集中对应的ASDU类型及传输原因,得到所述外部数据请求组成的帧中的ASDU所属的应用功能;
[0070]S108:根据应用功能白名单确定所述外部数据请求组成的帧包含的ASDU所属的应用功能是否为允许访问的应用功能,若是,执行步骤S109,否则执行步骤S114;
[0071]S109:确定所述外部数据请求组成的帧包含的ASDU所属的应用功能是否为控制操作应用功能,若是,执行步骤SI 10,否则执行步骤SI 12;
[0072]SI 10:提取所述外部数据请求组成的帧包含的ASDU所属的控制操作应用功能对应的信息对象地址及控制值;
[0073]Sill:根据控制对象白名单确定步骤SllO中的控制值是否在允许操作范围内,若在允许范围内,执行步骤SI 13,否则执行步骤SI 14;
[0074]S112:根据数据访问范围白名单确定所述非控制操作应用功能的应用功能的信息对象地址是否在允许访问范围内,若在允许访问范围内,执行步骤S113,否则执行步骤S114;
[0075]S113:将所述外部数据请求组成的帧转发至内部通讯端口 ;
[0076]S114:阻断所述外部数据请求,生成系统日志记录和告警输出信号。
[0077]在上述实施方式之前
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1