CN110825630A - 漏洞挖掘方法及装置 - Google Patents
漏洞挖掘方法及装置 Download PDFInfo
- Publication number
- CN110825630A CN110825630A CN201911051837.8A CN201911051837A CN110825630A CN 110825630 A CN110825630 A CN 110825630A CN 201911051837 A CN201911051837 A CN 201911051837A CN 110825630 A CN110825630 A CN 110825630A
- Authority
- CN
- China
- Prior art keywords
- service
- data
- service data
- sequence
- industrial control
- 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
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
-
- Y—GENERAL 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
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer And Data Communications (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
Abstract
本发明提供一种漏洞挖掘方法,包括:获取工控设备在当前通信过程中的各个业务数据,依据各个业务数据的业务信息,生成至少一条业务序列;从每条业务序列的末端向业务序列的前端,对业务序列中的各个业务数据进行数据变形,获得模糊测试数据以及测试序列,将各个测试序列发送至工控设备,触发工控设备应用测试序列与应用程序进行通信,检测工控设备与应用程序的通信是否异常,当工控设备与应用程序的通信存在异常时,生成对应的漏洞报告,实现对工控设备的漏洞挖掘;应用本发明,将业务序列中的各个业务数据有序的进行数据变形,生成的测试序列的满足工控设备的基本处理要求,提高了对工控设备进行漏洞挖掘的代码覆盖率,提高了工控设备的覆盖率。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种漏洞挖掘方法及装置。
背景技术
工控设备是工控控制系统中的重要组成部分,一般将运用在工控环境下的嵌入式控制设备称为工控设备。为确保工控设备的安全问题,工控设备在投入使用之前会进行安全测试,通过应用漏洞挖掘技术,挖掘工控设备中可能存在的漏洞,以进行漏洞修复,保证安全。漏洞挖掘技术是指对未知漏洞的探索,通过综合应用各种技术和工具,尽可能的找出潜在的漏洞。
通常应用模糊测试的方式来实现漏洞挖掘,模糊测试是一种通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。在应用所述模糊测试挖掘工控设备的漏洞之前,将工控设备进行通信的业务数据随机进行变形,并将变形得到的模糊测试数据随机组合,得到测试数据;将所述测试数据作为输入数据对所述工控设备进行模糊测试,挖掘所述工控设备中的漏洞。
经发明人研究发现,工控设备可接受的业务数据通常存在先后的业务逻辑,而在生成测试数据时并未考虑到业务数据存在的业务逻辑,导致生成的测试数据出现业务逻辑混乱、字段混乱;使工控设备在处理测试数据时将不满足业务逻辑条件或是字段条件的测试数据丢弃,导致测试数据的测试率低,降低了代码的覆盖率。
发明内容
有鉴于此,本发明提供一种漏洞挖掘方法,应用本发明,生成的测试序列满足业务逻辑,以及工控设备的接收数据的要求,增加工控设备对测试序列的处理数量,提高代码的覆盖率。本发明还提供一种漏洞挖掘装置,用于支持所述方法在实际中的应用。
为实现上述目的,本发明提供如下技术方案:
一种漏洞挖掘方法,包括:
获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息;
依据各个所述业务数据的业务信息,生成至少一条业务序列,所述业务序列中包含至少一个业务数据,所述业务序列中的各个业务数据依次排列;
在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在业务序列中位于该业务数据前的各个业务数据,每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据;
按每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,并触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信;
检测所述工控设备与所述应用程序之间的通信是否正常,若所述工控设备与所述应用程序之间的通信不正常,则判断所述工控设备存在漏洞,并生成所述工控设备当前所应用的测试序列对应的漏洞报告。
上述的方法,可选的,所述依据各个所述业务数据的业务信息,生成至少一条业务序列,包括:
对每个所述业务数据的业务信息进行解析,获得所述业务信息中的业务类型以及业务逻辑,所述业务类型用于指示所述业务数据所属的业务,所述业务逻辑用于指示所述业务数据在所属业务中的先后顺序;
将属于同一业务类型的各个所述业务数据归为同一集合,得到至少一个集合,所述集合中包含至少一个业务数据;
依据每个所述集合中各个所述业务数据的业务逻辑,将每个所述集合中的各个所述业务数据进行排序,生成与每个所述集合对应的业务序列。
上述的方法,可选的,所述依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,包括:
依次获取所述业务序列中的各个业务数据,并将当前获取的业务数据确定为目标业务数据;
确定所述目标业务数据中的数据字段的个数,并依据所述数据字段的个数确定所述目标业务数据的数据复杂度;
依据预设的模糊测试数据变形规则以及所述数据复杂度,并应用预设的变形算法对所述目标业务数据进行数据变形,得到所述目标业务数据进行数据变形后的模糊测试数据。
上述的方法,可选的,所述生成每个所述业务数据对应的测试序列,包括:
判断当前业务数据是否位于其所在业务序列的末端;
若判断所述当前业务数据为其所在业务序列中末端的业务数据,则在所述业务序列中,将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列;
若判断所述当前业务数据不为其所在业务序列中末端的业务数据,则在所述业务序列中,将位于所述当前业务数据后的各个业务数据删除,并将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列。
上述的方法,可选的,还包括:
对所述漏洞报告进行分析,确定所述漏洞报告中的漏洞是否为危险漏洞;
若所述漏洞报告中的漏洞为危险漏洞,则将所述漏洞报告发送至预设的显示设备进行显示。
上述的方法,可选的,所述触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信,包括:
触发所述工控设备将每个所述测试序列发送至所述应用程序,使所述应用程序调用与所述测试序列对应的代码运行所述测试序列,以生成与所述测试序列对应的运行信息,并向所述工控设备反馈所述测试序列的运行信息,完成所述工控设备应用所述测试序列与所述应用程序进行的通信。
上述的方法,可选的,所述检测所述工控设备与所述应用程序之间的通信是否正常,包括:
获取所述应用程序向所述工控设备反馈的运行信息,并判断所述运行信息中是否存在代码执行异常的标识;
若所述运行信息中存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信不正常;
若所述运行信息中不存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信正常。
一种漏洞挖掘装置,包括:
获取单元,用于获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息;
生成单元,用于依据各个所述业务数据的业务信息,生成至少一条业务序列,所述业务序列中包含至少一个业务数据,所述业务序列中的各个业务数据依次排列;
数据变形单元,用于在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在业务序列中位于该业务数据前的各个业务数据,每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据;
触发单元,用于按每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,并触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信;
检测单元,用于检测所述工控设备与所述应用程序之间的通信是否正常,若所述工控设备与所述应用程序之间的通信不正常,则判断所述工控设备存在漏洞,并生成所述工控设备当前所应用的测试序列对应的漏洞报告。
上述的装置,可选的,所述生成单元,包括:
解析子单元,用于对每个所述业务数据的业务信息进行解析,获得所述业务信息中的业务类型以及业务逻辑,所述业务类型用于指示所述业务数据所属的业务,所述业务逻辑用于指示所述业务数据在所属业务中的先后顺序;
归纳子单元,用于将属于同一业务类型的各个所述业务数据归为同一集合,得到至少一个集合,所述集合中包含至少一个业务数据;
排除子单元,用于依据每个所述集合中各个所述业务数据的业务逻辑,将每个所述集合中的各个所述业务数据进行排序,生成与每个所述集合对应的业务序列。
上述的装置,可选的,所述数据变形单元,包括:
获取子单元,用于依次获取所述业务序列中的各个业务数据,并将当前获取的业务数据确定为目标业务数据;
确定子单元,用于确定所述目标业务数据中的数据字段的个数,并依据所述数据字段的个数确定所述目标业务数据的数据复杂度;
数据变形子单元,用于依据预设的模糊测试数据变形规则以及所述数据复杂度,并应用预设的变形算法对所述目标业务数据进行数据变形,得到所述目标业务数据进行数据变形后的模糊测试数据。
上述的装置,可选的,所述数据变形单元,包括:
判断子单元,用于判断当前业务数据是否位于其所在业务序列的末端;
第一替换子单元,用于若判断所述当前业务数据为其所在业务序列中末端的业务数据,则在所述业务序列中,将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列;
第二替换子单元,用于若判断所述当前业务数据不为其所在业务序列中末端的业务数据,则在所述业务序列中,将位于所述当前业务数据后的各个业务数据删除,并将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列。
上述的装置,可选的,还包括:
分析单元,用于对所述漏洞报告进行分析,确定所述漏洞报告中的漏洞是否为危险漏洞;
发送单元,用于若所述漏洞报告中的漏洞为危险漏洞,则将所述漏洞报告发送至预设的显示设备进行显示。
上述的装置,可选的,所述触发单元,包括:
触发子单元,用于触发所述工控设备将每个所述测试序列发送至所述应用程序,使所述应用程序调用与所述测试序列对应的代码运行所述测试序列,以生成与所述测试序列对应的运行信息,并向所述工控设备反馈所述测试序列的运行信息,完成所述工控设备应用所述测试序列与所述应用程序进行的通信。
上述的装置,可选的,所述触发单元,包括:
判断子单元,用于获取所述应用程序向所述工控设备反馈的运行信息,并判断所述运行信息中是否存在代码执行异常的标识;
第一判断结果子单元,用于若所述运行信息中存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信不正常;
第二判断结果子单元,用于若所述运行信息中不存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信正常。
与现有技术相比,本发明具有以下有益效果:
本发明提供的方法中,获取工控设备在当前通信过程中的各个业务数据,并依据各个所述业务数据的业务信息,生成至少一条业务序列;在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,实现了将业务序列中的各个业务数据有序的进行数据变形,生成的测试序列满足工控设备的处理要求,提高了生成的测试序列的可被工控设备进行处理的概率,提高了工控设备测试的覆盖率。将生成的测试序列按照生成的先后顺序发送至工控设备,触发所述工控设备应用所述测试序列与应用程序进行通信,检测所述工控设备与所述应用程序的通信是否异常,当所述工控设备与所述应用程序的通信存在异常时,生成工控设备当前应用的测试序列对应的漏洞报告,实现对工控设备的漏洞挖掘;应用本发明,生成的测试序列的满足工控设备的基本处理要求,进一步提高了生成的各个测试序列的测试率,提高了对工控设备进行漏洞挖掘的代码覆盖率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明实施例提供的一种漏洞挖掘方法的方法流程图;
图2为本发明实施例提供的一种漏洞挖掘方法的另一方法流程图;
图3为本发明实施例提供的一种漏洞挖掘方法的另一方法流程图;
图4为本发明实施例提供的一种漏洞挖掘方法的另一方法流程图;
图5为本发明实施例提供的一种漏洞挖掘装置的装置结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本申请中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本发明可应用于众多通用或专用的计算机装置环境或配置中。例如个人计算机、服务计算机、手持设备或便携式设备、平板型设备、多处理器装置、包括以上任何装置或设备的分布式计算环境等等。
本发明实施例提供了一种漏洞挖掘方法,该方法可应用各种计算机处理设备或是系统中,其执行主体为计算机处理设备的服务器或是系统中的处理器,本发明实施例提供的方法的用于挖掘多种工控设备的漏洞,本发明实施例提供的方法的方法流程图如图1所示,具体包括:
S101、获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息。
本发明实施例提供的方法中,获取工控设备当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息。需要说明的是,所述工控设备的当前通信过程可以为与预设的应用程序进行通信的过程;每个业务数据存在对应的业务信息,每个所述业务数据的业务信息均不相同。需要说明的是,获取工控设备在当前通信过程中的各个业务数据的方式可以为开发人员通过预设的接口手动输入各个业务数据,也可通过预设的捕获模块捕获所述工控设备进行通信过程中的各个业务数据。优选的,所述工控设备可以具体为分布式控制系统(Distributed Control System,DCS)、可编程逻辑控制器(ProgrammableLogic Controller,PLC)、远端测控单元装置(Remote Terminal Unit,RTU)以及继电保护系统等。
S102、依据各个所述业务数据的业务信息,生成至少一条业务序列,所述业务序列中包含至少一个业务数据,所述业务序列中的各个业务数据依次排列。
本发明实施例提供的方法中,确定获取的每个业务数据的业务信息,并依据所述业务信息生成至少一条业务序列,需要说明的是,生成的业务序列中包含至少一个业务数据,当所述业务序列中包含至少两个业务数据时,则所述业务序列中的各个业务数据按照预设的规则依次排列;当所述业务序列中包含一个业务数据时,所述业务数据即为所述业务序列的前端数据,也为所述业务序列的末端数据。
S103、在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在业务序列中位于该业务数据前的各个业务数据,每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据。
本发明实施例提供的方法中,对于生成的各个业务序列,在每个所述序列中,从位于所述业务序列末端的业务数据向位于所述业务序列前端的业务数据,依次对所述业务序列中的各个业务数据进行数据变形,得到每个业务数据进行数据变形后的模糊测试数据,并且生成每个所述业务数据对应的测试序列。需要说明的是,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在的业务序列中位于该业务数据前的各个业务数据,并且每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据。
需要说明的是,若所述业务数据为其所在业务序列的前端数据,则所述业务数据对应的测试序列中只包含所述业务数据进行数据变形后的模糊测试数据,即所述模糊测试数据为该测试序列的末端数据,也为该测试序列中的前端数据。需要说明的是,对于每个业务序列而言,所述业务序列中的业务数据的个数与生成的测试序列的个数相同。
S104、按每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,并触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信。
本发明实施例提供的方法中,生成的各个所述测试序列存在生成的先后顺序,优选的,对于同一业务序列中的各个业务数据的测试序列而言,最先生成位于所述业务序列末端的业务数据所对应的测试序列,最后生成位于所述业务序列前端的业务数据所对应的测试序列。按照每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,触发所述工控设备依次应用每个所述测试序列与所述预设在所述工控设备中的应用程序进行通信。
S105、检测所述工控设备与所述应用程序之间的通信是否正常,若所述工控设备与所述应用程序之间的通信不正常,则判断所述工控设备存在漏洞,并生成所述工控设备当前所应用的测试序列对应的漏洞报告。
本发明实施例提供的方法中,检测所述工控设备当前应用的测试序列与所述应用程序之间的通信是否正常的方式可采用多种协议观测方法进行检测,所述协议观测方法包括但不限于TCP协议栈观测方法、IP协议栈观测方法以及业务逻辑协议栈观测方法。当所述工控设备与所述应用程序之间的通信存在异常,例如应用程序崩溃或是运行出错时,则所述工控设备与所述应用程序之间的通信不正常。
本发明实施例提供的方法中,获取工控设备在当前通信过程中的各个业务数据,并依据各个所述业务数据的业务信息,生成至少一条业务序列;在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,实现了将业务序列中的各个业务数据有序的进行数据变形,生成的测试序列满足工控设备的处理要求,提高了生成的测试序列的可被工控设备进行处理的概率,提高了工控设备测试的覆盖率。将生成的测试序列按照生成的先后顺序发送至工控设备,触发所述工控设备应用所述测试序列与应用程序进行通信,检测所述工控设备与所述应用程序的通信是否异常,当所述工控设备与所述应用程序的通信存在异常时,生成工控设备当前应用的测试序列对应的漏洞报告,实现对工控设备的漏洞挖掘;应用本发明,生成的测试序列的满足工控设备的基本处理要求,进一步提高了生成的各个测试序列的测试率,提高了对工控设备的漏洞挖掘的覆盖率。
本发明实施例提供的方法中,执行主体中可预先设置业务流构建模块,所述业务流构建模块用于将获取的各个业务数据进行处理,生成至少一条业务序列,所述业务流构建模块用于依据获取的各个业务数据,生成业务序列;生成所述业务序列的具体过程可参照图2,具体说明如下所述:
S201、对每个所述业务数据的业务信息进行解析,获得所述业务信息中的业务类型以及业务逻辑,所述业务类型用于指示所述业务数据所属的业务,所述业务逻辑用于指示所述业务数据在所属业务中的先后顺序。
本发明实施例提供的方法中,确定每个所述业务数据的业务信息,对每个所述业务数据的业务信息进行解析,以获取所述业务信息中的业务类型以及业务逻辑,需要说明的是,所述业务信息包括但不限于所述业务类型以及所述业务逻辑,还可包括所述业务数据中各个数据字段的信息;所述业务类型用于表示所述业务数据所属的业务,所述业务逻辑用于表示所述业务数据在所属业务中排序的先后顺序。
S202、将属于同一业务类型的各个所述业务数据归为同一集合,得到至少一个集合,所述集合中包含至少一个业务数据。
本发明实施例提供的方法中,将相同业务类型的各个业务数据划分为同一集合,生成至少一个集合;需要说明的是,每个集合中包含至少一个业务数据。需要说明的是,每个集合对应不同的业务类型,即一个集合对应一种业务。
S203、依据每个所述集合中各个所述业务数据的业务逻辑,将每个所述集合中的各个所述业务数据进行排序,生成与每个所述集合对应的业务序列。
本发明实施例提供的方法中,在每个所述集合中,确定所述集合中各个所述业务数据的业务逻辑,所述业务逻辑表征所述业务数据在所属业务中排列的先后顺序,依据各个所述业务数据的业务逻辑,将各个所述业务数据依次进行排列,生成与所述集合对应的业务序列。需要说明的是,每个集合均生成与其对应的业务序列。
本发明实施例提供的方法中,通过依据获取的各个业务数据,生成业务序列,生成的业务数据中的各个业务数据有序进行排列,并且生成的业务序列满足工控设备的处理要求,确保了后期进行数据变形所生成的测试序列的有效性。
本发明实施例提供的方法中,应用本发明的执行主体中可预先设置测试样例构建模块,所述测试样例构建模块用于将每个所述业务序列中的各个业务数据进行数据变形,得到每个业务数据进行数据变形后的模糊测试数据以及每个所述业务数据对应的测试序列,需要说明的是,所述执行主体中还可预设反序列化引擎和业务流构建模块,所述测试样例构建模块获取业务流构建模块中生成的业务序列,并依据反序列引擎的要求生成测试序列,反序列引擎规定从业务序列的末端向前端,处理业务序列中的业务数据;测试序列的具体生成过程可参照图3,具体说明如下所述:
S301、依次获取所述业务序列中的各个业务数据,并将当前获取的业务数据确定为目标业务数据。
本发明实施例提供的方法中,在每个业务序列中,从所述业务序列的末端到前端依次获取所述业务序列中的各个业务数据,将从所述业务序列中当前获取的业务数据确定为目标业务数据。
S302、确定所述目标业务数据中的数据字段的个数,并依据所述数据字段的个数确定所述目标业务数据的数据复杂度。
本发明实施例提供的方法中,对所述目标业务数据进行解析,以确定所述目标业务数据中包含的数据字段的个数;需要说明的是,所述业务数据为多个数据字段的集合,可选的,所述业务数据还可表示为该业务数据所在的业务序列的节点。根据所述目标业务数据中包含的数据字段的个数确定所述目标业务数据的数据复杂度。
S303、依据预设的模糊测试数据变形规则以及所述数据复杂度,并应用预设的变形算法对所述目标业务数据进行数据变形,得到所述目标业务数据进行数据变形后的模糊测试数据。
本发明实施例提供的方法中,依据预设的模糊测试数据变形规则以及数据复杂度调整所述目标业务数据中进行数据变形的数据字段,调整的数据字段与所述目标业务数据中的数据字段的个数相关联,所述模糊测试数据变形规则可为所述工控设备可接收数据的数据条件,具体的,所述模糊数据变形规则可以包括字节长度的限定、环境变量以及注册表键等信息。所述预设的变形算法包括但不限于比特反转变异、拼接变异以及python等,本发明还可应用其他数据变异的算法实现业务数据的数据变形。
S304、判断所述目标业务数据是否位于其所在业务序列的末端。
本发明实施例提供的方法中,所述目标业务数据为在业务序列中获取的当前业务数据,判断所述目标业务数据是否位于其所在业务序列的末端可通过所述目标业务数据的业务逻辑进行判断;需要说明的是,每个所述业务数据的业务逻辑可表征所述业务数据位于所在的业务序列中的位置。判断所述目标业务数据的业务逻辑是否表征为所述目标业务数据所在的业务序列的末端;若所述目标业务数据的业务逻辑表征为所述目标业务数据所在的业务序列的末端,则判断所述目标业务数据位于其所在业务序列的末端;若所述目标业务数据的业务逻辑不表征为所述目标业务数据所在的业务序列的末端,则判断所述目标业务数据不位于其所在业务序列的末端。
S305、若判断所述目标业务数据为其所在业务序列中末端的业务数据,则在所述业务序列中,将所述目标业务数据进行数据变形后得到的模糊测试数据替换所述目标业务数据,生成与所述目标业务数据对应的测试序列。
S306、若判断所述目标业务数据不为其所在业务序列中末端的业务数据,则在所述业务序列中,将位于所述目标业务数据后的各个业务数据删除,并将所述目标业务数据进行数据变形后得到的模糊测试数据替换所述目标业务数据,生成与所述当前业务数据对应的测试序列。
本发明实施例提供的方法中,每个所述业务数据对应的测试序列的末端数据为该业务数据进行数据变形后得到的模糊测试数据。需要说明的是,若所述业务数据位于其所在业务序列中的前端,则与该业务数据对应的测试序列中只包含该业务数据进行数据变形后得到的模糊测试数据。
本发明实施例提供的方法中,生成的测试序列满足工控设备接收数据的要求以及处理条件,提高所述工控设备对各个测试序列的处理概率,所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信,通过检查所述工控设备与所述应用程序的通信状态,实现对所述工控设备的漏洞挖掘,判断所述工控设备与所述应用程序之间的通信状态可参照图4,具体说明如下所述:
S401、触发所述工控设备将每个所述测试序列发送至所述应用程序,使所述应用程序调用与所述测试序列对应的代码运行所述测试序列,以生成与所述测试序列对应的运行信息,并向所述工控设备反馈所述测试序列的运行信息,完成所述工控设备应用所述测试序列与所述应用程序进行的通信。
S402、获取所述应用程序向所述工控设备反馈的运行信息,并判断所述运行信息中是否存在代码执行异常的标识。
S403、若所述运行信息中存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信不正常。
S404、若所述运行信息中不存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信正常。
本发明实施例提供的方法中,所述代码执行异常的标识可表征所述代码运行测试序列时崩溃或是出错。当所述工控设备与所述应用程序之间的通信不正常时,判断所述工控设备存在漏洞,并且所述工控设备当前所应用的测试序列可复现漏洞,生成所述工控设备当前所应用的测试序列对应的漏洞报告。
本发明实施例提供的方法中,对所述漏洞报告进行分析,确定所述漏洞报告中的漏洞是否为危险漏洞;若所述漏洞报告中的漏洞为危险漏洞,则将所述漏洞报告发送至预设的显示设备进行显示。
需要说明的是,所述危险漏洞为所述危及所述工控设备安全的漏洞,此种漏洞还可称为可用漏洞,应用所述危险漏洞可攻击所述工控设备,使工控设备的安全性降低。
本发明实施例提供的方法中,检测所述工控设备与应用程序之间的通信是否正常时,可应用ARP监控或是Ping监控等方式实现对工控设备与应用程序之间通信的监控。
本发明实施例提供的方法中,获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息,依据各个所述业务数据的业务信息生成至少一条业务序列;在每个所述业务序列中,从所述业务序列的末端向前端,依次对所述业务数据中的各个业务数据进行数据变形,得到每个所述业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列;将每个所述测试序列按照生成顺序依次发送至工控设备,触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信,当检测到所述工控设备与所述应用程序的通信不正常时,判定所述控工设备存在漏洞,并生成与所述工控设备当前所应用的测试序列对饮的漏洞报告。本发明从所述业务序列的末端到前端对各个业务数据依次进行数据变形,得到的模糊测试数据以及生成的测试序列满足所工控设备接收数据的条件,实现了对业务序列各个业务数据的反向有序变形,可使生成的测试序列的业务逻辑不混乱,测试序列中的数据字段不混乱,提高工控设备可处理的测试序列的数量,提高对工控设备测试的覆盖率以及提高数据可处理的比例。
与图1对应的,本发明实施例提供一种漏洞挖掘装置,所述装置可应用在计算机设备中,用于支持本发明提供的方法在实际中的应用,所述装置的装置结构图如图5所述,具体说明如下所述:
获取单元501,用于获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息;
生成单元502,用于依据各个所述业务数据的业务信息,生成至少一条业务序列,所述业务序列中包含至少一个业务数据,所述业务序列中的各个业务数据依次排列;
数据变形单元503,用于在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在业务序列中位于该业务数据前的各个业务数据,每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据;
触发单元504,用于按每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,并触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信;
检测单元505,用于检测所述工控设备与所述应用程序之间的通信是否正常,若所述工控设备与所述应用程序之间的通信不正常,则判断所述工控设备存在漏洞,并生成所述工控设备当前所应用的测试序列对应的漏洞报告。
本发明实施例提供的装置中,所述装置可通过接口与工控设备进行连接,获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息,依据各个所述业务数据的业务信息生成至少一条业务序列;在每个所述业务序列中,从所述业务序列的末端向前端,依次对所述业务数据中的各个业务数据进行数据变形,得到每个所述业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列;将每个所述测试序列按照生成顺序依次发送至工控设备,触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信,当检测到所述工控设备与所述应用程序的通信不正常时,判定所述控工设备存在漏洞,并生成与所述工控设备当前所应用的测试序列对饮的漏洞报告。本发明从所述业务序列的末端到前端对各个业务数据依次进行数据变形,得到的模糊测试数据以及生成的测试序列满足所工控设备接收数据的条件,实现了对业务序列各个业务数据的反向有序变形,可使生成的测试序列的业务逻辑不混乱,测试序列中的数据字段不混乱,提高工控设备可处理的测试序列的数量,提高对工控设备测试的覆盖率以及提高数据可处理的比例。
本发明实施例提供的装置中,可对所述生成单元502进行以下所述的配置:
解析子单元,用于对每个所述业务数据的业务信息进行解析,获得所述业务信息中的业务类型以及业务逻辑,所述业务类型用于指示所述业务数据所属的业务,所述业务逻辑用于指示所述业务数据在所属业务中的先后顺序;
归纳子单元,用于将属于同一业务类型的各个所述业务数据归为同一集合,得到至少一个集合,所述集合中包含至少一个业务数据;
排除子单元,用于依据每个所述集合中各个所述业务数据的业务逻辑,将每个所述集合中的各个所述业务数据进行排序,生成与每个所述集合对应的业务序列。
本发明实施例提供的装置中,可对所述数据变形单元503进行以下所述的配置:
获取子单元,用于依次获取所述业务序列中的各个业务数据,并将当前获取的业务数据确定为目标业务数据;
确定子单元,用于确定所述目标业务数据中的数据字段的个数,并依据所述数据字段的个数确定所述目标业务数据的数据复杂度;
数据变形子单元,用于依据预设的模糊测试数据变形规则以及所述数据复杂度,并应用预设的变形算法对所述目标业务数据进行数据变形,得到所述目标业务数据进行数据变形后的模糊测试数据。
本发明实施例提供的装置中,可对所述数据变形单元503进行以下所述的配置:
判断子单元,用于判断当前业务数据是否位于其所在业务序列的末端;
第一替换子单元,用于若判断所述当前业务数据为其所在业务序列中末端的业务数据,则在所述业务序列中,将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列;
第二替换子单元,用于若判断所述当前业务数据不为其所在业务序列中末端的业务数据,则在所述业务序列中,将位于所述当前业务数据后的各个业务数据删除,并将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列。
本发明实施例提供的装置中,还可以进行以下所述的配置:
分析单元,用于对所述漏洞报告进行分析,确定所述漏洞报告中的漏洞是否为危险漏洞;
发送单元,用于若所述漏洞报告中的漏洞为危险漏洞,则将所述漏洞报告发送至预设的显示设备进行显示。
本发明实施例提供的装置中,可对所述触发单元504进行以下所述的配置:
触发子单元,用于触发所述工控设备将每个所述测试序列发送至所述应用程序,使所述应用程序调用与所述测试序列对应的代码运行所述测试序列,以生成与所述测试序列对应的运行信息,并向所述工控设备反馈所述测试序列的运行信息,完成所述工控设备应用所述测试序列与所述应用程序进行的通信。
本发明实施例提供的装置中,可对所述触发单元505进行以下所述的配置:
判断子单元,用于获取所述应用程序向所述工控设备反馈的运行信息,并判断所述运行信息中是否存在代码执行异常的标识;
第一判断结果子单元,用于若所述运行信息中存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信不正常;
第二判断结果子单元,用于若所述运行信息中不存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信正常。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的系统及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种漏洞挖掘方法,其特征在于,包括:
获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息;
依据各个所述业务数据的业务信息,生成至少一条业务序列,所述业务序列中包含至少一个业务数据,所述业务序列中的各个业务数据依次排列;
在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在业务序列中位于该业务数据前的各个业务数据,每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据;
按每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,并触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信;
检测所述工控设备与所述应用程序之间的通信是否正常,若所述工控设备与所述应用程序之间的通信不正常,则判断所述工控设备存在漏洞,并生成所述工控设备当前所应用的测试序列对应的漏洞报告。
2.根据权利要求1所述的方法,其特征在于,所述依据各个所述业务数据的业务信息,生成至少一条业务序列,包括:
对每个所述业务数据的业务信息进行解析,获得所述业务信息中的业务类型以及业务逻辑,所述业务类型用于指示所述业务数据所属的业务,所述业务逻辑用于指示所述业务数据在所属业务中的先后顺序;
将属于同一业务类型的各个所述业务数据归为同一集合,得到至少一个集合,所述集合中包含至少一个业务数据;
依据每个所述集合中各个所述业务数据的业务逻辑,将每个所述集合中的各个所述业务数据进行排序,生成与每个所述集合对应的业务序列。
3.根据权利要求1所述的方法,其特征在于,所述依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,包括:
依次获取所述业务序列中的各个业务数据,并将当前获取的业务数据确定为目标业务数据;
确定所述目标业务数据中的数据字段的个数,并依据所述数据字段的个数确定所述目标业务数据的数据复杂度;
依据预设的模糊测试数据变形规则以及所述数据复杂度,并应用预设的变形算法对所述目标业务数据进行数据变形,得到所述目标业务数据进行数据变形后的模糊测试数据。
4.根据权利要求1所述的方法,其特征在于,所述生成每个所述业务数据对应的测试序列,包括:
判断当前业务数据是否位于其所在业务序列的末端;
若判断所述当前业务数据为其所在业务序列中末端的业务数据,则在所述业务序列中,将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列;
若判断所述当前业务数据不为其所在业务序列中末端的业务数据,则在所述业务序列中,将位于所述当前业务数据后的各个业务数据删除,并将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列。
5.根据权利要求1所述的方法,其特征在于,还包括:
对所述漏洞报告进行分析,确定所述漏洞报告中的漏洞是否为危险漏洞;
若所述漏洞报告中的漏洞为危险漏洞,则将所述漏洞报告发送至预设的显示设备进行显示。
6.根据权利要求1所述的方法,其特征在于,所述触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信,包括:
触发所述工控设备将每个所述测试序列发送至所述应用程序,使所述应用程序调用与所述测试序列对应的代码运行所述测试序列,以生成与所述测试序列对应的运行信息,并向所述工控设备反馈所述测试序列的运行信息,完成所述工控设备应用所述测试序列与所述应用程序进行的通信。
7.根据权利要求6所述的方法,其特征在于,所述检测所述工控设备与所述应用程序之间的通信是否正常,包括:
获取所述应用程序向所述工控设备反馈的运行信息,并判断所述运行信息中是否存在代码执行异常的标识;
若所述运行信息中存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信不正常;
若所述运行信息中不存在所述代码执行异常的标识,则判定所述工控设备与所述应用程序之间的通信正常。
8.一种漏洞挖掘装置,其特征在于,包括:
获取单元,用于获取工控设备在当前通信过程中的各个业务数据,并确定各个所述业务数据的业务信息;
生成单元,用于依据各个所述业务数据的业务信息,生成至少一条业务序列,所述业务序列中包含至少一个业务数据,所述业务序列中的各个业务数据依次排列;
数据变形单元,用于在每个所述业务序列中,从所述业务序列的末端向所述业务序列的前端,依次对所述业务序列中的各个业务数据进行数据变形,获得每个业务数据进行数据变形后的模糊测试数据,并生成每个所述业务数据对应的测试序列,每个所述业务数据对应的测试序列中包含该业务数据进行数据变形后的模糊测试数据以及该业务数据所在业务序列中位于该业务数据前的各个业务数据,每个所述测试序列的末端数据为其对应的业务数据进行变形后的模糊测试数据;
触发单元,用于按每个所述测试序列的生成顺序,将各个所述测试序列发送至所述工控设备,并触发所述工控设备依次应用每个所述测试序列与预设在所述工控设备中的应用程序进行通信;
检测单元,用于检测所述工控设备与所述应用程序之间的通信是否正常,若所述工控设备与所述应用程序之间的通信不正常,则判断所述工控设备存在漏洞,并生成所述工控设备当前所应用的测试序列对应的漏洞报告。
9.根据权利要求8所述的装置,其特征在于,所述数据变形单元,包括:
获取子单元,用于依次获取所述业务序列中的各个业务数据,并将当前获取的业务数据确定为目标业务数据;
确定子单元,用于确定所述目标业务数据中的数据字段的个数,并依据所述数据字段的个数确定所述目标业务数据的数据复杂度;
数据变形子单元,用于依据预设的模糊测试数据变形规则以及所述数据复杂度,并应用预设的变形算法对所述目标业务数据进行数据变形,得到所述目标业务数据进行数据变形后的模糊测试数据。
10.根据权利要求8所述的装置,其特征在于,所述数据变形单元,包括:
判断子单元,用于判断当前业务数据是否位于其所在业务序列的末端;
第一替换子单元,用于若判断所述当前业务数据为其所在业务序列中末端的业务数据,则在所述业务序列中,将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列;
第二替换子单元,用于若判断所述当前业务数据不为其所在业务序列中末端的业务数据,则在所述业务序列中,将位于所述当前业务数据后的各个业务数据删除,并将所述当前业务数据进行数据变形后得到的模糊测试数据替换所述当前业务数据,生成与所述当前业务数据对应的测试序列。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911051837.8A CN110825630B (zh) | 2019-10-31 | 2019-10-31 | 漏洞挖掘方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911051837.8A CN110825630B (zh) | 2019-10-31 | 2019-10-31 | 漏洞挖掘方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110825630A true CN110825630A (zh) | 2020-02-21 |
CN110825630B CN110825630B (zh) | 2023-04-21 |
Family
ID=69551682
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911051837.8A Active CN110825630B (zh) | 2019-10-31 | 2019-10-31 | 漏洞挖掘方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110825630B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609210A (zh) * | 2021-08-23 | 2021-11-05 | 广州梦源信息科技有限公司 | 基于人工智能的大数据可视化处理方法及可视化服务系统 |
CN115174276A (zh) * | 2022-09-07 | 2022-10-11 | 国网江西省电力有限公司电力科学研究院 | 一种竞争式工业控制系统漏洞挖掘方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301813A1 (en) * | 2007-05-31 | 2008-12-04 | Microsoft Corporation | Testing Software Applications with Schema-based Fuzzing |
CN106412067A (zh) * | 2016-09-30 | 2017-02-15 | 广东电网有限责任公司电力科学研究院 | 基于工控协议模糊测试的数据分层生成方法 |
CN106647612A (zh) * | 2017-02-17 | 2017-05-10 | 上海云剑信息技术有限公司 | 一种基于状态关系图的plc漏洞挖掘方法 |
CN108509797A (zh) * | 2018-02-23 | 2018-09-07 | 福州恒奥信息科技有限公司 | 基于模糊测试的工控系统漏洞挖掘方法、装置及修复方法 |
-
2019
- 2019-10-31 CN CN201911051837.8A patent/CN110825630B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080301813A1 (en) * | 2007-05-31 | 2008-12-04 | Microsoft Corporation | Testing Software Applications with Schema-based Fuzzing |
CN106412067A (zh) * | 2016-09-30 | 2017-02-15 | 广东电网有限责任公司电力科学研究院 | 基于工控协议模糊测试的数据分层生成方法 |
CN106647612A (zh) * | 2017-02-17 | 2017-05-10 | 上海云剑信息技术有限公司 | 一种基于状态关系图的plc漏洞挖掘方法 |
CN108509797A (zh) * | 2018-02-23 | 2018-09-07 | 福州恒奥信息科技有限公司 | 基于模糊测试的工控系统漏洞挖掘方法、装置及修复方法 |
Non-Patent Citations (1)
Title |
---|
姜百合;傅建明;王应军;王亚丽;黄坚伟;: "基于Fuzzing技术的云数据泄露漏洞检测" * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113609210A (zh) * | 2021-08-23 | 2021-11-05 | 广州梦源信息科技有限公司 | 基于人工智能的大数据可视化处理方法及可视化服务系统 |
CN115174276A (zh) * | 2022-09-07 | 2022-10-11 | 国网江西省电力有限公司电力科学研究院 | 一种竞争式工业控制系统漏洞挖掘方法及系统 |
CN115174276B (zh) * | 2022-09-07 | 2022-12-30 | 国网江西省电力有限公司电力科学研究院 | 一种竞争式工业控制系统漏洞挖掘方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN110825630B (zh) | 2023-04-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107294808B (zh) | 接口测试的方法、装置和系统 | |
CN105264861B (zh) | 用于检测多阶段事件的方法和设备 | |
CN111385260B (zh) | 一种端口探测方法、系统、服务器和存储介质 | |
CN108306787B (zh) | 一种应用监测方法及相关设备 | |
CN113726607B (zh) | 一种网络探测方法、装置、电子设备及存储介质 | |
CN110825630A (zh) | 漏洞挖掘方法及装置 | |
CN110267215B (zh) | 一种数据检测方法、设备及存储介质 | |
CN109284611B (zh) | 基于Metasploit框架的测试系统及实现网络安全性测试的方法 | |
CN108243062A (zh) | 用以在时间序列数据中探测机器启动的事件的系统 | |
CN109309591A (zh) | 流量数据统计方法、电子设备及存储介质 | |
CN112436972A (zh) | 数据处理方法、装置、网络设备及计算机可读存储介质 | |
US20160323362A1 (en) | Automatic task tracking | |
CN112653693A (zh) | 一种工控协议分析方法、装置、终端设备及可读存储介质 | |
CN107590389B (zh) | 安全性测试方法及装置、电子设备、计算机存储介质 | |
CN111752819B (zh) | 一种异常监控方法、装置、系统、设备和存储介质 | |
KR101625890B1 (ko) | 인터넷 응용 트래픽 프로토콜의 시그니처 변경 탐지를 위한 테스트 자동화 방법 및 시스템 | |
CN109086185B (zh) | 一种存储集群的故障检测方法、装置、设备及存储介质 | |
CN115102838B (zh) | 服务器宕机风险的应急处理方法和装置、电子设备 | |
CN109688088B (zh) | 网络入侵防护系统抗逃逸能力测试方法、装置和测试机 | |
CN115269269A (zh) | 演练方法、装置、备份服务器、介质、服务器集群及系统 | |
EP3461102B1 (en) | Notification control device, notification control system, notification control method, and storage medium | |
CN111240872A (zh) | 一种基于云计算的自助设备诊断方法 | |
CN106970878B (zh) | 一种调试事件监测方法以及调试事件监测系统 | |
CN106547679B (zh) | 脚本管理的方法和脚本管理平台 | |
CN109214190A (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 |