CN111308958B - 一种基于蜜罐技术的cnc设备仿真方法、***和工控蜜罐 - Google Patents
一种基于蜜罐技术的cnc设备仿真方法、***和工控蜜罐 Download PDFInfo
- Publication number
- CN111308958B CN111308958B CN201911111039.XA CN201911111039A CN111308958B CN 111308958 B CN111308958 B CN 111308958B CN 201911111039 A CN201911111039 A CN 201911111039A CN 111308958 B CN111308958 B CN 111308958B
- Authority
- CN
- China
- Prior art keywords
- equipment
- cnc
- plc
- industrial control
- access data
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05B—CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
- G05B19/00—Programme-control systems
- G05B19/02—Programme-control systems electric
- G05B19/18—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form
- G05B19/406—Numerical control [NC], i.e. automatically operating machines, in particular machine tools, e.g. in a manufacturing environment, so as to execute positioning, movement or co-ordinated operations by means of programme data in numerical form characterised by monitoring or safety
-
- 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/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Manufacturing & Machinery (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Programmable Controllers (AREA)
Abstract
本发明公开了基于蜜罐技术的CNC设备仿真方法、***和工控蜜罐,其中,工控设备包括可编程逻辑控制器PLC设备和数控机床CNC设备;CNC设备仿真方法,包括:将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,配置文件包括PLC设备和CNC设备的配置信息;根据PLC设备或CNC设备的配置信息,仿真模拟PLC设备或CNC设备;启动工控网络的监听线程,接收工控网络流入的访问数据;使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据。本发明的技术方案能够解决现有技术中工控***中CNC设备容易遭到入侵者攻击的问题。
Description
技术领域
本发明涉及工业控制技术领域,尤其涉及一种基于蜜罐技术的CNC设备仿真方法、***和工控蜜罐。
背景技术
工控***包括多件工控设备,是计算机及网络技术与工业生产的结合,也是包括交通、电力和能源等重要工业领域的组成部分。工业控制***直接关系到整个工业生产的稳定,一旦工控***遭到入侵将会带来严重后果,因此保护工控***的安全性至关重要。
目前,针对工控***安全性的审计检测方案大多是在原工控***上进行,从而进行实时或事后的审计和检测,这样会使得此类审计检测方案大多存在着一些不足,进而导致此类审计检测方案对工控***安全性的检测存在一定的滞后性和较高的误报率。
为了解决上述问题,现有技术通常采用蜜罐技术仿真模拟工控***中的可编程逻辑控制器PLC设备。蜜罐技术本质上是一种对攻击方进行欺骗的技术,通过布置一些作为诱饵的主机、网络服务或信息,诱使攻击方对它们实施攻击,以对攻击行为进行捕获和分析,了解攻击方所使用的工具与方法,推测攻击意图和动机,能够让防御方清晰地了解他们所面对的安全威胁,并通过技术和管理手段来增强实际***的安全防护能力。在工控***中,蜜罐技术能够引诱攻击者对蜜罐所仿真工控***中的PLC设备进行攻击,从而凭借其独立性及对工控***的无干扰性,有效提高安全检测精度,保护真实PLC设备的安全,进而维持工控***的稳定。
然而现有工控***中,大部分蜜罐技术主要是仿真模拟工控***中的PLC设备,而工控***中其他相关电子设备如数控机床CNC设备,也被广泛应用,容易遭到入侵者攻击;这样,原有的蜜罐技术难以做到对工控***的整体防护。
发明内容
本发明提供一种基于蜜罐技术的CNC设备仿真方法、***和工控蜜罐,旨在解决现有技术中工控***中可编程逻辑控制器PLC和数控机床CNC设备均容易遭到入侵者攻击的问题。
为实现上述目的,根据本发明的第一方面,本发明提出了一种基于蜜罐技术的CNC设备仿真方法,工控设备包括可编程逻辑控制器PLC设备和数控机床CNC设备;CNC设备仿真方法包括:
将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,配置文件包括PLC设备和CNC设备的配置信息;
根据PLC设备或CNC设备的配置信息,仿真模拟PLC设备或CNC设备;
启动工控网络的监听线程,接收工控网络流入的访问数据;
使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据。
优选地,上述CNC设备仿真方法中,根据PLC设备和CNC设备的配置信息,仿真模拟PLC设备或CNC设备的步骤,包括:
将PLC设备的装置表和映射内存注册至蜜罐服务器的内存中,根据PLC设备的装置表和映射内存模拟PLC设备;
或者,
将CNC设备的装置表和映射内存注册至蜜罐服务器的内存中,根据CNC设备的装置表和映射内存模拟CNC设备。
优选地,上述CNC设备仿真方法中,使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据的步骤,包括:
根据PLC协议或CNC协议对访问数据的报头进行特征匹配,判断访问数据是否符合PLC协议或CNC协议;
若判定访问数据符合PLC协议或CNC协议,则根据装置表和映射内存提取与访问数据匹配的响应数据,并将访问行为记录至数据库中;
若判定工控网络流入数据不符合PLC协议或CNC协议,则丢弃访问数据,并将访问行为记录至数据库中。
优选地,上述CNC设备仿真方法中,在仿真模拟PLC设备和CNC设备的步骤之前,方法还包括:
禁用蜜罐服务器中、除需要仿真模拟的PLC设备或CNC设备默认端口外的端口。
优选地,上述CNC设备仿真方法中,在使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据的步骤之前,方法还包括:
根据PLC协议或者CNC协议,判断访问数据与蜜罐服务器当前仿真的工控设备是否相符;
若访问数据与蜜罐服务器当前仿真的工控设备不符,则根据PLC设备和CNC设备的配置文件重新启动蜜罐服务器,切换至与访问数据相符的工控设备。
根据本发明的第二方面,本发明还提供了一种基于蜜罐技术的CNC设备仿真***,该工控设备包括可编程逻辑控制器PLC设备和数控机床CNC设备;CNC设备仿真***,包括:
加载模块,用于将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,配置文件包括PLC设备和CNC设备的配置信息;
仿真模块,用于根据PLC设备或CNC设备的配置信息,仿真模拟PLC设备或CNC设备;
接收模块,用于启动工控网络的监听线程,接收工控网络流入的访问数据;
处理模块,用于使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据。
优选地,在上述CNC设备仿真***,仿真模块包括:
第一注册子模块,用于将PLC设备的装置表和映射内存注册至蜜罐服务器的内存中;
第一模拟子模块,用于根据PLC设备的装置表和映射内存模拟PLC设备;
第二注册子模块,用于将CNC设备的装置表和映射内存注册至蜜罐服务器的内存中;
第二模拟子模块,用于根据CNC设备的装置表和映射内存模拟CNC设备。
优选地,在上述CNC设备仿真***中,处理模块包括:
匹配子模块,用于根据PLC协议或CNC协议对访问数据的报头进行特征匹配;
判断子模块,用于根据匹配结果,判断访问数据是否符合PLC协议或CNC协议;
提取子模块,用于若判定访问数据符合PLC协议或CNC协议时,根据装置表和映射内存提取与访问数据匹配的响应数据;或者,若判定工控网络流入数据不符合PLC协议或CNC协议,则丢弃访问数据;
记录子模块,用于将访问行为记录至数据库中。
优选地,上述CNC设备仿真***还包括:
禁用模块,用于禁用蜜罐服务器中、除需要仿真模拟的PLC设备或CNC设备默认端口外的端口。
根据本发明的第三方面,本发明还提供了一种工控蜜罐,包括:上述任一项技术方案所述的CNC设备仿真***。
本申请技术方案提供的基于蜜罐技术的CNC设备仿真方案,通过加载包括有PLC设备和CNC设备的配置信息的配置文件至蜜罐服务器,能够根据该配置信息仿真模拟PLC设备或CNC设备;从而在接入到工控网络后,当接收到工控网络流入的对PLC设备进行访问的访问数据时,能够仿真模拟PLC设备响应该访问数据,还能够在接收到工控网络流入的对CNC设备进行访问的访问数据时,仿真模拟CNC设备响应该访问数据。通过上述方式,能够解决了现有的蜜罐技术只能够模拟PLC设备,难以仿真模拟数控机床CNC设备,导致无法对工控***进行整体防护,实际工控网络中CNC设备容易遭到入侵的问题。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
图1是本发明实施例提供的一种应用场景示意图;
图2是本发明实施例提供的第一种基于蜜罐技术的CNC设备仿真方法的流程示意图;
图3是图2所示实施例提供的一种PLC设备仿真方法的流程示意图;
图4是图2所示实施例提供的一种CNC设备仿真方法的流程示意图;
图5是图2所示实施例提供的一种访问数据处理方法的流程示意图;
图6是本发明实施例提供的第二种基于蜜罐技术的CNC设备仿真方法的流程示意图;
图7是本发明实施例提供的第三种基于蜜罐技术的CNC设备仿真方法的流程示意图;
图8是本发明实施例提供的第四种基于蜜罐技术的CNC设备仿真方法的流程示意图;
图9是本发明实施例提供的第一种基于蜜罐技术的CNC设备仿真***的结构示意图;
图10是图9所示实施例提供的一种仿真模块的结构示意图;
图11是图9所示实施例提供的一种处理模块的结构示意图;
图12是本发明实施例提供的第二种基于蜜罐技术的CNC设备仿真***的结构示意图;
图13是本发明实施例提供的一种蜜网的结构示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,图1为本发明实施例提供的一种应用场景示意图。如图1所示,该应用场景包括蜜罐服务器1和工控网络2,其中,蜜罐服务器1用于仿真模拟可编程逻辑控制器PLC或数控机床CNC设备。蜜罐服务器1在仿真模拟PLC设备或CNC设备后,启动监听工控网络2的线程,接收从工控网络2流入的访问数据,模拟PLC或CNC设备响应该访问数据,从而进行伪装,保护真正的PLC设备和CNC设备。
其中,工控网络2包括工控设备,即真实的PLC设备和CNC设备;而蜜罐服务器1也可以作为工控网络2的一部分,接入外部访问工控网络2中PLC设备或CNC设备的访问数据。
为了实现蜜罐服务器对工控设备的仿真,具体可参见图2。图2为本发明实施例提供的一种基于蜜罐技术的CNC设备仿真方法的流程示意图。如图2所示,该CNC设备仿真方法应用于图1所示的蜜罐服务器中。其中,工控设备包括可编程逻辑控制器PLC设备和数控机床CNC设备;如图2所示,本发明实施例提供的CNC设备仿真方法包括:
S110:将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,配置文件包括PLC设备和CNC设备的配置信息。
首先,蜜罐服务器的主程序加载PLC设备和CNC设备的配置问及那,该配置文件包括PLC设备和CNC设备的配置信息,比如CNC设备和PLC设备的序列号、存放位置以及版本号等信息。通过将PLC设备和CNC设备的配置文件加载至蜜罐服务器,则蜜罐服务器能够根据该配置文件仿真模拟PLC设备或CNC设备,进而响应外部网络输入的访问PLC或CNC的访问数据,以保护真实的PLC设备和CNC设备免受干扰。
S120:根据PLC设备或CNC设备的配置信息,仿真模拟PLC设备或CNC设备。
在根据PLC设备或CNC设备的配置信息,仿真模拟PLC设备或CNC设备之前,需要根据实际模拟环境确定需要仿真模拟是PLC设备还是CNC设备,然后将对应的配置信息注入至蜜罐服务器中,以仿真模拟PLC设备或CNC设备,从而高效准确地处理外部访问数据。
其中,如图3所示,该步骤S120:根据PLC设备和CNC设备的配置信息,仿真模拟PLC设备或CNC设备的步骤具体包括以下内容:
S121:将PLC设备的装置表和映射内存注册至蜜罐服务器的内存中;
S122:根据PLC设备的装置表和映射内存模拟PLC设备;
其中,PLC设备的装置表包括PLC设备的装置信息,比如PLC设备内部各模块的存储位置和功能等;对应于装置表,PLC设备的映射内存包括对应装置表的映射关系和地址存放位置等信息。
将PLC设备的装置表和映射内存注册至蜜罐服务器的内存时,蜜罐服务器能够运行该PLC设备的装置表和映射内存,从而获取到PLC设备的装置表和映射内存中的信息,仿真模拟PLC设备。
或者如图4所示,
S123:将CNC设备的装置表和映射内存注册至蜜罐服务器的内存中。
S124:根据CNC设备的装置表和映射内存模拟CNC设备。
其中,CNC设备的装置表包括CNC设备的装置信息,如CNC设备内部各模块的存储位置和功能等,具体如CNC设备中各转动轴的坐标位置等信息;对应的,CNC设备的映射内存包括对应于CNC设备装置表的映射关系和地址存放位置等信息。通过将CNC设备的装置表和映射内存注册至蜜罐服务器的内存中,蜜罐服务器能够运行该PLC设备的装置表和映射内存,从而获取到CNC设备的装置表和映射内存中的信息,以仿真模拟PLC设备。
综上,通过获取PLC设备或CNC设备的装置表和映射内存等配置信息,能够通过PLC设备或CNC设备的装置表和映射内存等配置信息仿真模拟PLC设备或CNC设备。
S130:启动工控网络的监听线程,接收工控网络流入的访问数据。
蜜罐服务器连接工控网络的外部数据端口,当启动功率网络的监听线程后,能够通过该外部数据端口接收工控网络流入的访问数据;并且通过启动该工控网络的监听线程,能够通过仿真模拟得到的PLC设备和CNC设备响应工控网络流入的访问数据,从而能够替代真实的PLC设备和CNC设备响应该访问数据,避免真实PLC设备和CNC设备受到攻击和信息泄漏。
S140:使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据。
蜜罐服务器在仿真模拟PLC设备或CNC设备后,能够接入外部工控网络,通过外部工控网络流入的访问数据,使用对应的工控设备处理该访问数据,具体如发送该访问数据对应的响应数据,或者将访问数据发送至对应的监控***。因为本申请蜜罐服务器仿真模拟PLC设备或CNC设备,能够保护真实的PLC设备和CNC设备,解决真实工控网络中CNC设备容易遭到入侵的问题。
具体地,如图5所示,图2所示实施例提供的CNC设备仿真方法中,步骤S140:使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据,具体包括:
S141:根据PLC协议或CNC协议对访问数据的报头进行特征匹配,判断访问数据是否符合PLC协议或CNC协议。
具体地,数据包的报头用于控制信息的运载和传输数据包,通过解析访问数据的报头,与PLC协议或CNC协议进行特征匹配,能够确定该访问数据是PLC协议的访问数据还是CNC协议的访问数据。
具体地,使用PLC协议规定数据报头格式与该访问数据的报头格式和内容进行特征匹配,当特征匹配成功时,能够确认该访问数据符合PLC协议,从而交给仿真模拟得到的PLC设备进行处理;若PLC协议的特征不匹配,则使用CNC设备对该访问数据的报头格式和内容进行特征匹配,当特征匹配均成功时,即可确认该访问数据符合CNC协议,从而交给仿真模拟得到的CNC设备进行处理。
S142:若判定访问数据符合PLC协议或CNC协议,则根据装置表和映射内存提取与访问数据匹配的响应数据,并将访问行为记录至数据库中。
在判定访问数据符合PLC协议或CNC协议时,蜜罐服务器的主程序将继续解析该访问数据的功能码和请求内容,根据该功能码和请求内容提取注册内存或装置表中与该访问数据匹配的响应数据,并且将该访问行为记录到数据库中,当然也可以将该访问数据和来源信息同时存储至数据库中。
S143:若判定工控网络流入数据不符合PLC协议或CNC协议,则丢弃访问数据,并将访问行为记录至数据库中。
若该访问数据不符合PLC协议或CNC协议,为了避免PLC设备或CNC设备的设备信息泄漏,可直接丢弃该访问数据,从而保护PLC设备或CNC设备,同时将该访问行为记录到数据库中,方便后续追踪该访问数据。
综上,本申请实施例提供的基于蜜罐技术的CNC设备仿真方法,通过加载包括有PLC设备和CNC设备的配置信息的配置文件至蜜罐服务器,能够根据该配置信息仿真模拟PLC设备或CNC设备;从而在接入到工控网络后,当接收到工控网络流入的对PLC设备进行访问的访问数据时,能够仿真模拟PLC设备响应该访问数据,还能够在接收到工控网络流入的对CNC设备进行访问的访问数据时,仿真模拟CNC设备响应该访问数据。通过上述方式,能够解决了现有的蜜罐技术只能够模拟PLC设备,难以仿真模拟数控机床CNC设备,导致无法对工控***进行整体防护,实际工控网络中CNC设备容易遭到入侵的问题。
另外,为了仿真模拟PLC设备和CNC设备的模拟效果更加真实,降低外部设备识别的效果,如图6所示,在本申请实施例提供的CNC设备仿真方法中,在上述仿真模拟PLC设备和CNC设备的步骤之前,该CNC设备仿真方法还包括以下内容:
S210:禁用蜜罐服务器中、除需要仿真模拟的PLC设备或CNC设备默认端口外的端口。
通过在蜜罐服务器中,禁用除需要仿真模拟的PLC设备或CNC设备默认端口外的其他常见端口,能够增加该蜜罐服务器被识破的难度,从而达到更加逼真的模拟效果。
另外,因为同一蜜罐服务器不能够同时模拟PLC设备和CNC设备,而蜜罐服务器接入外部工控网络时,接收外部工控网络流入的访问数据可能为访问PLC设备的,也可能为访问CNC设备的访问数据,因此同一蜜罐服务器需要快速切换需要仿真的工控设备,以免被外部设备识破。为了解决该问题,如图7所示,本申请实施例提供的CNC设备仿真方法,在上述使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据的步骤之前,还包括以下内容:
S310:根据PLC协议或者CNC协议,判断访问数据与蜜罐服务器当前仿真的工控设备是否相符。
S320:若访问数据与蜜罐服务器当前仿真的工控设备不符,则根据PLC设备和CNC设备的配置文件重新启动蜜罐服务器,切换至与访问数据相符的工控设备。
本申请实施例提供的技术方案中,通过根据PLC协议或CNC协议,能够判断访问数据是否为蜜罐服务器当前所仿真的工控设备,例如蜜罐服务器当前仿真设备为PLC设备,而通过CNC协议判断接收到的访问数据为访问CNC设备的访问数据,则本申请能够通过CNC设备的配置文件重启蜜罐服务器,切换至与仿真数据相符的工控设备。
另外,参见图8,图8为本申请实施例提供的一种基于蜜罐技术的CNC设备仿真方法的流程示意图,如图8所示,该CNC设备仿真方法包括以下步骤:
S801:程序加载PLC设备和CNC设备的配置文件至蜜罐服务器,该配置文件包括PLC设备和CNC设备的配置信息。
S802:确认蜜罐服务器是需要模拟PLC设备还是需要模拟CNC设备。
S803:禁用除PLC设备或CNC设备默认端口外的端口。
S804:程序自动注册PLC设备或CNC设备的映射内存和装置表。
S805:启动监听线程。
S806:等待并获取外部访问数据。
S807:按PLC协议或CNC协议进行特征解析。
S808:判断特征是否匹配成功;若是,则执行步骤S809;若否,则执行步骤S814:日志记录本数据至数据库,然后执行步骤S815:丢弃数据;重新执行步骤S806。
S809:解析该访问数据的功能码和请求内容。然后执行步骤S810和S811。
S810:根据请求内容提取映射内存或装置表中的数据。
S811:日志记录访问数据行为至数据库。
S812:响应外部访问数据的访问请求。
S813:判断是否外部触发结束;若是,则结束线程;若否,则返回执行步骤S806。
基于上述方法实施例的同一构思,本发明实施例还提出基于蜜罐技术的CNC设备仿真***,用于实现本发明的上述方法,由于该***实施例解决问题的原理与方法相似,因此至少具有上述实施例的技术方案所带来的所有有益效果,在此不再一一赘述。
参见图9,图9为本发明实施例提供的一种基于蜜罐技术的CNC设备仿真***的结构示意图。其中,工控设备包括可编程逻辑控制器PLC设备和数控机床CNC设备;如图9所示,该CNC设备仿真***包括:
加载模块901,用于将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,配置文件包括PLC设备和CNC设备的配置信息;
仿真模块902,用于根据PLC设备或CNC设备的配置信息,仿真模拟PLC设备或CNC设备;
接收模块903,用于启动工控网络的监听线程,接收工控网络流入的访问数据;
处理模块904,用于使用仿真模拟的PLC设备或CNC设备,处理工控网络流入的访问数据。
本申请技术方案提供的基于蜜罐技术的CNC设备仿真***,通过加载模块901加载包括有PLC设备和CNC设备的配置信息的配置文件至蜜罐服务器,仿真模块902能够根据该配置信息仿真模拟PLC设备或CNC设备;从而在接入到工控网络后,当接收模块903接收到工控网络流入的对PLC设备进行访问的访问数据时,处理模块904能够仿真模拟PLC设备响应该访问数据,还能够在接收模块903接收到工控网络流入的对CNC设备进行访问的访问数据时,处理模块904仿真模拟CNC设备响应该访问数据。通过上述方式,本实施例提供的CNC设备仿真***能够解决现有的蜜罐技术只能够模拟PLC设备,难以仿真模拟数控机床CNC设备,导致无法对工控***进行整体防护,实际工控网络中CNC设备容易遭到入侵的问题。
其中,如图10所示,图9所示的CNC设备仿真***中,仿真模块902包括:
第一注册子模块9021,用于将PLC设备的装置表和映射内存注册至蜜罐服务器的内存中;
第一模拟子模块9022,用于根据PLC设备的装置表和映射内存模拟PLC设备;
第二注册子模块9023,用于将CNC设备的装置表和映射内存注册至蜜罐服务器的内存中;
第二模拟子模块9024,用于根据CNC设备的装置表和映射内存模拟CNC设备。
其中,如图11所示,在图9所示的CNC设备仿真***中,处理模块904包括:
匹配子模块9041,用于根据PLC协议或CNC协议对访问数据的报头进行特征匹配;
判断子模块9042,用于根据匹配结果,判断访问数据是否符合PLC协议或CNC协议;
提取子模块9043,用于若判定访问数据符合PLC协议或CNC协议时,根据装置表和映射内存提取与访问数据匹配的响应数据;或者,若判定工控网络流入数据不符合PLC协议或CNC协议,则丢弃访问数据;
记录子模块9044,用于将访问行为记录至数据库中。
另外,如图12所示,上述CNC设备仿真***还包括:
禁用模块905,用于禁用蜜罐服务器中、除需要仿真模拟的PLC设备或CNC设备默认端口外的端口。
另外,本申请还保护一种工控蜜罐,包括:上述任一项技术方案所述的CNC设备仿真***。
除此之外,本申请提供的工控蜜罐还可以与多个相同的工控蜜罐一起组网,组成工控蜜网。如图13所示,该工控蜜网包括:
云端虚拟数据采集与监控SCADA***3;
与SCADA***3相连的总控制蜜罐:西门子Siemens蜜罐4;
该Siemens蜜罐4通过交换机5与各个分属蜜罐相连,比如西门子Siemens子蜜罐6、莫迪康Modicon子蜜罐7、欧姆龙Omron子蜜罐8和三菱Mitsubishi子蜜罐9;各个蜜罐之间通过modbus通信总线相连通。
本发明计算机可读存储介质具体实施例与上述自动控制***的控制品质调整方法的各实施例基本相同,在此不再详细赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
应当注意的是,在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的单词“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是在本发明的发明构思下,利用本发明说明书及附图内容所作的等效结构变换,或直接/间接运用在其他相关的技术领域均包括在本发明的专利保护范围内。
Claims (10)
1.一种基于蜜罐技术的CNC设备仿真方法,其特征在于,用于工控设备,所述工控设备包括可编程逻辑控制器PLC设备和所述CNC设备;所述CNC设备仿真方法,包括:
将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,所述配置文件包括所述PLC设备和CNC设备的配置信息;
根据所述PLC设备或CNC设备的配置信息,仿真模拟所述PLC设备或所述CNC设备;
启动工控网络的监听线程,接收工控网络流入的访问数据;
使用仿真模拟的所述PLC设备或所述CNC设备,处理所述工控网络流入的访问数据。
2.根据权利要求1所述的CNC设备仿真方法,其特征在于,所述根据PLC设备和CNC设备的配置信息,仿真模拟PLC设备或CNC设备的步骤,包括:
将所述PLC设备的装置表和映射内存注册至所述蜜罐服务器的内存中,根据所述PLC设备的装置表和映射内存模拟所述PLC设备;
或者,
将所述CNC设备的装置表和映射内存注册至所述蜜罐服务器的内存中,根据所述CNC设备的装置表和映射内存模拟所述CNC设备。
3.根据权利要求2所述的CNC设备仿真方法,其特征在于,所述使用仿真模拟的PLC设备或CNC设备,处理所述工控网络流入的访问数据的步骤,包括:
根据PLC协议或CNC协议对所述访问数据的报头进行特征匹配,判断所述访问数据是否符合所述PLC协议或所述CNC协议;
若判定所述访问数据符合所述PLC协议或CNC协议,则根据所述装置表和映射内存提取与所述访问数据匹配的响应数据,并将访问行为记录至数据库中;
若判定所述工控网络流入数据不符合所述PLC协议或CNC协议,则丢弃所述访问数据,并将访问行为记录至所述数据库中。
4.根据权利要求1所述的CNC设备仿真方法,其特征在于,在所述仿真模拟所述PLC设备和CNC设备的步骤之前,所述方法还包括:
禁用所述蜜罐服务器中、除需要仿真模拟的所述PLC设备或CNC设备默认端口外的端口。
5.根据权利要求1所述的CNC设备仿真方法,其特征在于,在所述使用仿真模拟的所述PLC设备或所述CNC设备,处理所述工控网络流入的访问数据的步骤之前,所述方法还包括:
根据PLC协议或者CNC协议,判断所述访问数据与所述蜜罐服务器当前仿真的工控设备是否相符;
若所述访问数据与所述蜜罐服务器当前仿真的工控设备不符,则根据所述PLC设备和CNC设备的配置文件重新启动蜜罐服务器,切换至与所述访问数据相符的工控设备。
6.一种基于蜜罐技术的CNC设备仿真***,其特征在于,用于工控设备,所述工控设备包括可编程逻辑控制器PLC设备和数控机床CNC设备;所述CNC设备仿真***,包括:
加载模块,用于将PLC设备和CNC设备的配置文件加载至蜜罐服务器,其中,所述配置文件包括所述PLC设备和CNC设备的配置信息;
仿真模块,用于根据所述PLC设备或CNC设备的配置信息,仿真模拟所述PLC设备或所述CNC设备;
接收模块,用于启动工控网络的监听线程,接收工控网络流入的访问数据;
处理模块,用于使用仿真模拟的所述PLC设备或所述CNC设备,处理所述工控网络流入的访问数据。
7.根据权利要求6所述的CNC设备仿真***,其特征在于,所述仿真模块,包括:
第一注册子模块,用于将所述PLC设备的装置表和映射内存注册至所述蜜罐服务器的内存中;
第一模拟子模块,用于根据所述PLC设备的装置表和映射内存模拟所述PLC设备;
第二注册子模块,用于将所述CNC设备的装置表和映射内存注册至所述蜜罐服务器的内存中;
第二模拟子模块,用于根据所述CNC设备的装置表和映射内存模拟所述CNC设备。
8.根据权利要求7所述的CNC设备仿真***,其特征在于,所述处理模块,包括:
匹配子模块,用于根据PLC协议或CNC协议对所述访问数据的报头进行特征匹配;
判断子模块,用于根据匹配结果,判断所述访问数据是否符合所述PLC协议或所述CNC协议;
提取子模块,用于若判定所述访问数据符合所述PLC协议或CNC协议时,根据所述装置表和映射内存提取与所述访问数据匹配的响应数据;或者,若判定所述工控网络流入数据不符合所述PLC协议或CNC协议,则丢弃所述访问数据;
记录子模块,用于将访问行为记录至数据库中。
9.根据权利要求6所述的CNC设备仿真***,其特征在于,还包括:
禁用模块,用于禁用所述蜜罐服务器中、除需要仿真模拟的所述PLC设备或CNC设备默认端口外的端口。
10.一种工控蜜罐,其特征在于,包括:
权利要求6-9中任一项所述的CNC设备仿真***。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911111039.XA CN111308958B (zh) | 2019-11-14 | 2019-11-14 | 一种基于蜜罐技术的cnc设备仿真方法、***和工控蜜罐 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911111039.XA CN111308958B (zh) | 2019-11-14 | 2019-11-14 | 一种基于蜜罐技术的cnc设备仿真方法、***和工控蜜罐 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111308958A CN111308958A (zh) | 2020-06-19 |
CN111308958B true CN111308958B (zh) | 2021-04-20 |
Family
ID=71144758
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911111039.XA Active CN111308958B (zh) | 2019-11-14 | 2019-11-14 | 一种基于蜜罐技术的cnc设备仿真方法、***和工控蜜罐 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111308958B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113315647A (zh) * | 2020-09-14 | 2021-08-27 | 阿里巴巴集团控股有限公司 | 一种网络仿真方法和装置 |
CN112565278A (zh) * | 2020-12-08 | 2021-03-26 | 浙江国利网安科技有限公司 | 一种捕获攻击的方法及蜜罐*** |
WO2022197263A1 (en) * | 2021-03-17 | 2022-09-22 | Barikat Internet Guvenligi Bilisim Ticaret Anonim Sirketi | A honeypot for industrial control systems |
CN113162948B (zh) * | 2021-05-12 | 2022-07-26 | 上海交通大学宁波人工智能研究院 | 一种模块化工控蜜罐*** |
CN113923025A (zh) * | 2021-10-09 | 2022-01-11 | 北京天地和兴科技有限公司 | 一种工控网络中的威胁检测方法 |
CN114285599B (zh) * | 2021-11-23 | 2023-08-01 | 中国人民解放军战略支援部队信息工程大学 | 基于控制器深度内存仿真的工控蜜罐构建方法及工控蜜罐 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018044410A1 (en) * | 2016-09-01 | 2018-03-08 | Siemens Aktiengesellschaft | High interaction non-intrusive industrial control system honeypot |
CN107786532A (zh) * | 2016-08-31 | 2018-03-09 | 西门子公司 | 工业自动化***和云连接器中使用虚拟蜜罐的***和方法 |
CN107817756A (zh) * | 2017-10-27 | 2018-03-20 | 西北工业大学 | 网络化分布式数控***靶场设计方法 |
CN108319161A (zh) * | 2018-02-05 | 2018-07-24 | 浙江大学 | 一种工业scada***仿真平台 |
CN108353078A (zh) * | 2015-11-09 | 2018-07-31 | 高通股份有限公司 | 动态蜜罐*** |
CN109889488A (zh) * | 2018-12-29 | 2019-06-14 | 江苏博智软件科技股份有限公司 | 一种基于云部署的工控网络蜜网安全防护*** |
CN110035079A (zh) * | 2019-04-10 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 一种蜜罐生成方法、装置及设备 |
CN110351238A (zh) * | 2019-05-23 | 2019-10-18 | 中国科学院信息工程研究所 | 工控蜜罐*** |
CN110351237A (zh) * | 2019-05-23 | 2019-10-18 | 中国科学院信息工程研究所 | 用于数控机床的蜜罐方法及装置 |
-
2019
- 2019-11-14 CN CN201911111039.XA patent/CN111308958B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108353078A (zh) * | 2015-11-09 | 2018-07-31 | 高通股份有限公司 | 动态蜜罐*** |
CN107786532A (zh) * | 2016-08-31 | 2018-03-09 | 西门子公司 | 工业自动化***和云连接器中使用虚拟蜜罐的***和方法 |
WO2018044410A1 (en) * | 2016-09-01 | 2018-03-08 | Siemens Aktiengesellschaft | High interaction non-intrusive industrial control system honeypot |
CN107817756A (zh) * | 2017-10-27 | 2018-03-20 | 西北工业大学 | 网络化分布式数控***靶场设计方法 |
CN108319161A (zh) * | 2018-02-05 | 2018-07-24 | 浙江大学 | 一种工业scada***仿真平台 |
CN109889488A (zh) * | 2018-12-29 | 2019-06-14 | 江苏博智软件科技股份有限公司 | 一种基于云部署的工控网络蜜网安全防护*** |
CN110035079A (zh) * | 2019-04-10 | 2019-07-19 | 阿里巴巴集团控股有限公司 | 一种蜜罐生成方法、装置及设备 |
CN110351238A (zh) * | 2019-05-23 | 2019-10-18 | 中国科学院信息工程研究所 | 工控蜜罐*** |
CN110351237A (zh) * | 2019-05-23 | 2019-10-18 | 中国科学院信息工程研究所 | 用于数控机床的蜜罐方法及装置 |
Non-Patent Citations (2)
Title |
---|
"基于数据包分片的工控蜜罐识别方法";游建舟 等;《信息安全学报 》;20190531;第4卷(第3期);83-92 * |
"工业互联网安全监测与态势感知平台解决方案";陈晓光 等;《信息技术与标准化》;20190930(第9期);33-36 * |
Also Published As
Publication number | Publication date |
---|---|
CN111308958A (zh) | 2020-06-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111308958B (zh) | 一种基于蜜罐技术的cnc设备仿真方法、***和工控蜜罐 | |
CN109829310B (zh) | 相似攻击的防御方法及装置、***、存储介质、电子装置 | |
CN112054996B (zh) | 一种蜜罐***的攻击数据获取方法、装置 | |
CN107659543B (zh) | 面向云平台apt攻击的防护方法 | |
CN108848067B (zh) | 智能学习并预置只读白名单规则的opc协议安全防护方法 | |
CN111274583A (zh) | 一种大数据计算机网络安全防护装置及其控制方法 | |
CN107360145B (zh) | 一种多节点蜜罐***及其数据分析方法 | |
CN109379375B (zh) | 访问控制规则的获取方法、装置及网络设备 | |
Chu et al. | Penetration testing for internet of things and its automation | |
CN110351237B (zh) | 用于数控机床的蜜罐方法及装置 | |
CN112578761A (zh) | 一种工业控制蜜罐安全防护装置及方法 | |
CN110825040A (zh) | 一种工业控制***的过程控制攻击检测方法及装置 | |
CN111314276A (zh) | 一种对多个攻击行为检测的方法、装置及*** | |
CN110188538B (zh) | 采用沙箱集群检测数据的方法及装置 | |
CN112351031A (zh) | 攻击行为画像的生成方法、装置、电子设备和存储介质 | |
CN111464513A (zh) | 数据检测方法、装置、服务器及存储介质 | |
CN113746810B (zh) | 一种网络攻击诱导方法、装置、设备及存储介质 | |
CN111049784A (zh) | 一种网络攻击的检测方法、装置、设备及存储介质 | |
CN110784486A (zh) | 一种工业漏洞扫描方法和*** | |
CN112822291A (zh) | 一种工控设备的监测方法与装置 | |
Qassim et al. | Simulating command injection attacks on IEC 60870-5-104 protocol in SCADA system | |
CN109743339B (zh) | 电力厂站的网络安全监测方法和装置、计算机设备 | |
CN114584359B (zh) | 安全诱捕方法、装置和计算机设备 | |
CN105959289A (zh) | 一种基于自学习的OPC Classic协议的安全检测方法 | |
CN108833333B (zh) | 一种基于dcs分布式控制的蜜罐*** |
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 |