CN111427336A - 一种工业控制系统的漏洞扫描方法、装置及设备 - Google Patents
一种工业控制系统的漏洞扫描方法、装置及设备 Download PDFInfo
- Publication number
- CN111427336A CN111427336A CN202010382714.9A CN202010382714A CN111427336A CN 111427336 A CN111427336 A CN 111427336A CN 202010382714 A CN202010382714 A CN 202010382714A CN 111427336 A CN111427336 A CN 111427336A
- Authority
- CN
- China
- Prior art keywords
- industrial control
- scanning
- reference value
- network communication
- asset
- 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
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
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0208—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the configuration of the monitoring system
- G05B23/0213—Modular or universal configuration of the monitoring system, e.g. monitoring system having modules that may be combined to build monitoring program; monitoring system that can be applied to legacy systems; adaptable monitoring system; using different communication protocols
-
- 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
- G05B23/00—Testing or monitoring of control systems or parts thereof
- G05B23/02—Electric testing or monitoring
- G05B23/0205—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults
- G05B23/0259—Electric testing or monitoring by means of a monitoring system capable of detecting and responding to faults characterized by the response to fault detection
- G05B23/0275—Fault isolation and identification, e.g. classify fault; estimate cause or root of failure
- G05B23/0278—Qualitative, e.g. if-then rules; Fuzzy logic; Lookup tables; Symptomatic search; FMEA
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/577—Assessing vulnerabilities and evaluating computer system security
-
- 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
-
- 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/1433—Vulnerability analysis
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种工业控制系统的漏洞扫描方法,该方法结合主动探测扫描和被动流量解析扫描的特点,一方面,通过分析工业控制系统的网络流量数据得到目标工控资产的网络通讯参数,避免端口扫描结果不准确的问题;另一方面,在扫描过程中实时监测目标工控资产的实时流量、扫描基准值和正常生产基准值之间的大小关系,若实时流量超过扫描基准值,则暂停扫描,最大化的减少对系统网络的影响,避免造成系统网络阻塞。此外,本申请还提供了一种工业控制系统的漏洞扫描装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应。
Description
技术领域
本申请涉及计算机技术领域,特别涉及一种工业控制系统的漏洞扫描方法、装置、设备及可读存储介质。
背景技术
工业控制系统往往涉及一个城市或国家的重要基础设施,比如电力、燃气、自来水等。一旦发生安全问题,后果非常严重,影响广泛。工业控制系统作为能源、制造、军工等国家命脉行业的重要基础设施,在信息攻防战的阴影下面临着安全风险持续攀升的运行环境。近几年工业控制系统漏洞数量逐年大比例提升,安全漏洞的涌现,无疑为工业控制系统增加了风险,进而影响正常的生产秩序,甚至会危及人员健康和公共财产安全。
工业控制系统网络中有很多资产,例如工程师站、操作站、服务器、控制器(DCS、PLC)、交换机、安全网络设备等,这些设备本身会存在漏洞,一旦这些设备的漏洞被利用会对工业控制系统带来巨大危害。鉴于工业控制系统的重要性,其一旦被破坏不但带来财产损失也会造成安全事故。因此,对工控系统进行漏洞扫描评估,及时解决安全隐患从而加固工控网络,显得十分必要。
目前,对工业控制系统的漏洞扫描方案包括主动探测扫描与被动流量解析扫描两种方式:
主动探测扫描具备扫描准确性高的特点,但是考虑到主动发包探测对工控系统网络环境要求的实时性、可靠性影响,大部分都只能等到现场停产检修时才能进行漏洞扫描,或者实际搭建一套与现场一致的工控环境才能进行漏洞扫描。且主动探测扫描技术主要基于已知的常规工控协议端口,如MODBUS/TCP端口为502、IEC104端口为2404等,但是部分设备厂商可能将默认端口改为其它非常规端口,如将IEC104端口改为2405等,导致采用传统端口扫描结果不准确甚至不能扫描出结果。
被动流量解析扫描具备对已有工控网络环境零干扰的优势,但是该方式需要长时间的去解析通讯流量,获取跟设备与系统指纹相关的信息后才能够识别资产并进行漏洞匹配,一方面扫描质量差,时间周期长;另一方面被动流量获取设备及系统通讯指纹的数据有限,导致扫描结果误差很大。
综上,如何提供一种工业控制系统的漏洞扫描方案,避免漏洞扫描时对工控网络业务造成影响,以及导致网络拥塞延迟甚至中断的现象,是亟待本领域技术人员解决的问题。
发明内容
本申请的目的是提供一种工业控制系统的漏洞扫描方法、装置、设备及可读存储介质,用以解决传统的漏洞扫描方案要么会对网络业务造成影响,要么会导致系统网络阻塞的问题。其具体方案如下:
第一方面,本申请提供了一种工业控制系统的漏洞扫描方法,包括:
获取工业控制系统中目标工控资产的网络通讯参数,其中所述目标工控资产的网络通讯参数为通过分析所述工业控制系统的网络流量数据得到的;
根据所述目标工控资产的网络通讯参数,生成探测数据包;
周期性地获取所述目标工控资产的扫描基准值和正常生产基准值,并判断所述目标工控资产的网络通信流量的实时值、所述扫描基准值与所述正常生产基准值之间的大小关系,其中所述扫描基准值为所述目标工控资产在最近的预设时间内的网络通信流量的最大值,所述正常生产基准值为所述目标工控资产在最近的预设时间内的网络通信流量的平均值;
若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包;若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包,直至所述目标工控资产的网络通信流量的实时值小于所述正常生产基准值;
接收所述目标工控资产返回的响应数据包,从所述响应数据包提取所述目标工控资产的系统信息,其中所述系统信息包括版本号;
通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
优选的,在所述获取工业控制系统中目标工控资产的网络通讯参数之前,还包括:
通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;
通过分析所述网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数,所述网络通讯参数包括工业应用层协议、端口号和IP地址。
优选的,在所述获取工业控制系统中目标工控资产的网络通讯参数之前,还包括:
根据当前扫描任务,确定工业控制系统中待扫描的目标工控资产,所述当前扫描任务包括IP地址的范围区间。
优选的,所述若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包,包括:
在开始扫描的第N个周期内,若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,动态调整发包速率,并按照调整后的发包速率向所述目标工控资产发送所述探测数据包,其中N大于等于2。
优选的,所述若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包,包括:
在开始扫描的第一个周期内,若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,按照发包速率的初始值向所述目标工控资产发送所述探测数据包。
优选的,在所述若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包之后,还包括:
将发包速率重置为初始值。
第二方面,本申请提供了一种工业控制系统的漏洞扫描装置,包括:
通讯参数获取模块:用于获取工业控制系统中目标工控资产的网络通讯参数,其中所述目标工控资产的网络通讯参数为通过分析所述工业控制系统的网络流量数据得到的;
数据包生成模块:用于根据所述目标工控资产的网络通讯参数,生成探测数据包;
判断模块:用于周期性地获取所述目标工控资产的扫描基准值和正常生产基准值,并判断所述目标工控资产的网络通信流量的实时值、所述扫描基准值与所述正常生产基准值之间的大小关系,其中所述扫描基准值为所述目标工控资产在最近的预设时间内的网络通信流量的最大值,所述正常生产基准值为所述目标工控资产在最近的预设时间内的网络通信流量的平均值;
数据包发送模块:用于若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包;若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包,直至所述目标工控资产的网络通信流量的实时值小于所述正常生产基准值;
数据包接收模块:用于接收所述目标工控资产返回的响应数据包,从所述响应数据包提取所述目标工控资产的系统信息,其中所述系统信息包括版本号;
匹配模块:用于通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
优选的,还包括:
流量数据获取模块:用于通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;
流量数据分析模块:用于通过分析所述网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数,所述网络通讯参数包括工业应用层协议、端口号和IP地址。
第三方面,本申请提供了一种工业控制系统的漏洞扫描设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上所述的工业控制系统的漏洞扫描方法的步骤。
第四方面,本申请提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上所述的工业控制系统的漏洞扫描方法的步骤。
本申请所提供的一种工业控制系统的漏洞扫描方法,包括:获取工业控制系统中目标工控资产的网络通讯参数;根据网络通讯参数生成探测数据包;周期性地获取目标工控资产的扫描基准值和正常生产基准值,并判断目标工控资产的网络通信流量的实时值、扫描基准值与正常生产基准值之间的大小关系;若实时值位于扫描基准值和正常生产基准值之间,向目标工控资产发送探测数据包;若实时值大于扫描基准值,则暂停向目标工控资产发送探测数据包,直至实时值小于正常生产基准值;接收目标工控资产返回的响应数据包,从响应数据包提取目标工控资产的系统信息;通过对系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
可见,该方法结合主动探测扫描和被动流量解析扫描的特点,一方面,通过分析工业控制系统的网络流量数据得到目标工控资产的网络通讯参数,避免端口扫描结果不准确的问题;另一方面,在扫描过程中实时监测目标工控资产的实时流量、扫描基准值和正常生产基准值的大小关系,若实时流量超过扫描基准值,则暂停扫描,最大化的减少对系统网络的影响,避免造成系统网络阻塞。
此外,本申请还提供了一种工业控制系统的漏洞扫描装置、设备及可读存储介质,其技术效果与上述方法的技术效果相对应,这里不再赘述。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请所提供的一种工业控制系统的漏洞扫描方法实施例一的实现流程图;
图2为本申请所提供的一种工业控制系统的漏洞扫描方法实施例二的实现流程图;
图3为本申请所提供的一种工业控制系统的漏洞扫描方法实施例二的系统结构示意图;
图4为本申请所提供的一种工业控制系统的漏洞扫描装置实施例的功能框图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
目前,工业控制系统的漏洞扫描方案包括主动探测扫描和被动流量解析扫描两种方式。主动探测扫描通过固定的速率发包去不断尝试与在线工业控制系统设备进行通信,根据设备返回的通信内容以及通信参数来判断该设备的操作系统、厂商、型号以及版本等系统信息,再与漏洞库进行比对从而判断系统漏洞情况。
被动流量解析扫描方式首先获取网络通讯流量,通过对流量的解析获取资产识别的指纹信息(如:通讯过程中存在的特有设备存在的通讯机制,工控系统交互过程中存在的厂商、型号、版本等资产信息),这种方式需要长时间不断的解析学习,且现有的工控网络的数据流量主要是以业务数据为主,资产信息数据极少。
扫描主动探测的缺点是:主动探测机制固化,通常都按照标准通讯协议的机制进行端口扫描,探测发包速率固定,对工控网络正常业务流量影响较大,会影响到工控网络的实时性,对于突然的业务流量爆发时主动扫描很极可能造成网络拥塞,甚至造成工控系统的通讯阻断。
被动扫描的缺点是:工控网络的流量数据绝大部分都问是业务数据,而极少有工控资产相关的数据,这导致获取资产指纹信息缺失,扫描质量差,效率也很低。
针对上述问题,本申请提供了一种工业控制系统的漏洞扫描方法、装置、设备及可读存储介质,一方面,通过分析工业控制系统的网络流量数据得到目标工控资产的网络通讯参数,避免端口扫描结果不准确的问题;另一方面,在扫描过程中实时监测目标工控资产的实时流量、扫描基准值和正常生产基准值的大小关系,若实时流量超过扫描基准值,则暂停扫描,最大化的减少对系统网络的影响,避免造成系统网络阻塞。
下面对本申请提供的一种工业控制系统的漏洞扫描方法实施例一进行介绍,参见图1,实施例一包括:
S101、获取工业控制系统中目标工控资产的网络通讯参数;
工业控制系统(简称ICS)包括几种工业生产中使用的控制系统类型,包括监控和数据采集(SCADA)系统、分布式控制系统(DCS),和其他较小的控制系统配置,如可编程逻辑控制器(PLC),通常出现在工业部门和关键基础设施中。
工控资产主要指工业控制网络中的工程师站、操作站、DCS、PLC、RTU、网络设备、安全设备等实体的通讯主体。本实施例中目标工控资产是指工业控制系统中待进行扫描的工控资产,具体的,可以在扫描任务中执行待进行扫描的工作资产的IP地址或IP地址的范围区间。
本实施例中,上述目标工控资产的网络通讯参数为通过分析所述工业控制系统的网络流量数据得到的。传统扫描方案都是基于工控协议指纹库中标准端口进行扫描,缺乏对非标准端口的识别扫描。比如,通过对网络流量数据分析得到某一工控资产的工控协议为IEC104协议、端口号为2505;然而,工控协议指纹库中标准的工控协议为IEC104协议、端口号为2404。当二者存在差异时,得到的扫描结果不可靠甚至无法得到扫描结果。因此,本实施例通过对工业控制网络进行网络流量分析,来得出各个工控资产的真实的网络通讯参数。
具体的,通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;通过分析网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数。其中,网络通讯参数具体包括IP地址、工业应用层协议(例如MODBUS/TCP、IEC104、S7、ETHERNET/IP等)、端口号,除此之外,还可以包括MAC地址、传输层协议(TCP/UDP)、等信息。
S102、根据所述目标工控资产的网络通讯参数,生成探测数据包;
S103、周期性地获取所述目标工控资产的扫描基准值和正常生产基准值,并判断所述目标工控资产的网络通信流量的实时值、所述扫描基准值与所述正常生产基准值之间的大小关系;
通过人工设定时间周期(如1周、1月、1天等),对每个周期内工业控制网络的网络通信流量进行实时在线统计分析,得到该工业控制网络中各个工控网络资产相应的扫描基准值和正常生产基准值。其中,前述扫描基准值为所述目标工控资产在最近的预设时间内的网络通信流量的最大值,前述正常生产基准值为所述目标工控资产在最近的预设时间内的网络通信流量的平均值。
具体的,统计一个周期内某工控资产所发生的网络通信流量(包括进出流量),以这个最大值作为扫描基准值;统计一个周期内内某工控资产所发生的网络通信流量(包括进出流量),取其平均值作为正常生产基准值。
S104、若实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包;若实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包,直至实时值小于所述正常生产基准值;
通过流量分析得到的工控资产的网络通讯参数,生成探测数据包,并结合主动的扫描方式对工业控制网络进行漏洞扫描。具体的,在扫描过程中,实时监测目标工控资产的网络通信流量的实时值与扫描基准值和正常生产基准值之间的大小关系,当实时值位于扫描基准值和正常生产基准值之间时,正常向目标工控资产发送探测数据包;当实时值大于扫描基准值时,暂停向目标工控资产发送探测数据包,直至实时值小于正常生产基准值时,继续之前未完成的扫描任务,直至扫描任务结束。
S105、接收所述目标工控资产返回的响应数据包,从所述响应数据包提取所述目标工控资产的系统信息;
上述系统信息具体可以包括厂商、型号、版本、类型等。
S106、通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
上述工控漏洞库用于记录系统信息与漏洞信息之间的对应关系,例如,可以记录多个版本各自存在的漏洞信息,通过对系统信息和工控漏洞库进行匹配即可得出漏洞扫描结果。
本实施例所提供一种工业控制系统的漏洞扫描方法,该方法结合主动探测扫描和被动流量解析扫描的优点,一方面,通过分析工业控制系统的网络流量数据得到目标工控资产的网络通讯参数,避免端口扫描结果不准确的问题;另一方面,在扫描过程中实时监测目标工控资产的实时流量、扫描基准值和正常生产基准值的大小关系,若实时流量超过扫描基准值,则暂停扫描,最大化的减少对系统网络的影响,避免造成系统网络阻塞。
下面开始详细介绍本申请提供的一种工业控制系统的漏洞扫描方法实施例二,实施例二基于前述实施例一实现,并在实施例一的基础上进行了一定程度上的拓展。
前述实施例一提出了实时监测网络通信流量的实时值与扫描基准值和正常生产基准值之间的大小关系的扫描方案,当实时值位于扫描基准值和正常生产基准值之间时,正常发送探测数据包;当实时值超过扫描基准值时,暂停发送探测数据包。为最大化扫描效率,本实施例在实施例一的基础上,做了进一步的改进。具体的,在实时值位于扫描基准值和正常生产基准值之间时,本实施例会依据具体情形动态调整发包速率,例如当实时值接近扫描基准值时,减小发包速率;当实时值接近正常生产基准值时,增大发包速率,从而实现提升漏洞扫描效率的目的。
参见图2,实施例二具体包括:
S201、通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;
系统结构如图3所示,本实施例通过交换机的端口镜像功能来实现网络监控,在此模式下,监控设备只需要连接到交换机的指定镜像端口,在交换机上面配置镜像端口即可,不会影响现有的网络结构。旁路模式分析的是镜像端口拷贝过来的数据,对原始传递的数据包不会造成延时,不会对网速造成任何影响。
S202、通过分析所述网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数;
上述网络通讯参数包括工业应用层协议、端口号和IP地址。
S203、根据当前扫描任务,确定工业控制系统中待扫描的目标工控资产;
上述当前扫描任务包括IP地址的范围区间、扫描开始时间等信息。
S204、获取目标工控资产的网络通讯参数;
S205、根据所述目标工控资产的网络通讯参数,生成探测数据包;
S206、获取当前周期中目标工控资产的扫描基准值和正常生产基准值,并获取目标工控资产的网络通信流量的实时值;
S207、判断实时值是否位于扫描基准值与正常生产基准值之间;若是,跳转至S208,否则跳转至S211;
S208、在开始扫描的第一个周期内,按照发包速率的初始值向所述目标工控资产发送所述探测数据包;在开始扫描的第N个周期内,动态调整发包速率,并按照调整后的发包速率向所述目标工控资产发送所述探测数据包,其中N大于等于2;持续发送一个周期后跳转到S212;
上述发包速率的初始值可以人为调整。
S209、判断扫描任务是否全部完成,若是,跳转到S210,否则跳转到S206;
S210、从目标工控资产返回的响应数据包提取目标工控资产的系统信息;通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果;
S211、判断实时值是否超过扫描基准值,若是,跳转到S212,否则跳转到S213;
S212、暂停向所述目标工控资产发送所述探测数据包,持续一周期后跳转到S209;
S213、将发包速率重置为初始值,并重置当前周期数为1,跳转到S208。
通过实时监测目标工控资产的网络通信流量的实时值,当实时值位于扫描基准值和正常生产基准值之间时,根据预先设定的发包速率调整机制动态增加或降低发包速率,调整过程中始终保证目标工控资产的网络通信流量一直保持在扫描基准值以内。当检测到实时值大于扫描基准值时,暂停当前扫描任务,保存现有扫描进度以及扫描结果,一直到实时值小于等于正常生产基准值时再重新启动扫描任务,同时发包速率重置为初始值,再重复之前的动态调整过程,直到扫描任务结束。
可见,本实施例提供的一种工业控制系统的漏洞扫描方法,解决了在对正常运行的工业控制系统进行漏洞扫描时可能会对网络业务产生影响以及导致网络拥塞延迟甚至中断的问题。
针对被动扫描质量差的问题,以及主动发包探测扫描容易对工业控制系统网络环境造成影响的问题,本实施例可以根据工控资产的网络通信流量的实时值动态的调整漏洞扫描速率,对正常运行的工业控制系统进行在线漏洞扫描,最大化的减少扫描过程对工业控制系统网络的影响,并且保证漏洞扫描的质量。
针对传统扫描方式都是基于标准端口进行扫描而缺乏对非标准端口的识别扫描问题,本实施例通过对工业控制系统的流量数据的统计学习,识别出工业控制系统中各个工控资产真实的通讯协议、端口等通讯信息,再根据这些信息自动生成相应的探测数据包,与工业控制系统进行交互扫描,实现对非标准端口系统设备的漏洞扫描,解决了传统扫描系统无法识别非标准通讯机制的工控设备的问题,大大提升了扫描准确性。
综上,本实施例结合被动流量学习加主动探测技术,再融入实时流量监测动态调整扫描数据发包速率的漏洞扫描方式,能够适应于各种在线运行的工控系统网络场景进行漏洞扫描。基于本实施例可以有效提高工控系统网络扫描质量,大幅降低对工控网络正常业务流量的影响,同时满足了不用停工就能对工控系统网络进行高质量的主动探测扫描的需求。
下面对本申请实施例提供的工业控制系统的漏洞扫描装置进行介绍,下文描述的工业控制系统的漏洞扫描装置与上文描述的工业控制系统的漏洞扫描方法可相互对应参照。
如图4所示,本实施例的工业控制系统的漏洞扫描装置,包括:
通讯参数获取模块401:用于获取工业控制系统中目标工控资产的网络通讯参数,其中所述目标工控资产的网络通讯参数为通过分析所述工业控制系统的网络流量数据得到的;
数据包生成模块402:用于根据所述目标工控资产的网络通讯参数,生成探测数据包;
判断模块403:用于周期性地获取所述目标工控资产的扫描基准值和正常生产基准值,并判断所述目标工控资产的网络通信流量的实时值、所述扫描基准值与所述正常生产基准值之间的大小关系,其中所述扫描基准值为所述目标工控资产在最近的预设时间内的网络通信流量的最大值,所述正常生产基准值为所述目标工控资产在最近的预设时间内的网络通信流量的平均值;
数据包发送模块404:用于若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包;若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包,直至所述目标工控资产的网络通信流量的实时值小于所述正常生产基准值;
数据包接收模块405:用于接收所述目标工控资产返回的响应数据包,从所述响应数据包提取所述目标工控资产的系统信息,其中所述系统信息包括版本号;
匹配模块406:用于通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
作为一种优选的实施方式,还包括:
流量数据获取模块:用于通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;
流量数据分析模块:用于通过分析所述网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数,所述网络通讯参数包括工业应用层协议、端口号和IP地址。
本实施例的工业控制系统的漏洞扫描装置用于实现前述的工业控制系统的漏洞扫描方法,因此该装置中的具体实施方式可见前文中的工业控制系统的漏洞扫描方法的实施例部分,例如,通讯参数获取模块401、数据包生成模块402、判断模块403、数据包发送模块404、数据包接收模块405、匹配模块406,分别用于实现上述工业控制系统的漏洞扫描方法中步骤S101,S102,S103,S104,S105,S106。所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的工业控制系统的漏洞扫描装置用于实现前述的工业控制系统的漏洞扫描方法,因此其作用与上述方法的作用相对应,这里不再赘述。
此外,本申请还提供了一种工业控制系统的漏洞扫描设备,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如上文所述的工业控制系统的漏洞扫描方法的步骤。
最后,本申请还提供了一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如上文所述的工业控制系统的漏洞扫描方法的步骤。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的方案进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (10)
1.一种工业控制系统的漏洞扫描方法,其特征在于,包括:
获取工业控制系统中目标工控资产的网络通讯参数,其中所述目标工控资产的网络通讯参数为通过分析所述工业控制系统的网络流量数据得到的;
根据所述目标工控资产的网络通讯参数,生成探测数据包;
周期性地获取所述目标工控资产的扫描基准值和正常生产基准值,并判断所述目标工控资产的网络通信流量的实时值、所述扫描基准值与所述正常生产基准值之间的大小关系,其中所述扫描基准值为所述目标工控资产在最近的预设时间内的网络通信流量的最大值,所述正常生产基准值为所述目标工控资产在最近的预设时间内的网络通信流量的平均值;
若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包;若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包,直至所述目标工控资产的网络通信流量的实时值小于所述正常生产基准值;
接收所述目标工控资产返回的响应数据包,从所述响应数据包提取所述目标工控资产的系统信息,其中所述系统信息包括版本号;
通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
2.如权利要求1所述的方法,其特征在于,在所述获取工业控制系统中目标工控资产的网络通讯参数之前,还包括:
通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;
通过分析所述网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数,所述网络通讯参数包括工业应用层协议、端口号和IP地址。
3.如权利要求2所述的方法,其特征在于,在所述获取工业控制系统中目标工控资产的网络通讯参数之前,还包括:
根据当前扫描任务,确定工业控制系统中待扫描的目标工控资产,所述当前扫描任务包括IP地址的范围区间。
4.如权利要求1-3任意一项所述的方法,其特征在于,所述若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包,包括:
在开始扫描的第N个周期内,若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,动态调整发包速率,并按照调整后的发包速率向所述目标工控资产发送所述探测数据包,其中N大于等于2。
5.如权利要求4所述的方法,其特征在于,所述若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包,包括:
在开始扫描的第一个周期内,若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,按照发包速率的初始值向所述目标工控资产发送所述探测数据包。
6.如权利要求5所述的方法,其特征在于,在所述若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包之后,还包括:
将发包速率重置为初始值。
7.一种工业控制系统的漏洞扫描装置,其特征在于,包括:
通讯参数获取模块:用于获取工业控制系统中目标工控资产的网络通讯参数,其中所述目标工控资产的网络通讯参数为通过分析所述工业控制系统的网络流量数据得到的;
数据包生成模块:用于根据所述目标工控资产的网络通讯参数,生成探测数据包;
判断模块:用于周期性地获取所述目标工控资产的扫描基准值和正常生产基准值,并判断所述目标工控资产的网络通信流量的实时值、所述扫描基准值与所述正常生产基准值之间的大小关系,其中所述扫描基准值为所述目标工控资产在最近的预设时间内的网络通信流量的最大值,所述正常生产基准值为所述目标工控资产在最近的预设时间内的网络通信流量的平均值;
数据包发送模块:用于若所述目标工控资产的网络通信流量的实时值位于所述扫描基准值和所述正常生产基准值之间,向所述目标工控资产发送所述探测数据包;若所述目标工控资产的网络通信流量的实时值大于所述扫描基准值,则暂停向所述目标工控资产发送所述探测数据包,直至所述目标工控资产的网络通信流量的实时值小于所述正常生产基准值;
数据包接收模块:用于接收所述目标工控资产返回的响应数据包,从所述响应数据包提取所述目标工控资产的系统信息,其中所述系统信息包括版本号;
匹配模块:用于通过对所述系统信息和工控漏洞库进行匹配,得到漏洞扫描结果。
8.如权利要求7所述的装置,其特征在于,还包括:
流量数据获取模块:用于通过配置交换机的镜像端口,获取工业控制系统的网络流量数据;
流量数据分析模块:用于通过分析所述网络流量数据,确定所述工业控制系统中各个工控资产的网络通讯参数,所述网络通讯参数包括工业应用层协议、端口号和IP地址。
9.一种工业控制系统的漏洞扫描设备,其特征在于,包括:
存储器:用于存储计算机程序;
处理器:用于执行所述计算机程序,以实现如权利要求1-6任意一项所述的工业控制系统的漏洞扫描方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时用于实现如权利要求1-6任意一项所述的工业控制系统的漏洞扫描方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010382714.9A CN111427336B (zh) | 2020-05-08 | 2020-05-08 | 一种工业控制系统的漏洞扫描方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010382714.9A CN111427336B (zh) | 2020-05-08 | 2020-05-08 | 一种工业控制系统的漏洞扫描方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111427336A true CN111427336A (zh) | 2020-07-17 |
CN111427336B CN111427336B (zh) | 2021-02-09 |
Family
ID=71555290
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010382714.9A Active CN111427336B (zh) | 2020-05-08 | 2020-05-08 | 一种工业控制系统的漏洞扫描方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111427336B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784209A (zh) * | 2020-07-30 | 2020-10-16 | 中国电子科技集团公司第十四研究所 | 一种资产可视化与安全运营管理系统 |
CN112202609A (zh) * | 2020-09-28 | 2021-01-08 | 全球能源互联网研究院有限公司 | 一种工控资产探测方法、装置、电子设备及存储介质 |
CN112448963A (zh) * | 2021-02-01 | 2021-03-05 | 博智安全科技股份有限公司 | 分析自动攻击工业资产的方法、装置、设备及存储介质 |
CN113378179A (zh) * | 2021-06-28 | 2021-09-10 | 北京凌云信安科技有限公司 | 基于主动与被动无损扫描技术的工控漏洞扫描系统 |
CN113849820A (zh) * | 2021-09-27 | 2021-12-28 | 湖北天融信网络安全技术有限公司 | 一种漏洞检测方法及装置 |
CN114047727A (zh) * | 2021-11-10 | 2022-02-15 | 中国电信股份有限公司 | 控制方法、可编程逻辑控制器及计算机可读存储介质 |
CN115033881A (zh) * | 2022-08-12 | 2022-09-09 | 中国电子科技集团公司第三十研究所 | Plc控制器病毒检测方法、装置、设备及存储介质 |
CN115277136A (zh) * | 2022-07-15 | 2022-11-01 | 云南电网有限责任公司电力科学研究院 | 漏洞扫描方法、系统、计算机设备及介质 |
CN115314425A (zh) * | 2022-07-12 | 2022-11-08 | 清华大学 | 网络扫描装置 |
CN115333951A (zh) * | 2022-08-09 | 2022-11-11 | 中国工商银行股份有限公司 | 网络资产信息的生成方法、装置及电子设备 |
CN116070218A (zh) * | 2023-03-28 | 2023-05-05 | 北京六方云信息技术有限公司 | 工业资产的探测方法、终端设备及存储介质 |
CN117061178A (zh) * | 2023-08-21 | 2023-11-14 | 山东九州信泰信息科技股份有限公司 | 一种工业控制网络漏洞扫描方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008713A (zh) * | 2019-05-06 | 2019-07-12 | 杭州齐安科技有限公司 | 一种新型工控系统漏洞探测方法及系统 |
CN110247911A (zh) * | 2019-06-14 | 2019-09-17 | 曹严清 | 一种流量异常检测方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008158650A (ja) * | 2006-12-21 | 2008-07-10 | Mitsubishi Electric Corp | プロセス制御装置およびプロセス制御装置の異常判定方法 |
CN101350765B (zh) * | 2007-07-20 | 2012-07-04 | 中国科学院声学研究所 | 一种网络流量控制方法 |
CN107154940A (zh) * | 2017-05-11 | 2017-09-12 | 济南大学 | 一种物联网漏洞扫描系统及扫描方法 |
CN108989299A (zh) * | 2018-07-03 | 2018-12-11 | 杭州安恒信息技术股份有限公司 | 一种物联网设备漏洞的监测方法与系统 |
CN110532770A (zh) * | 2019-09-04 | 2019-12-03 | 北京启明星辰信息安全技术有限公司 | 一种融合主动与被动的脆弱性扫描方法 |
-
2020
- 2020-05-08 CN CN202010382714.9A patent/CN111427336B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008713A (zh) * | 2019-05-06 | 2019-07-12 | 杭州齐安科技有限公司 | 一种新型工控系统漏洞探测方法及系统 |
CN110247911A (zh) * | 2019-06-14 | 2019-09-17 | 曹严清 | 一种流量异常检测方法及系统 |
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111784209A (zh) * | 2020-07-30 | 2020-10-16 | 中国电子科技集团公司第十四研究所 | 一种资产可视化与安全运营管理系统 |
CN112202609A (zh) * | 2020-09-28 | 2021-01-08 | 全球能源互联网研究院有限公司 | 一种工控资产探测方法、装置、电子设备及存储介质 |
CN112448963A (zh) * | 2021-02-01 | 2021-03-05 | 博智安全科技股份有限公司 | 分析自动攻击工业资产的方法、装置、设备及存储介质 |
CN113378179A (zh) * | 2021-06-28 | 2021-09-10 | 北京凌云信安科技有限公司 | 基于主动与被动无损扫描技术的工控漏洞扫描系统 |
CN113849820A (zh) * | 2021-09-27 | 2021-12-28 | 湖北天融信网络安全技术有限公司 | 一种漏洞检测方法及装置 |
CN114047727A (zh) * | 2021-11-10 | 2022-02-15 | 中国电信股份有限公司 | 控制方法、可编程逻辑控制器及计算机可读存储介质 |
CN114047727B (zh) * | 2021-11-10 | 2024-03-05 | 中国电信股份有限公司 | 控制方法、可编程逻辑控制器及计算机可读存储介质 |
CN115314425A (zh) * | 2022-07-12 | 2022-11-08 | 清华大学 | 网络扫描装置 |
CN115314425B (zh) * | 2022-07-12 | 2024-02-23 | 清华大学 | 网络扫描装置 |
CN115277136A (zh) * | 2022-07-15 | 2022-11-01 | 云南电网有限责任公司电力科学研究院 | 漏洞扫描方法、系统、计算机设备及介质 |
CN115277136B (zh) * | 2022-07-15 | 2023-11-21 | 云南电网有限责任公司电力科学研究院 | 漏洞扫描方法、系统、计算机设备及介质 |
CN115333951A (zh) * | 2022-08-09 | 2022-11-11 | 中国工商银行股份有限公司 | 网络资产信息的生成方法、装置及电子设备 |
CN115333951B (zh) * | 2022-08-09 | 2024-05-28 | 中国工商银行股份有限公司 | 网络资产信息的生成方法、装置及电子设备 |
CN115033881B (zh) * | 2022-08-12 | 2022-12-09 | 中国电子科技集团公司第三十研究所 | Plc控制器病毒检测方法、装置、设备及存储介质 |
CN115033881A (zh) * | 2022-08-12 | 2022-09-09 | 中国电子科技集团公司第三十研究所 | Plc控制器病毒检测方法、装置、设备及存储介质 |
CN116070218A (zh) * | 2023-03-28 | 2023-05-05 | 北京六方云信息技术有限公司 | 工业资产的探测方法、终端设备及存储介质 |
CN117061178A (zh) * | 2023-08-21 | 2023-11-14 | 山东九州信泰信息科技股份有限公司 | 一种工业控制网络漏洞扫描方法 |
CN117061178B (zh) * | 2023-08-21 | 2024-02-06 | 山东九州信泰信息科技股份有限公司 | 一种工业控制网络漏洞扫描方法 |
Also Published As
Publication number | Publication date |
---|---|
CN111427336B (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111427336B (zh) | 一种工业控制系统的漏洞扫描方法、装置及设备 | |
CN111935170B (zh) | 一种网络异常流量检测方法、装置及设备 | |
CN110519290B (zh) | 异常流量检测方法、装置及电子设备 | |
CN109617868B (zh) | 一种ddos攻击的检测方法、装置及检测服务器 | |
CN111935172A (zh) | 基于网络拓扑的网络异常行为检测方法、计算机装置及计算机可读存储介质 | |
CN108377201B (zh) | 网络异常感知方法、装置、设备及计算机可读存储介质 | |
CN110225037B (zh) | 一种DDoS攻击检测方法和装置 | |
CN105049291A (zh) | 一种检测网络流量异常的方法 | |
CN113518057B (zh) | 分布式拒绝服务攻击的检测方法、装置及其计算机设备 | |
CN110417747B (zh) | 一种暴力破解行为的检测方法及装置 | |
CN112291107B (zh) | 网络分析程序、网络分析装置以及网络分析方法 | |
CN109462580B (zh) | 训练流量检测模型、检测业务流量异常的方法及装置 | |
CN109273045B (zh) | 存储设备在线检测方法、装置、设备及可读存储介质 | |
CN107306200B (zh) | 网络故障预警方法和用于网络故障预警的网关 | |
CN112422554A (zh) | 一种检测异常流量外连的方法、装置、设备及存储介质 | |
CN109005181B (zh) | 一种dns放大攻击的检测方法、系统及相关组件 | |
CN113315785B (zh) | 一种告警消减方法、装置、设备和计算机可读存储介质 | |
CN110611683A (zh) | 一种攻击源告警的方法和系统 | |
CN112217777A (zh) | 攻击回溯方法及设备 | |
CN114338120A (zh) | 一种扫段攻击检测方法、装置、介质和电子设备 | |
CN111343206B (zh) | 一种针对数据流攻击的主动防御方法及装置 | |
CN114422407B (zh) | 一种网络测试方法、系统、终端及存储介质 | |
CN111510443B (zh) | 基于设备画像的终端监测方法和终端监测装置 | |
CN114584356A (zh) | 网络安全监控方法及网络安全监控系统 | |
CN116886453B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |