一种基于Modbus协议的工业控制系统资产及威胁识别方法与流程

文档序号:36739649发布日期:2024-01-16 12:55阅读:41来源:国知局
一种基于Modbus协议的工业控制系统资产及威胁识别方法与流程

本发明涉及工业网络安全监测,尤其涉及一种基于modbus协议的工业控制系统资产及威胁识别方法。


背景技术:

1、由于工业控制系统以及它们的通信协议在设计之初几乎没有考虑过网络以及通信安全的问题,所以导致许多工业控制系统极其脆弱,尤其是暴露在公网中的设备,面临着日益严重的攻击威胁。由于工业控制系统通常应用在关系国计民生的重点行业领域,一旦遭到破坏,造成的影响和损失将非常大。因此工业控制系统应当按照网络安全等级保护制度的要求参加等级保护测评。其中最重要的就是风险评估工作,而资产识别和威胁识别作为风险评估过程的核心模块,其方法直接决定风险评估结果的合理性和有效性。

2、由于国内网络环境相对封闭并且工业控制领域入门难度较高,并且不能在真实的工业生产环境中进行资产及威胁识别。同时相较于设备安全性,使用者往往更关注工控设备的可用性、稳定性以及实时性。一般的资产识别方法较多依赖各类测试工具,其中资产识别方法基本通过发送特定的数据包,之后针对返回的数据包进行指纹识别。这些方法通过大量发送数据包可能影响工业控制系统的网络稳定性,从而对工业控制系统的稳定性及实时性带来一定影响。

3、因此需要提供一种不影响工业控制设备可用性、稳定性以及实时性的工业控制系统资产及威胁识别方法。


技术实现思路

1、本发明的目的在于:针对现有技术的不足,现提出一种通过监测modbus流量数据来识别和提取工业控制系统中的资产信息,实现在不影响工业控制系统实时性、可用性的情况下对工业系统资产进行准确识别,同时通过流量监测、分析也可对工业控制系统中的威胁进行识别的方法,不主动发送报文,不主动进行任何探测,只是收集网络中的数据包,对数据包中新增的modbus设备进行捕捉和分析,并及时判断和处理,提高工控系统的稳定性和安全性。

2、本发明的技术方案如下:

3、本发明公开了一种基于modbus协议的工业控制系统资产及威胁识别方法,包括如下具体步骤:

4、步骤一、构建四个数据结构,包括iqueue、tqueue、ireq和idevice;

5、步骤二、捕获工业控制系统中传输的数据包,判断收集到的数据包是不是modbus数据包,若是,则将该modbus数据包加入iqueue队列;

6、步骤三、对步骤二中的iqueue队列中的modbus数据包按先进先出的顺序进行检查和分析,依次得到每个modbus数据包的tcp/ip消息报头中的关键参数;

7、步骤四、对modbus数据包进行匹配,区分是请求消息还是响应消息,并根据步骤三中的关键参数计算哈希值,若为请求消息则将计算得到的哈希值存储到ireq中,若为响应消息则在判断事务有效后将键值对{ireq[a],i}存入tqueue中,其中ireq[a]为步骤三中的关键参数计算的哈希值,i为完整的modbus数据包;

8、步骤五、依次对tqueue中的信息进行处理,若为idevice中不存在的设备,则将新增modbus设备相关的条目添加到idevice中;

9、步骤六、监测网络中新增modbus设备的信息,根据步骤五中记录的新增modbus设备进行威胁识别,并进行日志记录。

10、以上方法,通过数据包收集模块在不影响工控系统实时性以及可用性的情况下捕获工业控制系统中传输的数据包,并且通过收集到的数据包进行modbus数据包,通过对modbus数据包的检查以及分析,来识别和提取工业控制系统中的资产信息,同时通过新增的modbus设备信息的趋势变化来判断是否存在恶意攻击等异常行为,并进行日志记录,进一步实现系统监控、设备故障排除、检测系统异常和网络攻击复现;通过数据包收集以及对数据包信息利用三个数据结构进行存储、分析,方便后续资产识别以及威胁识别的分析和记录,上述六个步骤实现了对工控系统资产及威胁的识别,不主动发送数据包,进一步保证了工控系统的稳定性,通过已识别出的资产清单对短时间内突然出现的modbus设备进行威胁识别,当出现威胁时及时阻断,提高了工控系统威胁识别的及时性并降低威胁可能带来的损害。

11、进一步地,所述iqueue是一个先进的数据先出,后进的数据后出(first in,firstout:fifo)的队列,用于存储数据包收集模块采集到的,未处理的modbus数据包;

12、tqueue是一个临时性数据结构,也是先进的数据先出,后进的数据后出的队列,用于存储键值对{ireq[a],i};

13、ireq是一个哈希表,用于存储等待处理的modbus数据包,其存储的哈希值根据modbus消息队列中每个modbus数据包的关键参数包括从设备ip、主设备ip、从设备端口号、主设备端口号和事务id进行计算得到;

14、idevice是一个哈希表,用于存储与特定modbus设备相关的对象,其存储的哈希值根据modbus消息队列中每个modbus数据包的关键参数包括从设备ip、从设备mac地址和单元id(unitid)进行计算得到。

