CN115225375A - 一种工控流量的检测方法、装置和设备 - Google Patents
一种工控流量的检测方法、装置和设备 Download PDFInfo
- Publication number
- CN115225375A CN115225375A CN202210846677.1A CN202210846677A CN115225375A CN 115225375 A CN115225375 A CN 115225375A CN 202210846677 A CN202210846677 A CN 202210846677A CN 115225375 A CN115225375 A CN 115225375A
- Authority
- CN
- China
- Prior art keywords
- request
- industrial control
- response
- determining
- type
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请公开了一种工控流量的检测方法、装置和设备,基于工控流量中请求的响应情况,确定请求是否异常,若确定工控流量中存在针对第一请求的第一响应,则,基于第一响应确定第一请求的第一检测结果;若确定工控流量中不存在针对第二请求的响应,则,基于第一策略确定第二请求的第二检测结果,第一策略基于产生第二请求的目标设备和第二请求的相关参数界定第二请求的合法性。如此,充分利用目标设备对不同请求的响应不同的原理,通过分析目标设备的响应行为,反推目标设备的请求是否为恶意攻击报文,与通过直接分析请求的检测的方式相比,更加简单和高效,普适性也更强。
Description
技术领域
本申请涉及工控技术领域,特别是涉及一种工控流量的检测方法、装置和设备。
背景技术
通过检测发现工控流量中的异常流量,是保护工控系统的重要手段之一。
目前,通常通过黑白名单匹配机制、安全威胁建模或机器学习等技术,对工控流量的各类请求报文进行识别和检测,即,对请求报文进行检测以确定工控流量的是否异常。
但是,以请求报文作为工控流量检测的依据的工控流量的检测方式,十分复杂,效率较低。
发明内容
本申请提供了一种工控流量的检测方法、装置和设备,结合设备对不同输入请求报文的响应不同的原理,通过分析工控流中的响应行为,实现对工控流量简单、高效的检测。
第一方面,本申请提供了一种工控流量的检测方法,包括:
接收工控流量,所述工控流量中包括第一请求和第二请求;
确定工控流量中存在针对第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;
确定所述工控流量中不存在针对第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
可选地,所述基于所述第一响应确定所述第一请求的第一检测结果,包括:
若所述第一响应与预设的异常响应类型匹配,则,确定所述第一请求为第一类型的异常访问;
若所述第一响应与所述预设的异常响应类型均不匹配,确定所述第一请求合法。
可选地,所述基于第一策略确定所述第二请求的第二检测结果,包括:
若所述目标设备主动断开会话,则,确定所述第二请求为第二类型的异常访问;
若所述目标设备没有主动断开会话,则,基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果。
可选地,所述基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果,包括:
若所述目标设备的通信模式不是单向通信模式,则,确定所述第二请求为第三类型的异常访问;
若所述目标设备的通信模式是单向通信模式,则,基于所述第二请求的相关参数确定所述第二请求合法或所述第二请求为第四类型的异常访问。
可选地,所述方法还包括:
记录各类型的异常访问的次数;
针对每种类型的异常访问,在该类型的异常访问的次数达到该类型的异常访问的告警次数阈值的情况下,进行告警。
可选地,所述目标设备为工控嵌入式设备。
第二方面,本申请还提供了一种工控流量的检测装置,包括:
接收单元,用于接收工控流量,所述工控流量中包括第一请求和第二请求;
第一检测单元,用于确定工控流量中存在针对第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;
第二检测单元,用于确定所述工控流量中不存在针对第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
可选地,所述第一检测单元,具体用于:
若所述第一响应与预设的异常响应类型匹配,则,确定所述第一请求为第一类型的异常访问;
若所述第一响应与所述预设的异常响应类型均不匹配,确定所述第一请求合法。
可选地,所述第二检测单元,包括:
第一确定子单元,用于若所述目标设备主动断开会话,则,确定所述第二请求为第二类型的异常访问;
第二确定子单元,用于若所述目标设备没有主动断开会话,则,基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果。
可选地,所述第二确定子单元,具体用于:
若所述目标设备的通信模式不是单向通信模式,则,确定所述第二请求为第三类型的异常访问;
若所述目标设备的通信模式是单向通信模式,则,基于所述第二请求的相关参数确定所述第二请求合法或所述第二请求为第四类型的异常访问。
可选地,所述装置还包括:
记录单元,用于记录各类型的异常访问的次数;
告警单元,用于针对每种类型的异常访问,在该类型的异常访问的次数达到该类型的异常访问的告警次数阈值的情况下,进行告警。
可选地,所述目标设备为工控嵌入式设备。
需要说明的是,第二方面提供的装置的具体实现方式以及达到的效果,可以参见第一方面所示的方法相关实施例的描述。
第三方面,本申请还提供了一种电子设备,所述电子设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行上述第一方面提供的所述方法。
第四方面,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行上述第一方面提供的所述方法。
由此可见,本申请具有如下有益效果:
本申请提供了一种工控流量的检测方法,该方法例如可以包括:工控流量的检测装置基于工控流量中请求的响应情况,确定请求是否异常,例如,工控流量的检测装置确定工控流量中存在针对第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;工控流量的检测装置确定所述工控流量中不存在针对第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性(例如第二请求合法还是异常,如果异常,具体是哪种类型的异常),所述第二请求由所述目标设备产生。可见,该方法充分利用了目标设备对不同请求的响应不同的原理,工控流量的检测装置通过分析目标设备的响应行为,反推目标设备的请求是否为恶意攻击报文,与通过直接分析请求纷繁复杂的特征对请求进行检测的方式相比,更加简单和高效,普适性也更强。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例适用的一种工控系统的示意图;
图2为图1所示的异常检测防护设备10的一种结构示意图;
图3为本申请实施例提供的一种工控流量的检测方法的流程示意图;
图4为本申请实施例提供的工控流量的检测方法的一示例的流程示意图;
图5为本申请实施例提供的一种场景的示意图;
图6为本申请实施例提供的另一种场景的示意图;
图7为本申请实施例提供的又一种场景的示意图;
图8为本申请实施例提供的再一种场景的示意图;
图9为本申请实施例提供的另一种场景的示意图;
图10为本申请实施例提供的又一种场景的示意图;
图11为本申请实施例提供的一种工控流量的检测装置的结构示意图;
图12为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请实施例作进一步详细的说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本申请,并非对本申请的限定。另外,还需要说明的是,为便于描述,附图中仅示出了与本申请相关的部分,并非全部结构。
随着互联网技术的发展,网络安全成为人们的重点关注对象,检测流量异常,是保护网络安全的重要手段之一。对于工业主机(如操作员站、工程师站等)与工控嵌入式设备(如远程测控终端(Remote Terminal Unit,RTU)、可编程控制器(Programmable LogicController,PLC)、分散控制系统 (Distributed Control System,DCS)等)之间基于传输控制协议/互联网协议 (Transmission Control Protocol/Internet Protocol,TCP/IP)网络通信的工控系统,也需要通过异常检测确保网络安全。
可以理解的是,通过单个或有限个畸形数据包导致工控系统异常的例子较多,但由此引发的工业企业安全事件较少;然而,工控系统被入侵后,工控嵌入式设备长时间在非预期状态下运行导致发生损失的情况则较多。
目前,对工控系统中的工控流量的异常检测,通常采用黑白名单匹配机制、安全威胁建模或机器学习等技术,对工控流量的各类请求报文(或者称为输入报文)进行识别和检测,即,依据对请求报文的检测和分析来确定工控流量是否异常。但是,以请求报文作为工控流量检测的依据的工控流量的检测方式,由于不同异常下工控流量的请求报文特点繁多复杂,所以,存在效率较低、检测准确率较低等问题。
基于此,本申请实施例提出的工控流量的检测方法,主要依据对工控流量的响应(也可以称为输出)情况的分析,提供一套完整、合理且高效的异常检测机制。具体而言,该方法例如可以包括:工控流量的检测装置基于工控流量中请求的响应情况,确定请求是否异常,例如,工控流量的检测装置确定工控流量中存在针对第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;工控流量的检测装置确定所述工控流量中不存在针对第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
可见,本申请实施例所提供的方法,充分利用了目标设备对不同请求的响应不同的原理,工控流量的检测装置通过分析目标设备的响应行为,反推目标设备的请求是否为恶意攻击报文,与通过直接分析请求纷繁复杂的特征对请求进行检测的方式相比,更加简单和高效,普适性也更强。
可以理解的是,本申请实施例提供的方法,可以运行于如图1所示的异常检测防护设备10上。如图1所示,为本申请实施例所适用的场景,该场景中不仅包括异常检测防护设备10,还可以包括:工控嵌入式设备与上位机20 和交换机30,可选地,在有异常攻击的场景下,还可以包括攻击者设备40。其中,工控嵌入式设备与上位机20、攻击者设备40均可以通过交换机30连接异常检测防护设备10。其中,工控嵌入式设备与上位机20输出的为正常流量,攻击者设备40输出的是攻击流量,无论是正常流量还是攻击流量,经过交换机30的处理后的镜像流量,输入到异常检测防护设备10,由异常检测防护设备10执行本申请实施例提供的方法,依据交换机10输出的镜像流量中响应情况实现对工控流量进行异常检测。如果异常检测防护设备10确定存在异常,则,可以通过向交换机30发送阻断流量等方式,阻断攻击,尽可能的保障工控嵌入式设备与上位机20的安全。其中,工控嵌入式设备与上位机20可以包括至少一台工控嵌入式设备和一台上位机(也可以称为工业主机)。
其中,异常检测防护设备10作为一个可独立运行的设备,也可以以一个功能模块的形态集成在其他设备(如交换机30或工控嵌入式设备与上位机20) 中。如图2所示,异常检测防护设备10例如可以包括:控制界面单元11、镜像口网络流量捕获单元12、工控协议识别单元13、工业协议解析单元14、工控嵌入式设备响应分析单元15和阻断流量生成与发送单元16。其中,控制界面单元11,可以理解为人机交互界面,用于进行设备配置与信息管理;镜像口网络流量捕获单元12,用于获得网络接口流量,例如在图1所示的场景中获得交换机30的网络接口流量,该流量可以包括工控嵌入式设备与上位机 20输出的正常流量对应的镜像流量,也可以包括攻击者设备40输出的攻击流量对应的镜像流量;工控协议识别单元13不仅用于区分工控流量和传统互联网技术(Internet Technology,IT)流量,而且还可以进一步识别工控协议,将对应流量转发到相应的工业协议解析单元14;工业协议解析单元14用于解析工业协议,尤其用于解析工控嵌入式设备与上位机20(如工控嵌入式设备) 输出的响应报文;工控嵌入式设备响应分析单元15用于基于本申请实施例提供的方法实现工控流量的检测,具体可以参见下述图3所示的实施例的详细说明;阻断流量生成与发送单元16,在发现恶意畸形攻击数据包时,不仅及时告警,还尽可能发送阻断该流量的数据包,进一步保护工控系统。
具体实现时,工控嵌入式设备响应分析单元15可以在控制界面单元11 配置执行本申请实施例时各类异常访问的统计阈值以及时间窗口的设定等参数,本申请实施例首先根据工控协议识别单元13对镜像口的流量进行分流后,以时间窗口为单位,批量处理时间窗口内的工控流量,判定逻辑参见图4所示。
需要说明的是,图2所示的异常检测防护设备10中,工控嵌入式设备响应分析单元15是本申请实施例得以实现的核心单元;其余单元均是为了辅助工控嵌入式设备响应分析单元15实现本申请实施例提供的方法,本申请实施例中不作详细介绍。
本申请实施例中,提出了工控网络恶意畸形攻击数据包检测的逆向分析思路,即,根据工控嵌入式设备输入的请求报文与输出的响应之间的关联关系,不直接对输入报文进行畸形检测分析,转而逆向研究输出的响应行为和报文,根据工控嵌入式设备的响应行为和输出的响应报文的分析结果,推断工控系统是否存在安全威胁。
需要说明的是,实施该工控流量的检测方法的主体可以为本申请实施例提供的工控流量的检测装置,该装置可以承载于电子设备或电子设备的功能模块中。本申请实施例中的电子设备,可以是任意的能够实施本申请实施例中的工控流量的检测方法的设备。对应于上述图1和图2所示的示例,工控流量的检测装置也可以理解为前述工控嵌入式设备响应分析单元15,承载该工控流量的检测装置的电子设备可以理解为包括工控嵌入式设备响应分析单元15的异常检测防护设备10。
为便于理解本申请实施例提供的工控流量的检测方法的具体实现,下面将结合附图进行说明。
图3为本申请实施例提供的一种工控流量的检测方法流程示意图。该方法应用于工控流量的检测装置,该装置可以对目标设备产生的工控流量进行检测,该目标设备可以是工控嵌入式设备或个人计算机(Personal Computer, PC)等终端设备。如图3所示,该方法可以包括下述S101~S102:
S101,确定工控流量中存在针对第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;
S102,确定所述工控流量中不存在针对第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
可以理解的是,该方法中处理的对象为接收的工控流量,该工控流量中包括第一请求和第二请求。其中,工控流量中有响应的请求可以记作S101中的第一请求,该第一请求对应的响应记作S101中的第一响应;同理,工控流量中没有响应的请求可以记作S102中的第二请求。
需要说明的是,S101和S102的执行没有顺序的限定,可以先执行S101 再执行S102,也可以先执行S102再执行S101,还可以同时执行S101和S102。
需要说明的是,在S101和S102之前,该方法还可以包括:S100,判断工控流量中的请求是否存在响应,如果存在,则,将该请求记作第一请求,执行S101,否则,将该请求记作第二请求,执行S102。具体实现时,S100 中判断的依据可以是工控流量的特征,例如,工控流量的互联网协议(Internet Protocol,IP)地址、端口号等。
对于S101,在确定工控流量中存在针对第一请求的第一响应,则,可以基于所述第一响应确定第一请求的第一检测结果。作为一个示例,该S101例如可以包括:若所述第一响应与预设的异常响应类型匹配,则,确定所述第一请求为第一类型的异常访问;若所述第一响应与所述预设的异常响应类型均不匹配,确定所述第一请求合法。即,第一检测结果可以为第一请求合法或第一请求异常。其中,预设的异常响应类型可以包括但不限于:S7COMM协议工程口令输入错误的响应、Modbus TCP向错误的线圈写数据得到异常响应、通用工业协议(Common Industrial Protocol,CIP)请求错误服务得到的异常响应。预设的异常响应类型通常是协议规范明确定义的,只需预先设置即可,无需根据客户现场环境做类似白名单机制的学习和适配。
如果第一请求异常,作为一个示例,可以将基于S101确定的异常均记作一个类型的异常,该异常的类型例如可以记作第一类型。作为另一个示例,如果第一请求异常,还可以基于预设的异常响应类型中与第一响应匹配的异常响应类型确定第一请求的异常类型,第一检测结果包括该第一请求的具体异常类型。
对于S102,在确定工控流量中不存在针对第二请求的响应,则,可以基于第一策略确定所述第二请求的第二检测结果。作为一个示例,该S102例如可以包括:若所述目标设备主动断开会话,则,确定所述第二请求为第二类型的异常访问;若所述目标设备没有主动断开会话,则,基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果。
其中,在确定目标设备不是主动断开会话,所述基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果,可以包括:若所述目标设备的通信模式不是单向通信模式,则,确定所述第二请求为第三类型的异常访问;若所述目标设备的通信模式是单向通信模式,则,基于所述第二请求的相关参数确定所述第二请求合法或所述第二请求为第四类型的异常访问。其中,基于所述第二请求的相关参数确定所述第二请求合法或所述第二请求为第四类型的异常访问的具体实现方式可以基于现有技术中的任何方式实现,本申请实施例不作具体限定。
需要说明的是,在工控流量经过本申请实施例提供的方法获得检测结果后,还可以基于检测结果对记录各类型的异常访问的次数;从而针对每种类型的异常访问,在该类型的异常访问的次数达到该类型的异常访问的告警次数阈值的情况下,进行告警。如此,通过合理的告警能够有效的提高工控系统的安全,一定程度提高安全防护的工作人员的工作效率。而且,该告警可以被设计为发送阻断流量等自动实施安全防护操作的触发条件,提高工控系统尤其是工控系统中工控流量的检测部分的智能化水平。
为了更清楚的说明本申请实施例提供的方法,下面结合图4对本申请实施例进行示例性的描述。参见图4,本申请实施例例如可以包括:
S41,参数配置。
例如,S41可以包括对各种类型的告警次数阈值进行设定。
S42,获得流量中的镜像口网络数据流量。
需要说明的是,S42是目标设备为工控嵌入式设备时执行的步骤,当目标设备为PC等终端设备时可以不执行S42。
S43,判断镜像口网络数据流量是否为工控流量,如果是,则,执行S44,否则,忽略该镜像口网络数据流量。
需要说明的是,S43是目标设备为工控嵌入式设备时可以不执行的步骤,当目标设备为PC等终端设备时,S43的执行能够过滤非工控流量(如控制面流量)。
需要说明的是,S41~S43可以理解为本申请实施例实施的准备步骤。
S44,获得时间窗口下的工控流量。
可以理解的是,可以通过设置时间窗口的方式实现周期性的工控流量检测。时间窗口例如可以是30分钟,那么,可以每30秒对该30秒内获得的工控流量进行一次本申请实施例提供的检测流程。
S45,判断工控流量中的请求是否存在应用层的响应,如果存在,则,执行S46,否则,执行S49。
S46,判断请求的响应是否与预设的异常响应类型匹配,如果是,则,执行S48,否则,执行S47。
S47,确定该请求合法。
其中,请求合法,可以指该请求报文合法且相应的通信模式合法。
S48,确定该请求为异常访问。
S49,判断目标设备是否主动断开会话,如果是,则,执行S48,否则,执行S50。
S50,判断目标设备的通信模式是单向通信模式,如果是,则,执行S51,否则,执行S48。
S51,基于所述第二请求的相关参数判断该请求是否异常,如果是,则,执行S48,否则,执行S47。
需要说明的是,S48之后,还可以包括S52和S53:
S52,根据S46、S49、S50和S51记录每个步骤所检测出的异常访问的类型和对应的次数。
例如,S46触发S48时记录1次第一类型的异常访问;S49触发S48时记录1次第二类型的异常访问;S50触发S48时记录1次第三类型的异常访问; S51触发S48时记录1次第四类型的异常访问。
S53,根据异常访问类型对应的次数和该异常访问类型对应的告警次数阈值,进行告警。
需要说明的是,不同的异常访问类型对应的告警次数阈值可以相同也可以不同。记录的异常访问类型的次数可以仅在当前时间窗口有效,也可以在预设的若干时间窗口有效。不同的异常访问类型,其记录的发生次数的有效时间可以相同也可以不同。异常访问类型在有效时记录的次数随着被检测出而不断累加。
需要说明的是,根据实际需要,可以灵活的配置异常访问类型、各种异常访问类型的告警次数阈值、各种类型的异常访问类型的有效时间窗口个数。
可见,通过本申请实施例提供的方法,能够通过对工控流量中请求的响应情况的分析和判断,简单且有效的实现工控流量的异常检测。
本申请实施例提供的方法中,进行工控流量的检测的逻辑流程可以总结为:第一步,根据工控嵌入式设备对其请求的应用层响应行为,分成有响应和无响应两种情况;第二步,对于工控嵌入式设备有应用层响应的情况,可进一步分析是正常请求的响应还是异常请求的响应,如果是正常请求的响应,则可以断定当前请求报文是合法报文,通信方式也是合法的,即正常的工控嵌入式设备请求和响应通信;如果是预定义的异常响应报文,如图5所示的 S7COMM协议工程口令输入错误的响应、如图6所示的Modbus TCP协议向错误的线圈写数据得到异常响应,以及如图7所示的CIP协议请求错误服务得到的异常响应等,这些异常响应报文类型通常是协议规范明确定义的,只需预置在本申请实施例提供的工控流量的检测装置中即可,无需根据客户现场环境做类似白名单机制的学习和适配。此种异常访问在本申请实施例中定义为第一类型(也可以称为D类型)的异常访问。第三步,对于工控嵌入式设备无应用层响应的情况,可以根据嵌入式设备是否主动断开会话反向推断其收到请求报文的合法性,如果工控嵌入式设备主动断开请求,则认为收到了带有恶意攻击性质的不符合预期的畸形异常数据包,工控嵌入式设备为避免造成进一步影响,主动断开当前通信,此种异常访问在本申请实施例中定义为第二类型(也可以称为C类型)的异常访问;如果工控嵌入式设备没有主动断开请求,则需进一步考虑是否由特定的通信模式导致,例如是组播通信或单向通信等;如果不是特定的单向通信导致工控嵌入式设备没有响应,则可能是由发起请求方主动断开的会话通信(不一定是TCP,也可能是UDP 或二层协议),此种异常访问在本申请实施例中定义为第三类型(也可以称为B类型)的异常访问。如果是特定的通信模式导致无响应的情况发生,不是工控嵌入式设备主动断开会话,则,可以进一步基于现有技术判断该请求是否异常,例如,将协议规范(或规约)集成进检测引擎,而且根据现场规范约束和历史流量,判定请求是否为工控畸形包。如果判定是畸形报文,则记录为第四类型(也可以称为A类型)的异常访问;否则判定是合法的请求报文和通信模式。需要说明的是,本申请实施例虽然分析工控嵌入式设备的响应输出行为反推请求报文是否异常,但与直接分析请求报文是否畸形异常的检测方法并不互斥。
可选地,按照上述流程分析完当前时间窗口的工控流量后,对超过告警次数阈值的异常访问进行告警,可灵活适配多种应用场景。
可见,本申请实施例依据工控嵌入式设备请求与响应的关联关系,对响应数据包的不同响应情况进行逆向推断,达到检测工控系统中是否存在恶意攻击畸形数据包的效果。
下面结合具体的场景实施例描述本申请实施例可能涉及的情况。
场景实施例一:工控嵌入式设备对持续恶意畸形输入数据包无响应。
该实施例畸形数据包的场景如图8所示,恶意攻击者作为Modbus TCP 客户端对某工控嵌入式设备持续发送恶意Modbus TCP畸形数据包,攻击方主动断开当前TCP连接后,建立新TCP连接发送下一个Modbus TCP畸形攻击数据包。该实施例所用的工控嵌入式设备虽然正常接收每次TCP建立连接的请求,但是对于畸形异常输入请求报文始终不进行任何响应。
本申请实施例提供的方法中,可以首先判断当前实施例所属场景是否属于工控嵌入式设备无应用层响应的情况,判断结果为是,因此,在获得时间窗口工控流量后,第1个条件判断进入到结果为否的分支。此后,由于工控嵌入式设备没有主动断开当前连接,因此在第2个条件判断进入结果为否的分支。由于当前实施例的Modbus TCP请求属于典型的“请求-响应”交互方式,不属于单向通信的情况,因此在第3个条件判断进入到结果为否的分支。综上所述,最终判定每个TCP连接中的Modbus TCP畸形数据包为1次第三类型(或B类型)的异常访问。
场景实施例二:工控嵌入式设备对畸形数据包主动断开连接。
与该实施例相关的两个典型场景包括:图9所示的罗克韦尔某型号PLC 在收到错误CIP请求后,主动发送TCP.RST报文断开当前TCP连接的场景;图所示的西门子某型号PLC在收到畸形S7COMM协议请求后,主动发送 TCP.RST报文断开当前TCP连接的场景。这两个场景都属于工控嵌入式设备主动断开连接的情况。
本申请实施例提供的方法中,可以首先判断当前实施例所属场景是否属于工控嵌入式设备无应用层响应的情况(即,没有输出任何应用层响应报文),判断结果为是,因此,在获得时间窗口工控流量的第1个条件判断进入结果为否的分支。由于本实施例所属场景都是由工控嵌入式设备在收到恶意畸形请求报文后,为避免受到更深度的攻击而主动发送TCP.RST拒绝包断开当前连接的自保护行为。因此,最终判定每个TCP连接中的如图9所示的CIP畸形数据包或如图10所示的S7COMM畸形数据包为1次第二类型(或C类型) 的异常访问。
场景实施例三:工控嵌入式设备返回预定义的异常响应包(即与预设的异常响应类型匹配)。
在此描述与该实施例相关的三个典型场景:图5所示的西门子某型号PLC 在口令爆破(口令字段的值为畸形)过程中,由于不断收到错误口令而返回的口令校验错误响应包;图6所示的基于Modbus TCP协议持续向错误线圈写数据时,ModbusTCP服务端返回请求异常的响应报文;图7所示的罗克韦尔某型号PLC在收到错误服务请求后,返回的服务请求异常响应。这三个场景都属于工控嵌入式设备对畸形输入数据包返回预定义异常响应的情况。
本申请实施例提供的方法中,可以首先判断当前实施例所属场景是否属于工控嵌入式设备有应用层响应的情况,判断结果为是,又由于不同协议规范约定的异常响应报文类型是有限可数的,因此,当发现工控嵌入式设备的返回信息是针对非正常请求的响应时,可推断当前工控系统存在第一类型(或 D类型)的畸形数据包。
需要说明的是,本申请实施例提供的方法还可根据异常响应报文的具体内容进一步推断当前工控系统中存在更细分类型的网络异常:例如图5所述的场景可以进一步推断为S7COMM协议的口令爆破攻击,图6所述场景可以进一步推断为ModbusTCP协议的错误线圈持续写入,图7所述场景可以进一步推断为CIP协议请求异常的服务。
需要说明的是,对于第四类型的异常访问,现有技术中已有较为充分的实施例说明,因此不再赘述关于第四类型的访问异常对应的实施例。第四类型的异常访问以及对第四类型的异常访问的检测过程,仅是为了完整的说明本申请实施例而提出,恶意畸形输入包检测技术与本申请实施例提供的基于响应对请求的检测方法不互斥。
场景实施例四:基于告警次数阈值(也可以称为统计阈值)区分工作人员偶尔的误操作与持续恶意畸形报文的攻击。
操作过程中偶尔会产生输入错误的可能,也就是说有些工控流量是由工作人员操作产生的,例如,输入西门子某型号PLC工程密码过程中,有可能输入几次错误的口令。针对这种情况,虽然在时间窗口内记录了若干次第一类型的异常访问,只要没有达到该类型异常访问的阈值,不会进行工控系统畸形数据攻击告警,可有效降低误报率,提高本申请实施例所提供方法的可用性和灵活性。
综上所述,本申请实施例聚焦于工控嵌入式设备输出响应信息的分析研究,通过对不同类型的输出响应报文进行各种条件的分析,推断工控系统中存在哪种类型的恶意畸形攻击数据包。与此同时,本申请实施例所提供的方法与主流基于工控嵌入式设备输入畸形报文的检测技术并不互斥,可以有效补充和提高现有工控系统异常检测的能力。
本申请实施例中,不仅提出了工控系统恶意畸形攻击数据包检测的逆向分析思路:根据工控嵌入式设备请求报文与输出响应之间的关联关系,不直接对请求报文进行畸形检测分析,转而逆向研究工控流量中的响应行为和报文,根据工控嵌入式设备响应行为和报文的分析结果,推断工控系统是否存在安全威胁。而且,本申请实施例对工控嵌入式设备的各种响应行为和输出报文场景下的各类异常访问进行分类:从分类的完备性上对工控嵌入式设备各种异常行为和响应报文进行分类,通过分析每种类型响应报文的特点推断异常畸形输入报文的类别。此外,本申请实施例虽然从工控嵌入式设备响应报文分析作为切入点进行请求报文异常类型检测,但与直接分析工控流量中请求报文是否畸形的研究方法并不互斥,因此,本申请实施例可以同时从输入和输出两个方向分析工控系统是否存在恶意畸形输入包的安全威胁,同时发挥两类畸形包异常检测技术的优势。而且,本申请实施例中单向通信模式的判定机制可以避免将工控系统中单向通信的合法通信方式判定为异常访问,增强了本申请实施例所提供的方法的应用范围,有效降低了误报率。而且,本申请实施例中对工控嵌入式设备不同类型的异常响应行为设置不同的告警次数阈值,既可以对告警做到精细化管理,还可以有效区分工作人员偶尔误操作与工控系统存在持续恶意畸形数据包的攻击威胁。
相应的,本申请实施例还提供了一种工控流量的检测装置1100,如图11 所示,该装置1100可以包括:
第一检测单元1101,用于确定工控流量中存在针对第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;
第二检测单元1102,用于确定所述工控流量中不存在针对第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
该装置1100还可以包括接收单元,该接收单元用于接收工控流量,所述工控流量中包括第一请求和第二请求。
可选地,所述第一检测单元1101,具体用于:
若所述第一响应与预设的异常响应类型匹配,则,确定所述第一请求为第一类型的异常访问;
若所述第一响应与所述预设的异常响应类型均不匹配,确定所述第一请求合法。
可选地,所述第二检测单元1102,包括:
第一确定子单元,用于若所述目标设备主动断开会话,则,确定所述第二请求为第二类型的异常访问;
第二确定子单元,用于若所述目标设备没有主动断开会话,则,基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果。
可选地,所述第二确定子单元,具体用于:
若所述目标设备的通信模式不是单向通信模式,则,确定所述第二请求为第三类型的异常访问;
若所述目标设备的通信模式是单向通信模式,则,基于所述第二请求的相关参数确定所述第二请求合法或所述第二请求为第四类型的异常访问。
可选地,所述装置1100还包括:
记录单元,用于记录各类型的异常访问的次数;
告警单元,用于针对每种类型的异常访问,在该类型的异常访问的次数达到该类型的异常访问的告警次数阈值的情况下,进行告警。
可选地,所述目标设备为工控嵌入式设备。
需要说明的是,本申请实施例提供的工控流量的检测装置1100的具体实现方式以及达到的效果,可以参见图3或图4所示的工控流量的检测方法相关实施例的描述。
此外,本申请实施例还提供了一种电子设备1200,如图12所示,所述电子设备1200包括处理器1201以及存储器1202:
所述存储器1202用于存储计算机程序;
所述处理器1201用于根据所述计算机程序执行本申请实施例提供的方法。
此外,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本申请实施例提供的方法。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到上述实施例方法中的全部或部分步骤可借助软件加通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如只读存储器(英文:read-only memory,ROM)/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者诸如路由器等网络通信设备)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例和设备实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的设备及系统实施例仅仅是示意性的,其中作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅是本申请的优选实施方式,并非用于限定本申请的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (10)
1.一种工控流量的检测方法,其特征在于,包括:
接收工控流量,所述工控流量中包括第一请求和第二请求;
确定所述工控流量中存在针对所述第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;
确定所述工控流量中不存在针对所述第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
2.根据权利要求1所述的方法,其特征在于,所述基于所述第一响应确定所述第一请求的第一检测结果,包括:
若所述第一响应与预设的异常响应类型匹配,则,确定所述第一请求为第一类型的异常访问;
若所述第一响应与所述预设的异常响应类型均不匹配,确定所述第一请求合法。
3.根据权利要求1所述的方法,其特征在于,所述基于第一策略确定所述第二请求的第二检测结果,包括:
若所述目标设备主动断开会话,则,确定所述第二请求为第二类型的异常访问;
若所述目标设备没有主动断开会话,则,基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果。
4.根据权利要求3所述的方法,其特征在于,所述基于所述目标设备的通信模式和所述第二请求确定所述第二检测结果,包括:
若所述目标设备的通信模式不是单向通信模式,则,确定所述第二请求为第三类型的异常访问;
若所述目标设备的通信模式是单向通信模式,则,基于所述第二请求的相关参数确定所述第二请求合法或所述第二请求为第四类型的异常访问。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述方法还包括:
记录各类型的异常访问的次数;
针对每种类型的异常访问,在该类型的异常访问的次数达到该类型的异常访问的告警次数阈值的情况下,进行告警。
6.根据权利要求1-4任一项所述的方法,其特征在于,所述目标设备为工控嵌入式设备。
7.一种工控流量的检测装置,其特征在于,包括:
接收单元,用于接收工控流量,所述工控流量中包括第一请求和第二请求;
第一检测单元,用于确定所述工控流量中存在针对所述第一请求的第一响应,则,基于所述第一响应确定所述第一请求的第一检测结果;
第二检测单元,用于确定所述工控流量中不存在针对所述第二请求的响应,则,基于第一策略确定所述第二请求的第二检测结果,所述第一策略基于目标设备和所述第二请求的相关参数界定所述第二请求的合法性,所述第二请求由所述目标设备产生。
8.根据权利要求7所述的装置,其特征在于,所述第一检测单元,具体用于:
若所述第一响应与预设的异常响应类型匹配,则,确定所述第一请求为第一类型的异常访问;
若所述第一响应与所述预设的异常响应类型均不匹配,确定所述第一请求合法。
9.一种电子设备,其特征在于,所述电子设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1-6任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210846677.1A CN115225375A (zh) | 2022-07-05 | 2022-07-05 | 一种工控流量的检测方法、装置和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210846677.1A CN115225375A (zh) | 2022-07-05 | 2022-07-05 | 一种工控流量的检测方法、装置和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115225375A true CN115225375A (zh) | 2022-10-21 |
Family
ID=83612040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210846677.1A Pending CN115225375A (zh) | 2022-07-05 | 2022-07-05 | 一种工控流量的检测方法、装置和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115225375A (zh) |
-
2022
- 2022-07-05 CN CN202210846677.1A patent/CN115225375A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108848067B (zh) | 智能学习并预置只读白名单规则的opc协议安全防护方法 | |
CN112671807B (zh) | 威胁处理方法、装置、电子设备及计算机可读存储介质 | |
JP3758661B2 (ja) | 不正監視プログラム、不正監視の方法及び不正監視システム | |
CN111327601B (zh) | 异常数据响应方法、系统、装置、计算机设备和存储介质 | |
KR20140118494A (ko) | 제어 시스템의 이상 징후 탐지 장치 및 방법 | |
CN111935172A (zh) | 基于网络拓扑的网络异常行为检测方法、计算机装置及计算机可读存储介质 | |
WO2018198733A1 (ja) | セキュリティ監視システム及びセキュリティ監視方法 | |
CN111510339B (zh) | 一种工业互联网数据监测方法和装置 | |
RU2630415C2 (ru) | Способ обнаружения аномальной работы сетевого сервера (варианты) | |
CN115225375A (zh) | 一种工控流量的检测方法、装置和设备 | |
CN109889552A (zh) | 电力营销终端异常流量监控方法、系统及电力营销系统 | |
CN116483663A (zh) | 用于平台的异常告警方法和装置 | |
CN111338297B (zh) | 一种基于工业云的工控安全框架系统 | |
JP2005322261A (ja) | 不正監視プログラム、不正監視の方法及び不正監視システム | |
EP2911362B1 (en) | Method and system for detecting intrusion in networks and systems based on business-process specification | |
KR100599929B1 (ko) | 지능형통합보안관리시스템의 에이전트계층 데이터처리방법 | |
CN110166476B (zh) | 一种反暴力破解方法及装置 | |
CN112134845A (zh) | 一种抗拒绝服务系统 | |
CN113127856A (zh) | 网络安全运维管理方法、装置、计算设备及存储介质 | |
US20230009270A1 (en) | OPC UA-Based Anomaly Detection and Recovery System and Method | |
CN103944897A (zh) | Iis应用服务器嵌入式安全监控方法及装置 | |
CN110011873B (zh) | 一种无ip设备的工作状态检测方法、装置和介质 | |
TWI835113B (zh) | 依記錄分析結果執行任務以實現設備聯防之系統及方法 | |
CN116436668B (zh) | 信息安全管控方法、装置,计算机设备,存储介质 | |
CN111988333B (zh) | 一种代理软件工作异常检测方法、装置及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |