CN114978782A - 工控威胁检测方法、装置、工控设备以及存储介质 - Google Patents

工控威胁检测方法、装置、工控设备以及存储介质 Download PDF

Info

Publication number
CN114978782A
CN114978782A CN202210919114.0A CN202210919114A CN114978782A CN 114978782 A CN114978782 A CN 114978782A CN 202210919114 A CN202210919114 A CN 202210919114A CN 114978782 A CN114978782 A CN 114978782A
Authority
CN
China
Prior art keywords
protocol
detected
value range
rule
protocol message
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.)
Granted
Application number
CN202210919114.0A
Other languages
English (en)
Other versions
CN114978782B (zh
Inventor
韩鹏飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing 6Cloud Technology Co Ltd
Beijing 6Cloud Information Technology Co Ltd
Original Assignee
Beijing 6Cloud Technology Co Ltd
Beijing 6Cloud Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing 6Cloud Technology Co Ltd, Beijing 6Cloud Information Technology Co Ltd filed Critical Beijing 6Cloud Technology Co Ltd
Priority to CN202210919114.0A priority Critical patent/CN114978782B/zh
Publication of CN114978782A publication Critical patent/CN114978782A/zh
Application granted granted Critical
Publication of CN114978782B publication Critical patent/CN114978782B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/18Protocol analysers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/40Bus networks
    • H04L2012/40208Bus networks characterized by the use of a particular bus standard
    • H04L2012/40228Modbus
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02PCLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
    • Y02P90/00Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
    • Y02P90/02Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Programmable Controllers (AREA)

Abstract

本申请公开了一种工控威胁检测方法、装置、工控设备以及存储介质,其工控威胁检测方法包括:获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到待检测的协议报文的解析内容;根据Modbus协议匹配规则对待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断待检测的协议报文的解析内容是否添加有值域控制规则;若待检测的协议报文的解析内容添加有值域控制规则,则对待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。本申请解决了无法对Modbus协议的值域范围进行监控的问题,以支持不同厂家对于不同数据类型的值域控制。

Description

工控威胁检测方法、装置、工控设备以及存储介质
技术领域
本申请涉及工业信息技术领域,尤其涉及一种工控威胁检测方法、装置、工控设备以及存储介质。
背景技术
Modbus协议是一种串行通信协议,是Modicon公司(即现在的施耐德电气Schneider Electronic)于1979年为使用可编程逻辑控制器(PLC)通信而发表。Modbus协议已经成为工业领域通信协议的业界标准(De facto),并且现在是工业电子设备之间常用的连接方式。Modbus协议的优点是其可扩展性非常强大,几乎所有的实现都是其官方标准的某种变体。
但Modbus协议同样存在缺点,就是它不像S7等协议那样本身就带有数据类型,Modbus协议本身无数据类型,这使得不同供应商的设备之间可能无法正常的通信。基于此问题,现有技术大都基于功能码级别对Modbus协议做威胁检测,从而对工控安全起保护作用。但在实现过程中,发明人发现基于功能码级别的威胁检测方法存在粒度太粗,无法对Modbus协议的数值范围进行监控的问题。
因此,有必要提出一种可精细到数值值域范围的工控威胁检测方法。
发明内容
本申请的主要目的在于提供一种工控威胁检测方法、装置、工控设备以及存储介质,旨在解决无法对Modbus协议的值域范围进行监控的问题,以支持不同厂家对于不同数据类型的值域控制。
为实现上述目的,本申请提供一种工控威胁检测方法,所述工控威胁检测方法包括:
获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;
对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;
根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;
若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;
若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
可选地,所述获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文的步骤之前,还包括:
生成所述Modbus协议匹配规则,具体包括:
获取PLC传输的历史的Modbus协议报文;
对历史的协议报文进行协议解析,得到所述历史的协议报文的解析内容;
提取所述历史的协议报文的解析内容的协议特征;
基于所述协议特征生成所述Modbus协议匹配规则。
可选地,所述获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文的步骤之前,还包括:
为所述待检测的协议报文的解析内容添加值域控制规则,具体包括:
提供可供人机交互的规则配置页面;
获取通过所述规则配置页面配置的规则参数;
基于所述规则参数生成所述值域控制规则,并将所述值域控制规则添加在所述待检测的协议报文的解析内容上。
可选地,所述若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果的步骤包括:
获取所述待检测到协议报文的数据类型和值字段,其中,所述待检测的协议报文的数据类型为组态软件输出的OT数据类型;
判断所述待检测的协议报文的数据类型是否与所述值域控制规则中配置的数据类型相匹配;
若匹配,则将所述待检测的协议报文的所述OT数据类型转换成对应的IT数据类型;
根据所述IT数据类型,对所述待检测的协议报文的所述值字段进行切分,得到切分后的数值;
将切分后的所述数值与所述值域控制规则中配置的值域范围进行比对,得到所述值域匹配结果。
可选地,所述若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则的步骤之后,还包括:
若所述待检测的协议报文的解析内容没有添加所述值域控制规则,则输出Modbus协议匹配结果。
可选地,所述若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果的步骤之后,还包括:
若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断。
可选地,所述若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断的步骤之后,还包括:
提供可供人机交互的规则修改页面;
获取用户通过所述规则修改页面修改后的规则参数;
基于所述修改后的规则参数生成新的值域控制规则,并将所述新的值域控制规则添加在所述待检测的协议报文的解析内容上,重新进行Modbus值域匹配,并得到新的值域匹配结果。
本申请实施例还提出一种工控威胁检测装置,所述工控威胁检测装置包括:
协议获取模块,用于获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;
协议解析模块,用于对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;
协议匹配模块,用于根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;
规则判断模块,用于若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;
值域匹配模块,用于若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
本申请实施例还提出一种工控设备,所述工控设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的工控威胁检测程序,所述工控威胁检测程序被所述处理器执行时实现如上所述的工控威胁检测方法的步骤。
本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有工控威胁检测程序,所述工控威胁检测程序被处理器执行时实现如上所述的工控威胁检测方法的步骤。
本申请实施例提出的工控威胁检测方法、装置、工控设备以及存储介质,通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
附图说明
图1为本申请工控威胁检测装置所属工控设备的功能模块示意图;
图2为本申请工控威胁检测方法第一示例性实施例的流程示意图;
图3为本申请工控威胁检测方法第二示例性实施例的流程示意图;
图4为本申请工控威胁检测方法第三示例性实施例的整体流程示意图;
图5为本申请实施例中为所述待检测的协议报文的解析内容添加值域控制规则的流程示意图;
图6为本申请工控威胁检测方法第四示例性实施例的流程示意图;
图7为本申请工控威胁检测方法第五示例性实施例涉及的事件详情页面示意图;
图8为本申请工控威胁检测方法第五示例性实施例的步骤S60的细化流程示意图;
图9为本申请工控威胁检测方法第六示例性实施例的流程示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请实施例的主要解决方案是:通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据预先生成的Modbus协议匹配原则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则进入Modbus值域匹配过程,判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。其中,通过在Modbus值域匹配过程中将组态软件输出的OT数据类型转换成对应的IT数据类型,并根据所述IT数据类型对所述待检测的协议报文的值字段进行切分与比对,完成对所述待检测的协议报文的Modbus值域匹配过程。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
本申请实施例涉及的技术术语:
工控;
可编程逻辑控制器,PLC,Programmable Logic Controller;
组态软件,SCADA,Supervisory Control And Data Acquisition;
数据类型;
威胁检测;
白名单,White List。
其中,工控(即工业控制计算机,又称工业自动化控制)是一种采用总线结构,对生产过程及其机电设备、工艺设备进行检测与控制的工具总称。它具有重要的计算机属性和特征,如:具有计算机CPU、硬盘、内存、外设及接口,并有实时的操作系统、控制网络和协议、计算能力、友好的人机界面等。目前工控机的主要类别有:IPC(PC总线工业电脑)、PLC(可编程控制系统)、DCS(分散型控制系统)、FCS(现场总线系统)及CNC(数控系统)五种。
可编程逻辑控制器(即能编程的控制器,PLC,Programmable Logic Controller)是一种具有微处理器的用于自动化控制的数字运算控制器,其专门为在工业环境下应用而设计,可以将控制指令随时载入内存进行储存与执行。可编程控制器由CPU、指令及数据内存、输入/输出接口、电源、数字模拟转换等功能单位组成。早期的可编程逻辑控制器只有逻辑控制的功能,所以被命名为可编程逻辑控制器,后来随着不断地发展,这些当初功能简单的计算模块已经有了包括逻辑控制、时序控制、模拟控制、多机通信等各种功能,名称也改为可编程控制器(Programmable Controller),但是由于它的简写PC与个人电脑(PersonalComputer)的简写相冲突,加上习惯的原因,人们还是经常使用可编程逻辑控制器这一称呼,并仍使用PLC这一缩写。
现在工业上使用的可编程逻辑控制器已经相当于或接近于一台紧凑型电脑的主机,其在扩展性和可靠性方面的优势使其被广泛应用于目前的各类工业控制领域。不管是在计算机直接控制系统还是集中分散式控制系统DCS,或者现场总线控制系统FCS中,总是有各类PLC控制器的大量使用。
组态软件(又称组态监控软件系统软件,SCADA,Supervisory Control And DataAcquisition)是指一些数据采集与过程控制的专业软件,它们是在自动控制系统监控层一级的软件平台和开发环境,能以灵活多样的组态方式(而不是编程方式)提供良好的用户开发界面和简捷的使用方法,它解决了控制系统通用性问题。其预设置的各种软件模块可以非常容易地实现和完成监控层的各项功能,并能同时支持各种硬件厂家的计算机和I/O产品,与高可靠的工控计算机和网络系统结合,可向控制层和管理层提供软硬件的全部接口,进行系统集成。
数据类型:
这里介绍基本的OT数据类型。用户在编写程序时,变量的格式必须与指令的数据类型相匹配。基本数据类型的操作数通常是32位以内的数据。基本数据类型可包括位数据类型和数学数据类型。
位数据类型:主要有布尔型(Bool)、字节型(Byte)、字型(Word)、双字型(DWord),对于S7-1500 PLC,还支持长字型(LWord)。在位数据类型中,只表示存储器中各位的状态是0(FALSE)还是1(TURE)。其长度可以是一位(Bit)、一个字节(Byte,8位)、一个字(Word,16位)、一个双字(double word ,32位)或者一个长字(long word,64位),分别对应Bool、Byte、Word、DWord和LWord类型。位数据类型通常用二进制或十六进制格式赋值,如2#01010101/16#283C等。需注意的是,一位布尔型数据类型不能直接赋常数值。位数据类型的常数表示需要在数据之前根据存储单元长度( Byte、Word、DWord、LWord)加上B#、W#、DW#或LW#(但Bool型除外)。
数学数据类型:数学数据类型主要有整数类型和实数类型(浮点数类型)。
整数类型又分为有符号整数类型和无符号整数类型。有符号整数类型包括短整数型(SInt)、整数型(Int)、双整数型(DInt)和长整数型(LInt);无符号整数类型包括无符号短整数型(USInt)、无符号整数型(UInt)、无符号双整数型(UDInt)和无符号长整数型(ULInt)。短整数型、整数型、双整数型和长整数型数据为有符号整数,分别为8位、16位、32位和64位,在存储器中用二进制补码表示,最高位为符号位(0表示正数,1表示负数),其余各位为数值位。而无符号短整数型、无符号整数型、无符号双整数型和无符号长整数型数据均为无符号整数,每一位均为有效数值。
实数类型具体包括实数型(Real)和长实数型(LReal),均为有符号的浮点数,分别占用32位和64位,最高位为符号位(0表示正数,1表示负数),接下来的8位(或11位)为指数位,剩余位为尾数位,共同构成实数数值。实数的特点是利用有限的32位或64位可以表示一个很大的数,也可以表示一个很小的数。
威胁检测是在网络、系统或应用程序中发现威胁的过程。此术语与计算机安全有关。威胁是指可能对计算机系统或网络造成损害的任何事物。重要的是,威胁与攻击并不相同。威胁表示可能发生的攻击;攻击是侵入或损害计算机或网络的行为。一种更高级的威胁形式,即高级持久威胁(APT),顾名思义,威胁是复杂的,并且会在网络中保留很长一段时间,从而使攻击者有更长的行动时间。所以,威胁检测这个想法是在威胁被利用为攻击之前就对其进行检测。威胁检测是网络安全团队的第一要务。如果在网络中甚至都没有看到“坏人”,那将无法做出适当的响应。但是,由于潜在的威胁和对手很多,部署适当的威胁检测似乎是一项艰巨的任务。分解威胁检测和对最基本元素的响应可以使情况更加清晰。
白名单(White List)可以简单地理解为设置能通过的“用户”,与黑名单相对应,白名单以外的“用户”都不能通过。白名单的基本工作原理是通过识别系统中的进程或文件是否具有经批准的属性、常见进程名称、文件名称、发行商名称、数字签名等。白名单技术能够让企业批准哪些进程是被允许在特定系统中运行的。有些供应商产品只包括可执行文件,而其他产品还包括脚本和宏,并可以阻止更广泛的文件。其中,一种越来越受欢迎的白名单方法被称为“应用控制”,这种方法专门侧重于管理端点应用的行为。白名单技术可以抵御恶意软件和有针对性的攻击,因为在默认情况下,任何未经批准的软件、工具和进程都不能在端点上运行。如果恶意软件试图在启用了白名单的端点上安装,白名单技术会确定这不是可信进程,并否定其运行权限。白名单技术不仅可以用来阻止进程的安装,还可以用来提供警报。白名单可以帮助抵御高级内存注入攻击;该技术提供了功能来验证内存中运行的所有经批准的进程,并确保这些进程在运行时没有被修改,从而抵御高级内存漏洞利用。高级攻击通常涉及操纵合法应用。当这种高级攻击涉及内存违规、可疑进程行为、配置更改或操作系统篡改时,白名单产品可以识别并发出警报。
本申请实施例方案,参照图1,图1为本申请工控威胁检测装置所属工控设备的功能模块示意图。该工控威胁检测装置可以为独立于工控设备的、能够进行通信协议解析、工控威胁检测、规则学习与匹配的装置,其可以通过硬件或软件的形式承载于工控设备上。该工控设备可以为IPC、PLC等具有数据处理功能的工业控制计算器或控制系统等。
在本实施例中,该工控威胁检测装置所属工控设备至少包括输出模块110、处理器120、存储器130以及通信模块140。
存储器130中存储有操作系统以及工控威胁检测程序,工控威胁检测装置可以将获取到的由PLC传输的历史的Modbus协议报文和待检测的Modbus协议报文,对上述协议报文进行解析得到的历史的协议报文的解析内容以及待检测的协议报文的解析内容,提取到的解析内容的协议特征,根据协议特征生成的Modbus协议匹配规则,根据Modbus协议匹配规则输出的Modbus协议匹配结果,可供人机交互的规则配置页面和规则修改页面,获取到的通过规则配置页面或规则修改页面配置的规则参数,基于规则参数生成的值域控制规则,获取到的待检测的协议报文的数据类型和值字段,与待检测的协议报文的OT数据类型所对应的IT数据类型,根据IT数据类型对待检测的协议报文的值字段进行切分所得到的数值,根据值域控制规则输出的值域匹配结果,产生的告警信息,对Modbus协议报文进行阻断的程序等信息存储于该存储器130中;输出模块110可为显示屏等。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。
其中,存储器130中的工控威胁检测程序被处理器执行时实现以下步骤:
获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;
对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;
根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;
若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;
若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
进一步地,存储器130中的工控威胁检测程序被处理器执行时还实现以下步骤:
生成所述Modbus协议匹配规则,具体包括:
获取PLC传输的历史的Modbus协议报文;
对历史的协议报文进行协议解析,得到所述历史的协议报文的解析内容;
提取所述历史的协议报文的解析内容的协议特征;
基于所述协议特征生成所述Modbus协议匹配规则。
进一步地,存储器130中的工控威胁检测程序被处理器执行时还实现以下步骤:
为所述待检测的协议报文的解析内容添加值域控制规则,具体包括:
提供可供人机交互的规则配置页面;
获取通过所述规则配置页面配置的规则参数;
基于所述规则参数生成所述值域控制规则,并将所述值域控制规则添加在所述待检测的协议报文的解析内容上。
进一步地,存储器130中的工控威胁检测程序被处理器执行时还实现以下步骤:
获取所述待检测的协议报文的数据类型和值字段,其中,所述待检测的协议报文的数据类型为组态软件输出的OT数据类型;
判断所述待检测的协议报文的数据类型是否与所述值域控制规则中配置的数据类型相匹配;
若匹配,则将所述待检测的协议报文的所述OT数据类型转换成对应的IT数据类型;
根据所述IT数据类型,对所述待检测的协议报文的所述值字段进行切分,得到切分后的数值;
将切分后的所述数值与所述值域控制规则中配置的值域范围进行比对,得到所述值域匹配结果。
进一步地,存储器130中的工控威胁检测程序被处理器执行时还实现以下步骤:
若所述待检测的协议报文的解析内容没有添加所述值域控制规则,则输出Modbus协议匹配结果。
进一步地,存储器130中的工控威胁检测程序被处理器执行时还实现以下步骤:
若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断。
进一步地,存储器130中的工控威胁检测程序被处理器执行时还实现以下步骤:
提供可供人机交互的规则修改页面;
获取用户通过所述规则修改页面修改后的规则参数;
基于所述修改后的规则参数生成新的值域控制规则,并将所述新的值域控制规则添加在所述待检测的协议报文的解析内容上,重新进行Modbus值域匹配,并得到新的值域匹配结果。
本实施例通过上述方案,具体通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
基于上述工控设备架构但不限于上述架构,提出本申请方法实施例。
参照图2,图2为本申请工控威胁检测方法第一示例性实施例的流程示意图。所述工控威胁检测方法包括:
步骤S1,获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文。
具体地,获取经过可编程逻辑控制器PLC传输的需等待进行工控威胁检测的施耐德Modbus协议报文。其中,工控威胁检测可由工控设备内设的工控威胁检测功能单元来完成。通常地,Modbus采用主从式通信模式,即Modbus主站向Modbus从站发送请求报文,Modbus从站依照协议规约给出应答响应。在本实施例中,待检测的Modbus协议报文可为Modbus主站向Modbus从站发送的请求报文,或可为其他协议主站向Modbus从站发送的请求报文,在经Modbus从站的PLC接收后,储存并传输至下一功能模块等待处理,其中,下一功能模块可以为协议解析模块。
步骤S2,对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容。
具体地,对获取到的经PLC传输的待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容。更为具体地,Modbus协议报文的组成可分为信息头和帧结构,其中帧结构一般包括了地址码、功能码、数据区和错误校验码。以Modbus/TCP协议为例,其组成主要包括:MBAP报文头(即信息头)和帧结构PDU(即功能码和数据),其中,MBAP报文头是一种专用报文头,通过它能够在TCP/IP上识别Modbus应用数据单元,然而由于TCP自带CRC校验,所以无需添加任何其他校验码。
步骤S3,根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配。
具体地,通过根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配,检测所获取的待检测的协议报文是否符合Modbus协议的规定,同时采用“白名单”的访问控制模式,过滤掉异常的畸形数据报文,保证Modbus主站与Modbus从站之间通信数据的正确性。其中,所述Modbus协议匹配规则可以是通用的协议规约,也可以是人为设定的协议匹配规则,还可以是通过规则学习生成的协议匹配规则等。
步骤S4,若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则。
具体地,若所述待检测的协议报文在进行协议解析后,基于其解析内容通过了Modbus协议匹配,则判断所述待检测的协议报文的解析内容是否预先添加有值域控制规则。其中,值域控制规则基于协议报文的数据区所设,用于根据预设的数据类型和预先配置的值域范围对协议报文的数据进行值域监控,换句话说,是将所述协议报文的数据类型和具体数值与值域控制规则中设置的数据类型和值域范围作比较,从而实现对协议报文的值域控制。值域控制规则的添加可以在获取待检测的协议报文之前的任一环节添加,也可以在协议解析之前的任一环节添加,还可以在进行Modbus协议匹配之前的任一环节添加;添加的方式可以是在整体流程设计时的固定添加,也可以是可通过人机交互来设置的实时添加。
步骤S5,若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
具体地,若经判断后所述待检测的协议报文的解析内容已添加有值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并输出值域匹配结果。由于Modbus协议本身无数据类型,所以在对Modbus协议进行值域匹配的过程中,需要先根据协议报文的解析内容对所述协议报文的数据类型进行定义,然后,基于协议报文的数据类型与值域控制规则中配置的数据类型进行对应,再根据对应后的数据类型确定所述协议报文所携带的具体数值,最后将所有数值与值域控制规则中配置的值域范围进行匹配,得到值域匹配结果。另外,还可根据得到的值域匹配结果,结合“白名单”模式,更加细致地保障Modbus从站不被非法访问。
本实施例通过上述方案,具体通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
参照图3,图3为本申请工控威胁检测方法第二示例性实施例的流程示意图。基于上述图2所示的实施例,在本实施例中,在获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文的步骤之前,所述工控威胁检测方法还包括:
步骤S010,生成所述Modbus协议匹配规则。本实施例以步骤S010在步骤S1之前实施,在其他实施例中,步骤S010也可以在步骤S1与步骤S3之间实施。
相比上述图2所示的实施例,本实施例还包括生成所述Modbus协议匹配规则的方案。
具体地,生成所述Modbus协议匹配规则的步骤可以包括:
步骤S011,获取PLC传输的历史的Modbus协议报文。具体地通过获取经PLC传输的历史的Modbus协议报文作为学习数据集。
步骤S012,对历史的协议报文进行协议解析,得到所述历史的协议报文的解析内容。
具体地,对学习数据集内历史的Modbus协议报文进行协议解析,得到所述历史的协议报文的解析内容,其中,所述历史的协议报文的解析内容可以包括协议报文的信息头、地址码、功能码、数据区和错误校验码等信息。
步骤S013,提取所述历史的协议报文的解析内容的协议特征。
具体地,基于协议解析后所得到的历史的协议报文的解析内容,提取所述历史的协议报文的解析内容的协议特征,其中,所述协议特征是指与Modbus协议匹配规则相关的特征,并可用于生成所述Modbus协议匹配规则。
步骤S014,基于所述协议特征生成所述Modbus协议匹配规则。
具体地,通过将提取到的协议特征输送至预先搭建的规则学习模型架构中,学习并生成所述Modbus协议匹配规则。
本实施例方案具体通过获取PLC传输的历史的Modbus协议报文;对历史的协议报文进行协议解析,得到所述历史的协议报文的解析内容;提取所述历史的协议报文的解析内容的协议特征;基于所述协议特征生成所述Modbus协议匹配规则,实现了基于Modbus协议的协议特征进行协议匹配的方法,能够有效地识别异常的非法的通信数据流,提高工控设备的安全性。
进一步地,如图4所示,图4为本申请工控威胁检测方法第三示例性实施例的整体流程示意图。基于上述图3所示的实施例,在本实施例中,在获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文的步骤之前,所述工控威胁检测方法还包括:
步骤S020,为所述待检测的协议报文的解析内容添加值域控制规则。本实施例以步骤S010在步骤S1之前实施,在其他实施例中,步骤S010也可以在步骤S1与步骤S4之间实施。
相比上述图3所示的实施例,本实施例还包括为所述待检测的协议报文的解析内容添加值域控制规则的方案。
如图5所示,图5为本申请实施例中为所述待检测的协议报文的解析内容添加值域控制规则的流程示意图。具体地,为所述待检测的协议报文的解析内容添加值域控制规则的步骤可以包括:
步骤S021,提供可供人机交互的规则配置页面。
具体地,提供可供人机交互的规则配置页面,通过所述规则配置页面,用户可根据实际工控需求配置所需规则参数。可以理解的,由于Modbus协议本身没有数据类型,所以学习到的数据无法直接转变成规则。因此,可以提供一个可供人机交互的规则配置页面,人为介入指定数据类型以及值域范围,以供进行Modbus值域匹配。更为具体地,所述规则配置页面提供了不同数据类型的支持,用户可以按照相应的组态软件上的数据类型对应到规则配置页面的数据类型,完成相关规则参数的设定。
步骤S022,获取通过所述规则配置页面配置的规则参数。
具体地,用户通过所述规则配置页面完成相关规则参数的配置后,获取配置后的规则参数。其中,所述规则参数是与协议报文相关的参数,并且可用于生成值域控制规则,所述规则参数包括但不限于:传统协议、工业协议、源IP、目的IP、点位名称、点位信息、设备地址、功能码、起始地址、终止地址、数据类型、值域范围、动作、敏感度。
步骤S023,基于所述规则参数生成所述值域控制规则,并将所述值域控制规则添加在所述待检测的协议报文的解析内容上。
具体地,将获取到的规则参数生成用以监测协议报文的值域控制规则,并将生成的值域控制规则添加在所述待检测的协议报文的解析内容上,用以对待检测的协议报文的解析内容进行值域监测。以水位控制开关的值域匹配过程为例,在获取用户配置的已知的组态软件寄存器地址、PLC地址、功能码、数据类型和值域范围,动作选择告警等相关的规则参数后,将所述规则参数生成用以监测其解析内容与水位控制开关相关的协议报文的值域控制规则,并将所述值域控制规则添加在与水位控制开关相关的协议报文的解析内容上,用以对该解析内容进行值域监测。
本实施例方案具体通过提供可供人机交互的规则配置页面;获取通过所述规则配置页面配置的规则参数;基于所述规则参数生成所述值域控制规则,并将所述值域控制规则添加在所述待检测的协议报文的解析内容上,实现了在值域匹配过程中对待检测的协议报文的值域匹配规则的添加,更符合在实际工控环境中对值域监控的准确性、实时性需求。
进一步,如图6所示,图6为本申请工控威胁检测方法第四示例性实施例的流程示意图。基于上述图4所示的实施例,在本实施例中,上述步骤S5,若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果,可以包括:
步骤S51,获取所述待检测的协议报文的数据类型和值字段,其中,所述待检测的协议报文的数据类型为组态软件输出的OT数据类型。
具体地,获取所述待检测的协议报文的数据类型和值字段,可以理解的,由于Modbus协议本身无数据类型,所以,获取到的所述数据类型是由组态软件输出的OT数据类型。所述待检测的协议报文的值字段可由解析内容的数据区得到。
步骤S52,判断所述待检测的协议报文的数据类型是否与所述值域控制规则中配置的数据类型相匹配。
具体地,通过将获取到的待检测的协议报文的OT数据类型与所述值域控制规则中配置的数据类型作对比,判断两者是否相匹配。其中,在通过可供人机交互的规则配置页面进行规则参数配置时,所述规则配置页面所显示的数据类型为OT数据类型。换句话说,所述值域控制规则在配置数据类型时,通过规则配置页面配置的数据类型为OT数据类型。
步骤S53,若匹配,则将所述待检测的协议报文的所述OT数据类型转换成对应的IT数据类型。
具体地,若所述待检测的协议报文的OT数据类型与所述值域控制规则中配置的OT数据类型相匹配,则通过后台运算将所述待检测的协议报文的OT数据类型转换成对应的IT数据类型。其中,OT数据类型与IT数据类型的转换对应关系如下表一所示:
Figure 531959DEST_PATH_IMAGE001
表一:OT数据类型与IT数据类型的转换对应关系
可以理解的,OT行业的数据类型的表示并不像IT行业的一样,IT行业的数据类型可按照bool、u8、u16、u32、u64、s8、s16、s32、s64、real等来表示。通过上述表一所示的对应关系可以将OT数据类型转换成IT数据类型。
步骤S54,根据所述IT数据类型,对所述待检测的协议报文的所述值字段进行切分,得到切分后的数值。
具体地,根据对应转换后的IT数据类型,对获取到的所述待检测的协议报文的值字段按照其所占数据大小进行切分,得到切分后的数值。以协议报文的OT数据类型为WORD为例,将OT数据类型WORD对应转换成IT数据类型u16,已知u16所占数据大小为16bit,则将协议报文的值字段按照每16bit切分一次,直到切分至最后1bit,得到所有切分后的数值。
步骤S55,将切分后的所述数值与所述值域控制规则中配置的值域范围进行比对,得到所述值域匹配结果。
具体地,将得到的所有切分后的数值与所述值域控制规则中配置的值域范围进行比对,判断所述数值是否与配置的值域范围相匹配,并得到所有数值的值域匹配结果。
相比现有技术,本实施例方案,提出一种新的工控威胁检测方法,并具体通过获取所述待检测的协议报文的数据类型和值字段,其中,所述待检测的协议报文的数据类型为组态软件输出的OT数据类型;判断所述待检测的协议报文的数据类型是否与所述值域控制规则中配置的数据类型相匹配;若匹配,则将所述待检测的协议报文的所述OT数据类型转换成对应的IT数据类型;根据所述IT数据类型,对所述待检测的协议报文的所述值字段进行切分,得到切分后的数值;将切分后的所述数值与所述值域控制规则中配置的值域范围进行比对,得到所述值域匹配结果。提供了通用的OT-IT数据类型转换融合方案,能适应更多的无数据类型支持的协议的值域控制,打通OT-IT行业间的技术壁垒,促进多元化共同发展,为工控安全发展添砖增瓦。
进一步地,基于上述图6所示的实施例,在本实施例中,上述步骤S4,若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则的步骤之后,还可以包括:步骤S41,若所述待检测的协议报文的解析内容没有添加所述值域控制规则,则输出Modbus协议匹配结果。
具体地,若所述待检测的协议报文在进行协议解析后,基于其解析内容通过了Modbus协议匹配,且在经判断后得到所述待检测的协议报文的解析内容没有添加值域控制规则,则输出该协议报文的Modbus协议匹配结果。可以理解的,对于无需进行Modbus值域匹配的协议报文,可节省该环节;对于需要但未添加值域控制规则的协议报文,可通过输出的Modbus协议匹配结果提示“未添加值域控制规则”。
本实施例通过上述方案,构建完善的工控威胁检测方法,保障工控系统的安全性。
进一步地,上述步骤S5,若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果的步骤之后,还可以包括:步骤S60,若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断。
具体地,参考图7,图7为本申请工控威胁检测方法第五示例性实施例涉及的事件详情页面示意图。如果切分后的数值超出了所述值域控制规则所配置的值域范围,则通过事件详情页面产生告警信息,和/或可通过规则配置页面设置阻断,以对所述超范围的Modbus协议报文实行阻断。
本实施例方案,通过精细到值域控制范围,对超范围的Modbus协议报文进行告警并阻断,既能对威胁事件做到审计,又能实行防护,确保重要资产不被恶意攻击。
进一步地,参照图8,图8为本申请工控威胁检测方法第五示例性实施例的步骤S60的细化流程示意图。上述步骤S60,若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断的步骤之后,还可以包括:
步骤S61,提供可供人机交互的规则修改页面。具体地,提供可供人机交互的规则修改页面,通过所述规则修改页面,用户可根据实际工控需求修改配置的规则参数。
步骤S62,获取用户通过所述规则修改页面修改后的规则参数。具体地,用户通过所述规则修改页面修改配置过的规则参数后,获取修改后的规则参数。
步骤S63,基于所述修改后的规则参数生成新的值域控制规则,并将所述新的值域控制规则添加在所述待检测的协议报文的解析内容上,重新进行Modbus值域匹配,并得到新的值域匹配结果。
具体地,将获取到的修改后的规则参数,与未被修改过的已配置的规则参数,共同生成新的值域控制规则,并将新生成的值域控制规则添加在所述待检测的协议报文的解析内容上,用以对待检测的协议报文的解析内容重新进行Modbus值域匹配,并得到新的值域匹配结果,根据所述新的值域匹配结果重新排查安全隐患。
本实施例通过上述方案,具体通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
参考图9,图9为本申请工控威胁检测方法第六示例性实施例的流程示意图。在本实施例中提供了一种工控威胁检测方法,并具体通过学习阶段和匹配阶段来实现。所述工控威胁检测方法包括:
首先是学习阶段,具体通过获取PLC传输的历史的Modbus协议报文;对历史的协议报文进行协议解析,得到所述历史的协议报文的解析内容;提取所述历史的协议报文的解析内容的协议特征,并基于所述协议特征将所述解析内容处理成Modbus协议匹配规则;将所述Modbus协议匹配规则提供给用户,以对所述规则进行管理。
然后是匹配阶段,具体通过获取PLC传输的待检测的Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;将所述待检测的协议报文的解析内容交给工控威胁检测模块进行检测,其中,所述工控威胁检测模块的功能包括根据Modbus协议匹配规则进行Modbus协议匹配,以及根据值域控制规则进行Modbus值域匹配;根据所述工控威胁检测模块的检测结果上报事件;获取用户对所述上报事件的处理结果,其中所述处理结果包括用户修改的规则或手动添加的规则;基于用户的所述处理结果重新排查安全隐患。
本实施例通过上述方案,具体通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
此外,本申请实施例还提出一种工控威胁检测装置,所述工控威胁检测装置包括:
协议获取模块,用于获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;
协议解析模块,用于对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;
协议匹配模块,用于根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;
规则判断模块,用于若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;
值域匹配模块,用于若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
本实施例实现工控威胁检测的原理及实施过程,请参照上述各实施例,在此不再一一赘述。
此外,本申请实施例还提出一种工控设备,所述工控设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的工控威胁检测程序,所述工控威胁检测程序被所述处理器执行时实现如上所述的工控威胁检测方法的步骤。
由于本工控威胁检测程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
此外,本申请实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有工控威胁检测程序,所述工控威胁检测程序被处理器执行时实现如上所述的工控威胁检测方法的步骤。
由于本工控威胁检测程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。
相比现有技术,本申请实施例提出的工控威胁检测方法、装置、工控设备以及存储介质,通过获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。基于本申请方案,通过将Modbus协议解析与工控数据类型进行融合,实现更多无数据类型支持的协议的值域控制,粒度更精细,使得工控系统的安全效果得到有效提升,最后经过本申请方法解决了无法对Modbus协议的值域范围进行监控的问题,形成可以支持不同厂家对于不同数据类型的值域控制,提高了工控安全的准确性和易用性。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台工控设备执行本申请每个实施例的方法。
以上仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (10)

1.一种工控威胁检测方法,其特征在于,所述工控威胁检测方法包括:
获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;
对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;
根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;
若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;
若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
2.根据权利要求1所述的工控威胁检测方法,其特征在于,所述获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文的步骤之前,还包括:
生成所述Modbus协议匹配规则,具体包括:
获取PLC传输的历史的Modbus协议报文;
对历史的协议报文进行协议解析,得到所述历史的协议报文的解析内容;
提取所述历史的协议报文的解析内容的协议特征;
基于所述协议特征生成所述Modbus协议匹配规则。
3.根据权利要求2所述的工控威胁检测方法,其特征在于,所述获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文的步骤之前,还包括:
为所述待检测的协议报文的解析内容添加值域控制规则,具体包括:
提供可供人机交互的规则配置页面;
获取通过所述规则配置页面配置的规则参数;
基于所述规则参数生成所述值域控制规则,并将所述值域控制规则添加在所述待检测的协议报文的解析内容上。
4.根据权利要求3所述的工控威胁检测方法,其特征在于,所述若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果的步骤包括:
获取所述待检测的协议报文的数据类型和值字段,其中,所述待检测的协议报文的数据类型为组态软件输出的OT数据类型;
判断所述待检测的协议报文的数据类型是否与所述值域控制规则中配置的数据类型相匹配;
若匹配,则将所述待检测的协议报文的所述OT数据类型转换成对应的IT数据类型;
根据所述IT数据类型,对所述待检测的协议报文的所述值字段进行切分,得到切分后的数值;
将切分后的所述数值与所述值域控制规则中配置的值域范围进行比对,得到所述值域匹配结果。
5.根据权利要求4所述的工控威胁检测方法,其特征在于,所述若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则的步骤之后,还包括:
若所述待检测的协议报文的解析内容没有添加所述值域控制规则,则输出Modbus协议匹配结果。
6.根据权利要求5所述的工控威胁检测方法,其特征在于,所述若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果的步骤之后,还包括:
若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断。
7.根据权利要求6所述的工控威胁检测方法,其特征在于,所述若切分后的所述数值超出了所述值域控制规则所配置的值域范围,则产生告警信息,和/或对所述Modbus协议报文进行阻断的步骤之后,还包括:
提供可供人机交互的规则修改页面;
获取用户通过所述规则修改页面修改后的规则参数;
基于所述修改后的规则参数生成新的值域控制规则,并将所述新的值域控制规则添加在所述待检测的协议报文的解析内容上,重新进行Modbus值域匹配,并得到新的值域匹配结果。
8.一种工控威胁检测装置,其特征在于,所述工控威胁检测装置包括:
协议获取模块,用于获取可编程逻辑控制器PLC传输的待检测的施耐德Modbus协议报文;
协议解析模块,用于对待检测的协议报文进行协议解析,得到所述待检测的协议报文的解析内容;
协议匹配模块,用于根据Modbus协议匹配规则对所述待检测的协议报文的解析内容进行Modbus协议匹配;
规则判断模块,用于若匹配通过,则判断所述待检测的协议报文的解析内容是否添加有值域控制规则;
值域匹配模块,用于若所述待检测的协议报文的解析内容添加有所述值域控制规则,则对所述待检测的协议报文的解析内容进行Modbus值域匹配,并得到值域匹配结果。
9.一种工控设备,其特征在于,所述工控设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的工控威胁检测程序,所述工控威胁检测程序被所述处理器执行时实现如权利要求1-7中任一项所述的工控威胁检测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有工控威胁检测程序,所述工控威胁检测程序被处理器执行时实现如权利要求1-7中任一项所述的工控威胁检测方法的步骤。
CN202210919114.0A 2022-08-02 2022-08-02 工控威胁检测方法、装置、工控设备以及存储介质 Active CN114978782B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210919114.0A CN114978782B (zh) 2022-08-02 2022-08-02 工控威胁检测方法、装置、工控设备以及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210919114.0A CN114978782B (zh) 2022-08-02 2022-08-02 工控威胁检测方法、装置、工控设备以及存储介质

Publications (2)

Publication Number Publication Date
CN114978782A true CN114978782A (zh) 2022-08-30
CN114978782B CN114978782B (zh) 2022-11-01

Family

ID=82968672

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210919114.0A Active CN114978782B (zh) 2022-08-02 2022-08-02 工控威胁检测方法、装置、工控设备以及存储介质

Country Status (1)

Country Link
CN (1) CN114978782B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115801643A (zh) * 2022-10-28 2023-03-14 北京六方云信息技术有限公司 协议解析功能的测试方法、装置、终端设备及存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105429963A (zh) * 2015-11-04 2016-03-23 北京工业大学 基于Modbus/Tcp的入侵检测分析方法
WO2018157336A1 (zh) * 2017-03-01 2018-09-07 西门子公司 数据处理装置和方法
US20200097430A1 (en) * 2018-09-20 2020-03-26 Rockwell Automation Technologies, Inc. Systems and methods for automatically mapping between operation technology data and information technology data
CN111083149A (zh) * 2019-12-23 2020-04-28 北京简网科技有限公司 Modbus协议的变量数据检测分析方法及装置
CN111600863A (zh) * 2020-05-08 2020-08-28 杭州安恒信息技术股份有限公司 网络入侵检测方法、装置、系统和存储介质
CN113923025A (zh) * 2021-10-09 2022-01-11 北京天地和兴科技有限公司 一种工控网络中的威胁检测方法
CN114244609A (zh) * 2021-12-17 2022-03-25 北京国泰网信科技有限公司 用于工业防火墙的Modbus TCP协议防护方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105429963A (zh) * 2015-11-04 2016-03-23 北京工业大学 基于Modbus/Tcp的入侵检测分析方法
WO2018157336A1 (zh) * 2017-03-01 2018-09-07 西门子公司 数据处理装置和方法
CN110574348A (zh) * 2017-03-01 2019-12-13 西门子股份公司 数据处理装置和方法
US20200097430A1 (en) * 2018-09-20 2020-03-26 Rockwell Automation Technologies, Inc. Systems and methods for automatically mapping between operation technology data and information technology data
CN111083149A (zh) * 2019-12-23 2020-04-28 北京简网科技有限公司 Modbus协议的变量数据检测分析方法及装置
CN111600863A (zh) * 2020-05-08 2020-08-28 杭州安恒信息技术股份有限公司 网络入侵检测方法、装置、系统和存储介质
CN113923025A (zh) * 2021-10-09 2022-01-11 北京天地和兴科技有限公司 一种工控网络中的威胁检测方法
CN114244609A (zh) * 2021-12-17 2022-03-25 北京国泰网信科技有限公司 用于工业防火墙的Modbus TCP协议防护方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115801643A (zh) * 2022-10-28 2023-03-14 北京六方云信息技术有限公司 协议解析功能的测试方法、装置、终端设备及存储介质
CN115801643B (zh) * 2022-10-28 2023-09-22 北京六方云信息技术有限公司 协议解析功能的测试方法、装置、终端设备及存储介质

Also Published As

Publication number Publication date
CN114978782B (zh) 2022-11-01

Similar Documents

Publication Publication Date Title
CN101385012B (zh) 在装置间使用关于恶意应用程序行为的信息的设备和方法
US8667589B1 (en) Protection against unauthorized access to automated system for control of technological processes
CN110462623B (zh) 用于基于角色的计算机安全配置的系统和方法
CN110476167A (zh) 基于上下文的计算机安全风险缓解的系统和方法
CN109766694B (zh) 一种工控主机的程序协议白名单联动方法及装置
CN100492300C (zh) 在微处理器实现的设备上执行进程的系统和方法
CN110099058B (zh) Modbus报文检测方法、装置、电子设备及存储介质
Serhane et al. Programmable logic controllers based systems (PLC-BS): Vulnerabilities and threats
KR20020055599A (ko) 병렬적인 시스템 실행 소프트웨어 시뮬레이터의보안감시장치
CN114978782B (zh) 工控威胁检测方法、装置、工控设备以及存储介质
Colbert et al. Intrusion detection in industrial control systems
CN111371752A (zh) 一种服务器的远程监控方法、装置、设备及介质
WO2023098407A1 (zh) Usb设备与被保护设备的通信控制方法、装置及电子设备
Køien Zero-trust principles for legacy components: 12 rules for legacy devices: an antidote to chaos
Hansch et al. Deriving impact-driven security requirements and monitoring measures for industrial IoT
RU2746105C2 (ru) Система и способ конфигурирования шлюза для защиты автоматизированных систем
CN1743992A (zh) 计算机操作系统安全防护方法
CN111328395A (zh) 用于提供对网络设备的硬件组件接口的受限访问的方法
US10623444B2 (en) Apparatus and method for analysis of binary targets to generate security policy
Xu et al. Identification of ICS Security Risks toward the Analysis of Packet Interaction Characteristics Using State Sequence Matching Based on SF‐FSM
Shang et al. ICS software trust measurement method based on dynamic length trust chain
CN106411816B (zh) 一种工业控制系统、安全互联系统及其处理方法
CN115296874A (zh) 一种计算机网络安全系统、方法、介质、设备及终端
CN115242608A (zh) 告警信息的生成方法、装置、设备及存储介质
Lee et al. Detection and analysis technique for manipulation attacks on PLC control logic

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
GR01 Patent grant
GR01 Patent grant