15、以上方法,通过构建三个关键的数据结构,在三个不同算法中用这三个关键的数据结构存储相应的modbus数据包以及modbus设备相关的对象。

16、进一步地,所述步骤三中,所述步骤三中,通过检查modbus数据包结构得到tcp/ip消息报头中的关键参数,modbus数据包中的tcp/ip消息报头中的关键参数始终包含从设备信息,modbus事务检查模块分析出的结果主要集中在从设备。

17、进一步地,所述步骤四中,若是请求消息,则判断是否已经存在相同请求,若存在,则进行提示并记录日志;若不存在,则将该请求消息的关键参数计算出哈希值存入ireq。

18、进一步地,所述步骤四中,若是响应消息,则判断是否有匹配请求,若没有,则进行提示并记录日志;若有,则进一步判断事务是否有效,若有效,则将响应消息计算出的哈希值和响应消息加入临时数据结构tqueue,并令该哈希值为空,表示该事务已经处理,若无效,则进行提示并记录日志。

19、进一步地,只有请求消息会存储在ireq中,没有匹配请求的响应消息将被立即记录以指示异常,并且ireq保持不变;若收到并验证了匹配的响应,则会向临时数据结构tqueue中添加一个条目,并从ireq中删除该请求;若未验证匹配的响应,则会生成一个日志条目,并且请求消息将保留在ireq中。

20、进一步地,所述步骤五中tqueue中的信息处理方法为增量映射算法,首先判断是否涉及新增modbus设备,包括是否包含主设备信息、是否包含功能码信息和是否包含功能参数信息。

21、进一步地,所述增量映射算法按顺序对是否包含主设备信息、是否包含功能码信息和是否包含功能参数信息进行判断,三个信息的判断相互独立,只要判断为是,则直接将该信息加入idevice中。

22、以上方法,由于scada网络中的消息往往遵循重复的、可预测的通信模式,且算法3中采用增量映射算法。因此在大多数情况下,新增信息的速率会随时间增加而降低,当设备信息及网络流量趋于稳定后,在相对长的时间段内可能不会添加新信息。当短期内信息采集趋势产生突然变化时,即可能存在恶意攻击等异常活动。此时,对威胁进行识别,并进行日志记录。这些日志可用于系统监控、设备故障排除、检测系统异常和网络攻击复现。

23、进一步地,所述步骤六中威胁识别的步骤为:

24、根据idevice中新增modbus设备条目中的资产ip判断是否是资产识别列表中不存在的从设备,若是,则查看该从设备ip、对应的操作系统类型、开放的端口、开放的服务以及承载的业务,并进一步根据这些信息判断是否为工控系统内的合法资产,若判断为是工控系统内的合法资产,则将该从设备加入资产列表当中,退出威胁识别程序;若否,则分析并记录该从设备的功能码及子功能码,并记录日志,显示出现新的设备且新的设备出现异常操作,立即封锁ip,提示管理员进行处理;

25、根据未被记录在idevice中的新增modbus设备,判断是否采用私有加密协议进行加密,若是,则记录日志,显示出现新的设备且新的设备出现异常操作,立即封锁ip,提示管理员进行处理;若否,则查看设备ip、对应的操作系统类型和开放的端口,通过端口判断是否为非常用的大端口号端口,若判断为非常用的大端口号端口,则记录日志,显示出现新的设备且新的设备出现异常操作,立即封锁ip,提示管理员进行处理;若判断不是非常用的大端口号端口,则进一步地查看设备开放的服务和承载的业务,判断是否为工控系统中不常用业务或无关业务,若为否,则退出威胁识别程序;若为是,则记录日志,显示出现新的设备且新的设备出现异常操作,立即封锁ip,提示管理员进行处理。

26、与现有的技术相比本发明的有益效果是:

27、1、本发明通过六个步骤实现对工控系统资产和威胁的快速识别,首先将捕获的数据包中的modbus数据包存入iqueue队列,在通过直接对iqueue队列中modbus数据包进行依次分析了解每个modbus数据包的tcp/ip消息报头中的关键参数,再对modbus数据包内容进行匹配分析,最后对modbus设备信息进行资产识别和威胁识别,威胁识别是通过资产识别来进一步判断的,直接利用资产识别得到的信息进行新增modbus设备的监测,并对短时间内新增的modbus设备进行威胁监测,能够在资产识别的同时快速进行威胁识别,进一步提高工控系统的稳定性和安全性。

28、2、本发明所采用增量映射算法可识别工业控制系统中存在的威胁及其他异常活动,通过收集并存储与从设备相关联的地址、与从设备通信的主设备地址以及在与设备相关的事务中看到的功能代码和参数。工控系统经过一段时间稳定运行后,新增信息的速率会随时间增加而降低,当设备信息及网络流量趋于稳定后,在相对长的时间段内可能不会添加新信息;若之后短期内信息采集趋势产生突然变化时,即可能存在恶意攻击等异常活动,并同时对新增的modbus设备进行威胁识别,及时作出反应并提醒管理员处理,进一步保证工控系统使用的安全性同时充分减小工控系统威胁带来的影响。

29、3、本发明实时监测网络中设备及流量传输变化,进行威胁识别,并进行日志记录,这些日志可用于系统监控、设备故障排除、检测系统异常和网络攻击复现。

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