CN110505111A - 基于流量重放的工控协议模糊测试方法 - Google Patents
基于流量重放的工控协议模糊测试方法 Download PDFInfo
- Publication number
- CN110505111A CN110505111A CN201910615367.7A CN201910615367A CN110505111A CN 110505111 A CN110505111 A CN 110505111A CN 201910615367 A CN201910615367 A CN 201910615367A CN 110505111 A CN110505111 A CN 110505111A
- Authority
- CN
- China
- Prior art keywords
- message
- protocol
- industry control
- agreement
- fuzz testing
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/18—Protocol analysers
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/2866—Architectures; Arrangements
- H04L67/30—Profiles
-
- 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/26—Special purpose or proprietary protocols or architectures
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer And Data Communications (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Communication Control (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及工业网络安全领域,具体而言涉及一种基于流量重放的工控协议模糊测试方法。本发明旨在提供一种基于流量重放的工控协议模糊测试方法,以工控设备运行环境的真实协议流量数据为基础,通过简易的配置文件格式和工控协议报文定义格式,构建对应的协议解析器,提取设备协议状态报文,对用户指定工控协议字段进行模糊化,最后提取报文应用层数据,将其封装和重放,在保证输入有效和协议会话完整建立的前提下,快速、高效的进行工控协议模糊测试。本发明适用于已有工控协议漏洞挖掘、工控协议研发的自动化测试等工作中。
Description
技术领域
本发明涉及工业网络安全领域,具体而言涉及一种基于流量重放的工控协议模糊测试方法。
背景技术
在过去的十几年里,计算机相关的网络技术越来越多的应用与工业控制系统中,但同时也带来了工控系统网络安全问题,工控网络成为黑客、恐怖分子、敌对势力进行攻击破坏的新目标。目前工控系统作为石化、电网、交通运输、污水处理等关键领域的重要组成部分,其安全性已成为国家信息安全的关注热点。
模糊测试是一种高度自动化的测试技术,通过大量输入随机数据,无需进入系统内部或者获得源代码,即可发现程序实现上的不足,但是这样的测试是盲目的,因为工控设备在解析这些输入时,如果不符合协议规范,设备会直接重置连接,那么这样的测试只能停留在协议状态的初级阶段。
针对这样的问题,目前很多模糊测试技术针对工控协议格式知识来构建测试用例。比如专利CN201910189084.0提出的测试方法会生成三种测试用例:1.通过专家知识将Modbus协议划分为动态与静态部分,对动态部分进行变异组合来生成测试用例。2.基于已公开漏洞信息生成测试用例。3.基于公开漏洞信息相似特征生成测试用例。这类模糊测试技术缺点在于:许多工控协议比如Siemens S7需要使用COTP协议建立应用层会话后,再进行操作,而这些技术难以建立完整的会话过程,难以挖掘出深层次的漏洞。
针对工控协议的动态会话建立问题,专利201610094014.3提出通过在协议通信报文样本的基础上使用开源协议逆向分析项目Netzob提取协议状态机,基于协议状态机将工控设备引导到待测状态,再将变异后的报文发送到目标设备,但是许多工业控制协议由多层协议组合而成,比如CIP协议(Common Industrial Protocol)使用Ethernet/IP封装,现有的协议逆向技术对于多层未知协议字段提取准确率不高,这样造成工控协议在建立会话时,需要填写的机架、槽位、密码等设备组态时设置的信息不正确,协议报文被工控设备拒绝,导致测试覆盖率低。
而现有的网络协议模糊测试框架,如Kitty、Sulley、Peach等,在每次测试前根据协议格式描述,需要人工编写大量的协议模糊测试用例等繁杂且重复的人工操作,降低了协议模糊测试工作效率,因此本发明提出一个基于工控协议流量数据重放的高效模糊测试方法。
发明内容
针对现有技术中存在的问题,本发明旨在提供一种基于流量重放的工控协议模糊测试方法。以工控设备运行环境的真实协议流量数据为基础,通过简易的配置文件格式和工控协议报文定义格式,构建对应的协议解析器,提取设备协议状态报文,对用户指定工控协议字段进行模糊化,封装和重放报文,从而快速进行工控协议模糊测试。该方法适用于已有工控协议漏洞挖掘和工控协议研发的自动化测试。
为达成上述目的,本发明所采用的技术方案步骤如下:
步骤1、配置文件读取。
首先读取用户填写的配置文件,其中包含需要测试的设备目标IP、指定设备所用的协议、指定重放的报文文件路径、工控协议报文格式文件路径、指定模糊测试的工控协议数据字段以及模糊测试的次数。
步骤2协议解析器构建与协议解析。
根据配置文件中指定的协议,读取相关的协议报文格式文件,构建协议解析器。框架内部已经包含许多协议格式文件,同时用户可以简便的新增其他工控协议,协议解析器通过读取测试协议相关的报文格式定义文件,构建协议树状结构,节点包含协议字段长度、字段类型、字段名称。
步骤3、测试协议相关报文提取。
已有的报文被加载后并不能直接用于测试,因为里面混杂了比如TCP的FIN、SYN、ACK报文,以及其他应用层的协议报文,这些报文会影响协议状态变化,同时影响之后的追踪溯源,所以需要过滤这些不相关报文,为之后报文变异做准备。
步骤4、连接目标设备。
根据配置中指定的协议、目标IP,建立与目标之间的Socket连接,同时设置连接超时时间,如果无法建立连接,将错误信息写入日志。
步骤5、设备存活确认。
在每次测试前,使用ICMP Ping报文确认设备处于工作状态。如果设备无响应,表明测试用例导致设备出现无响应,将异常测试用例保存。
步骤6、工控协议数据字段模糊化。
在测试报文发送到目前设备前,需要将根据配置文件中指定的协议字段变异。针对协议字段的类型不同进行使用不同的变异方法,字符串类型字段使用开源工具RADAMSA,数值型字段使用随机数字。
步骤7、模糊测试报文封装和重放。
将变异后的测试用例截取、封装成新的报文发送到目标设备,等待设备响应,因为变异后的测试用例可能会被设备拒绝,如果出现连接重置(connect reset),那么跳过当前用例之后的报文,重建与设备的连接,进入下一次测试。
本发明优点:
1.相对于已有的测试框架Kitty、Sulley、Peach,不需要手动的针对每一个字段编写测试用例,指定需要测试的字段和提供真实流量即可进行测试,缩短测试准备阶段。
2.相对于对报文整体变异作为输入,本方法使用Python语言来定义协议格式,通过读取工控协议报文格式文件构造协议解析器,根据配置文件变异指定字段,在保持输入的有效性的前提下挖掘漏洞。
3.通过对真实数据报文重放,引导设备到与历史相同的状态,保证工控协议能够完整建立会话,进行深层次的模糊测试。
附图说明
图1为本发明抓取真实环境流量的实施例示意图。
图2为本发明整体流程的示意图。
图3是本发明步骤示意图。
具体实施方式
为了更好的解释本发明方案,下面结合附图对本发明的实施方式进行详细描述。
本发明给出一种基于流量重放的工控协议模糊测试方法实施例。在测试前需要获取真实的工控协议报文,如图1所示,将抓包工具至于上位机和被测工控设备之间,其中抓包设备可以是开启端口镜像的交换机或是上位机上打开Wireshark等抓包工具,最后得到数据报文件。之后如图2所示,将数据报文件、配置文件、协议报文格式定义文件作为整个方法的输入,经过模糊测试方法的处理后将变异报文发送到目标设备来进行测试。
如图3所示,本发明的测试方法包含在一个主函数fuzzing中,包括配置文件读取、协议解析器构建和协议解析、测试协议相关报文提取、连接目标设备、设备存活确认、工控协议数据字段模糊化、模糊测试报文封装和重放这七步。
下面使用伪代码展示整个测试方法的主函数fuzzing流程,主函数
囊括了上述七个步骤,每个步骤作为关键函数置于其中:
下面详细介绍每一步骤流程:
步骤1配置文件读取(readConfig)。
步骤1.1使用配置解析器加载配置文件。首先根据传入的配置文件路径configPath打开配置文件,将读入的字节传入Python语言自带的json解析库函数,输出Python语言的字典类型表示配置信息config。
配置文件格式:字段的键在分号前,字段的值在分号后,其中配置文件必须包含字段:设备所用的工控协议protocol、目标设备IP地址dstIp、重放报文文件路径pcapPath、工控协议报文格式文件路径protocolPath、指定需要模糊测试的字段fields、模糊测试次数count,模糊测试字段fields由数组表示,数组每个元素都指定需要进行变异的工控协议数据字段。
步骤2协议解析器构建与协议解析(buildParserAndParse)。
步骤2.1根据协议报文格式构建协议解析器(buildParser)。首先将配置信息config中协议报文格式文件路径protocolPath作为输入,使用Python导入模块库函数import_module动态导入协议定义类,构建协议树状结构,最后测试协议报文格式类绑定到解析器指定的运输层端口上,生成解析器对象parser。协议报文格式包含协议的运输层端口、协议字段长度、字段类型、字段名称,同时对于长度定义字段节点中还包括长度计算方法。
步骤2.2读取重放报文文件(readPcap)。将重放报文文件路径pcapPath作为输入,打开文件输入流stream,其中重放报文文件使用PCAP格式。
步骤2.3输入流解析为原始报文(parseRaw)。在PCAP文件中每一个报文由PacketHeader和Packet Data组成,每次读取Packet Header获得Packet Data长度dataLen,然后stream再向后读取dataLen字节数据得到原始报文数据packet,将packet保存到数组rawPacket中,重复这个步骤,直到stream读取完毕,最后输出rawPacket。
步骤2.4协议解析器解析原始报文。将步骤2.3解析的原始报文数组rawPacket作为输入,遍历每一个rawPacketi,调用步骤2.1中parser的parse方法得到已解析报文对象。parse方法会按照数据链路层、网络层、运输层、应用层的TCP/IP模型顺序调用每一层对应的解析器,其中应用层解析器在步骤2.1中绑定,而其他层的解析器是协议解析器自带。已解析报文对象保存在数组Packet中。最后输出Packet。
下面使用伪代码描述步骤2的流程:
步骤3测试协议相关报文提取(extract)。
提取与测试工控协议相关的报文。首先将已解析数据报文Packet作为输入,遍历每一个报文Packeti,使用函数hasLayer判断如果Packeti的运输层协议不是TCP协议,那么舍弃这个报文;如果Packeti的TCP协议标志位tcpFlag是TCP协议的SYN、ACK、FIN标志位中的一个,那么舍弃这个报文;使用函数hasLayer判断如果Packeti的应用层协议不是配置信息config中指定工控协议protocol,则舍弃这个报文,反之保存报文到数组ePacket中,随后将ePacket输出。
下面使用伪代码描述从Packet中提取协议相关报文流程:
步骤4连接目标设备(connect)。
将配置文件指定的协议、目标IP作为输入,建立与目标之间的连接conn,同时设置连接超时时间,如果无法建立连接,将错误信息写入日志。
步骤5设备存活确认(isSurvive)。
下一步会将变异后的报文发送到目标设备,所以需要确认此时设备是否存活。通过向测试设备发送ICMP Ping报文,若测试设备无响应,则将测试用例保存,同时记录事件信息日志,反之进入步骤6。
步骤6工控协议数据字段模糊化(mutate)。
步骤6.1将提取的报文ePacket作为输入,遍历每一个报文ePacketi,在函数hasLayer中判断其应用层是不是测试协议,如果是则进入步骤6.2,否则跳过该报文。
步骤6.2在函数mutateField中遍历该报文的协议树状结构,找到配置信息中指定的协议字段fields,根据这个字段类型选择对应的变异策略,字符串类型字段使用开源工具RADAMSA,数值型字段使用随机数字。最后将变异报文mPacket输出,进入步骤7。
下面使用伪代码描述工控协议数据字段模糊化流程:
步骤7模糊测试报文封装和重放(encapsulateAndSend)。
步骤7.1提取数据(extractData)。将已变异的测试报文mPacket作为输入,遍历每一个报文mPacketi,截取应用层数据data,然后封装成完整数据报文。
步骤7.2通过步骤4建立的连接conn,将完整数据报文发送到目标设备。
步骤7.3通过函数isConnectRest来判断此时连接状态,如果出现连接重置错误,则使用函数saveLog将事件记录日志,然后函数reconnect重新建立与目标的连接,此次测试之后的报文跳过,进入步骤5。
下面使用伪代码描述模糊测试报文封装和重放流程:
综上所述,本发明基于流量重放的工控协议测试方法,通过对真实流量数据进行自动提取、变异、截取、封装来生成模糊测试用例,在不依赖手工编写的测试用例的情况下,减少模糊测试准备阶段的时间,同时根据协议字段类型针对性的变异生成字段值,有效提高了测试的覆盖率,并且依靠简单的配置文件和报文格式定义文件构建协议解析器,适用于种类繁多的工业控制协议。
Claims (7)
1.基于流量重放的工控协议模糊测试方法,其特征在于:以工控设备运行环境的真实协议流量数据为基础,通过配置文件格式和工控协议报文定义格式,构建对应的协议解析器,提取设备协议状态报文,对用户指定工控协议字段进行模糊化,封装和重放报文,从而快速进行工控协议模糊测试。
2.根据权利要求1所述的基于流量重放的工控协议模糊测试方法,其特征在于具体步骤如下:
步骤1:配置文件读取;
首先读取用户填写的配置文件,其中包含需要测试的设备目标IP、指定设备所用的协议、指定重放的报文文件路径、工控协议报文格式文件路径、指定模糊测试的工控协议数据字段以及模糊测试的次数;
步骤2:协议解析器构建与协议解析;
根据配置文件中指定的协议,读取相关的协议报文格式文件,构建协议解析器;协议解析器通过读取测试协议相关的报文格式定义文件,构建协议树状结构,树状结构中的节点包含协议字段长度、字段类型、字段名称;最后使用协议解析器解析报文;
步骤3:测试协议相关报文提取;
已有的报文被加载后并不能直接用于测试,需要过滤其中不相关报文,为之后报文变异做准备;
步骤4:连接目标设备;
根据配置中指定的协议、目标IP,建立与目标之间的Socket连接,同时设置连接超时时间T,如果无法建立连接,将错误信息写入日志;
步骤5:设备存活确认;
在每次测试前,使用ICMP Ping报文确认设备处于工作状态;如果设备无响应,表明测试用例导致设备出现无响应,将异常测试用例保存;
步骤6:工控协议数据字段模糊化;
在测试报文发送到目标设备前,需要根据配置文件中指定的协议字段变异;针对协议字段的类型不同进行使用不同的变异方法,字符串类型字段使用开源工具RADAMSA,数值型字段使用随机数字;
步骤7:模糊测试报文封装和重放;
将变异后的测试用例组成新的报文发送到目标设备,等待设备响应,因为变异后的测试用例可能会被设备拒绝,如果出现连接重置,那么跳过当前测试用例之后的报文,重建与设备的连接,进入下一次测试。
3.根据权利要求2所述的基于流量重放的工控协议模糊测试方法,其特征在于步骤1具体实现如下:
步骤1.1使用配置解析器加载配置文件;首先根据传入的配置文件路径configPath打开配置文件,将读入的字节传入Python语言自带的json解析库函数,输出Python语言的字典类型表示配置信息config;
配置文件格式:字段的键在分号前,字段的值在分号后,其中配置文件必须包含字段:设备所用的工控协议protocol、目标设备IP地址dstIp、重放报文文件路径pcapPath、工控协议报文格式文件路径protocolPath、指定需要模糊测试字段fields、模糊测试次数count,模糊测试字段fields由数组表示,数组每个元素都指定需要进行变异的工控协议数据字段。
4.根据权利要求3所述的基于流量重放的工控协议模糊测试方法,其特征在于步骤2具体实现如下:
步骤2.1根据协议报文格式构建协议解析器;
首先将配置信息config中协议报文格式文件路径protocolPath作为输入,使用Python导入模块库函数import_module动态导入协议定义类,构建协议树状结构,最后测试协议报文格式类绑定到解析器指定的运输层端口上,生成解析器对象parser;
协议报文格式包含协议的运输层端口、协议字段长度、字段类型、字段名称;
步骤2.2读取重放报文文件;
将重放报文文件路径pcapPath作为输入,打开文件输入流stream,其中重放报文文件使用PCAP格式;
步骤2.3输入流解析为原始报文;
在PCAP文件中每一个报文由Packet Header和Packet Data组成,每次读取PacketHeader获得Packet Data长度dataLen,然后stream再向后读取dataLen字节数据得到原始报文数据packet,将packet保存到数组rawPacket中,重复这个步骤,直到stream读取完毕,最后输出rawPacket;
步骤2.4协议解析器解析原始报文;
将步骤2.3解析的原始报文数组rawPacket作为输入,遍历每一个rawPacketi,调用步骤2.1中parser的parse方法得到已解析报文对象;parse方法会按照数据链路层、网络层、运输层、应用层的TCP/IP模型顺序调用每一层对应的解析器,其中应用层解析器在步骤2.1中绑定,而其他层的解析器是协议解析器自带;已解析报文对象保存在数组Packet中,最后输出Packet。
5.根据权利要求4所述的基于流量重放的工控协议模糊测试方法,其特征在于步骤3具体实现如下:
首先将已解析数据报文Packet作为输入,遍历每一个报文Packeti,使用函数hasLayer判断如果Packeti的运输层协议不是TCP协议,那么舍弃这个报文;如果Packeti的TCP协议标志位tcpFlag是TCP协议的SYN、ACK、FIN标志位中的一个,那么舍弃这个报文;使用函数hasLayer判断如果Packeti的应用层协议不是配置信息config中指定工控协议protocol,则舍弃这个报文,反之保存报文到数组ePacket中,随后将ePacket输出。
6.根据权利要求5所述的基于流量重放的工控协议模糊测试方法,其特征在于步骤6具体实现如下:
步骤6.1将提取的报文ePacket作为输入,遍历每一个报文ePacketi,在函数hasLayer中判断其应用层是不是测试协议,如果是则进入步骤6.2,否则跳过该报文;
步骤6.2在函数mutateField中遍历该报文的协议树状结构,找到配置信息中指定的协议字段fields,根据这个字段类型选择对应的变异策略,字符串类型字段使用开源工具RADAMSA,数值型字段使用随机数字;最后将变异报文mPacket输出,进入步骤7。
7.根据权利要求6所述的基于流量重放的工控协议模糊测试方法,其特征在于步骤7具体实现如下:
步骤7.1提取数据(extractData);将已变异的测试报文mPacket作为输入,遍历每一个报文mPacketi,截取应用层数据data,然后封装成完整数据报文;
步骤7.2通过步骤4建立的连接conn,将完整数据报文发送到目标设备;
步骤7.3通过函数isConnectRest来判断此时连接状态,如果出现连接重置错误,则使用函数saveLog将事件记录日志,然后函数reconnect重新建立与目标的连接,此次测试之后的报文跳过,进入步骤5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910615367.7A CN110505111B (zh) | 2019-07-09 | 2019-07-09 | 基于流量重放的工控协议模糊测试方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910615367.7A CN110505111B (zh) | 2019-07-09 | 2019-07-09 | 基于流量重放的工控协议模糊测试方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110505111A true CN110505111A (zh) | 2019-11-26 |
CN110505111B CN110505111B (zh) | 2020-12-01 |
Family
ID=68585572
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910615367.7A Active CN110505111B (zh) | 2019-07-09 | 2019-07-09 | 基于流量重放的工控协议模糊测试方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110505111B (zh) |
Cited By (31)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111427307A (zh) * | 2020-04-22 | 2020-07-17 | 国网浙江省电力有限公司 | 一种工控异常检测方法、装置及设备 |
CN111522740A (zh) * | 2020-04-10 | 2020-08-11 | 成都安恒信息技术有限公司 | 一种基于自然数元组的web服务器超时分析系统及分析方法 |
CN111709016A (zh) * | 2020-08-20 | 2020-09-25 | 创智和宇信息技术股份有限公司 | 一种基层医保结算数据防护方法及系统 |
CN111756714A (zh) * | 2020-06-15 | 2020-10-09 | 国家计算机网络与信息安全管理中心 | 一种用于工控协议的流量重放式测试方法及测试引擎 |
CN111901200A (zh) * | 2020-07-29 | 2020-11-06 | 许继集团有限公司 | 电力控制保护工控协议安全测试方法及系统 |
CN111949542A (zh) * | 2020-08-14 | 2020-11-17 | 中国工商银行股份有限公司 | 回归测试或者压力测试的生成数据的提取方法及装置 |
CN112019403A (zh) * | 2020-08-24 | 2020-12-01 | 杭州弈鸽科技有限责任公司 | 一种物联网消息协议状态机的跨平台自动化挖掘方法与系统 |
CN112105042A (zh) * | 2020-11-02 | 2020-12-18 | 深圳开源互联网安全技术有限公司 | 基于无线网络的模糊测试、信号连接方法及系统、设备 |
CN112181856A (zh) * | 2020-11-02 | 2021-01-05 | 浙江中控技术股份有限公司 | 一种加密工控协议测试方法及装置 |
CN112235244A (zh) * | 2020-09-10 | 2021-01-15 | 北京威努特技术有限公司 | 异常报文的构造方法以及工控网络设备的检测方法、装置和介质 |
CN112422557A (zh) * | 2020-11-17 | 2021-02-26 | 中国信息安全测评中心 | 一种工控网络的攻击测试方法及装置 |
CN112653578A (zh) * | 2020-12-16 | 2021-04-13 | 广州鲁邦通物联网科技有限公司 | 一种通信总线的数据模拟方法和系统 |
CN112769795A (zh) * | 2020-12-30 | 2021-05-07 | 中国兵器装备集团自动化研究所 | 一种基于数据仓库的报文通信解析系统及方法 |
CN112835792A (zh) * | 2021-01-27 | 2021-05-25 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种压力测试系统及方法 |
CN113132366A (zh) * | 2021-04-07 | 2021-07-16 | 深圳市奇虎智能科技有限公司 | 交互式协议逆向的方法、系统、存储介质及计算机设备 |
CN113806202A (zh) * | 2020-06-11 | 2021-12-17 | 北京威努特技术有限公司 | 一种漏洞挖掘方法、装置及计算机设备 |
CN113934621A (zh) * | 2021-09-06 | 2022-01-14 | 中国科学院信息工程研究所 | 模糊测试方法、系统、电子设备及介质 |
CN113986712A (zh) * | 2021-09-10 | 2022-01-28 | 深圳开源互联网安全技术有限公司 | 一种基于http/2的模糊测试方法和装置 |
CN114205340A (zh) * | 2021-12-23 | 2022-03-18 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114267264A (zh) * | 2021-12-14 | 2022-04-01 | 浙江华章科技有限公司 | 一种大型led电子信息看板系统 |
CN114265360A (zh) * | 2021-12-28 | 2022-04-01 | 四川启睿克科技有限公司 | 工控系统网络安全试验箱及模糊测试方法、攻击演示方法 |
CN114553490A (zh) * | 2022-01-25 | 2022-05-27 | 浙江木链物联网科技有限公司 | 工业用被动模糊测试方法、系统和可读存储介质 |
CN114866300A (zh) * | 2022-04-22 | 2022-08-05 | 中国人民解放军国防科技大学 | 一种基于重放分析的网络协议软件状态变量识别方法 |
CN114938400A (zh) * | 2022-07-25 | 2022-08-23 | 倍智智能数据运营有限公司 | 一种解析物联感知设备上报的数据的方法 |
CN115001829A (zh) * | 2022-06-07 | 2022-09-02 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115167261A (zh) * | 2022-06-24 | 2022-10-11 | 中国民用航空总局第二研究所 | 一种针对罗克韦尔plc的漏洞挖掘方法 |
CN115396347A (zh) * | 2022-08-15 | 2022-11-25 | 中国人民解放军国防科技大学 | 一种基于中间人的路由协议模糊测试方法及系统 |
CN116527303A (zh) * | 2023-02-28 | 2023-08-01 | 浙江大学 | 基于标记流量对比的工控设备信息提取方法及装置 |
CN116708001A (zh) * | 2023-07-13 | 2023-09-05 | 浙江齐安信息科技有限公司 | 工业控制系统私有协议漏洞探测方法及装置 |
CN117544960A (zh) * | 2024-01-09 | 2024-02-09 | 中国人民解放军61660部队 | 一种基于生成的自动化Wi-Fi协议模糊测试方法 |
CN115001829B (zh) * | 2022-06-07 | 2024-06-07 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130205397A1 (en) * | 2012-02-07 | 2013-08-08 | Microsoft Corporation | Adaptive fuzzing system for web services |
WO2013192086A1 (en) * | 2012-06-19 | 2013-12-27 | Ixia | Methods, systems, and computer readable media for automatically generating a fuzzer that implements functional and fuzz testing and testing a network device using the fuzzer |
CN104168288A (zh) * | 2014-08-27 | 2014-11-26 | 中国科学院软件研究所 | 一种基于协议逆向解析的自动化漏洞挖掘系统及方法 |
CN105827469A (zh) * | 2014-12-29 | 2016-08-03 | 国家电网公司 | 一种modbus tcp实现缺陷测试仪及其检测方法 |
CN106412067A (zh) * | 2016-09-30 | 2017-02-15 | 广东电网有限责任公司电力科学研究院 | 基于工控协议模糊测试的数据分层生成方法 |
CN108737417A (zh) * | 2018-05-16 | 2018-11-02 | 南京大学 | 一种面向工业控制系统的脆弱性检测方法 |
CN109032927A (zh) * | 2018-06-26 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 一种漏洞挖掘方法及装置 |
CN109379329A (zh) * | 2018-09-05 | 2019-02-22 | 中国人民解放军战略支援部队信息工程大学 | 基于lstm的网络安全协议模糊测试方法及系统 |
-
2019
- 2019-07-09 CN CN201910615367.7A patent/CN110505111B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130205397A1 (en) * | 2012-02-07 | 2013-08-08 | Microsoft Corporation | Adaptive fuzzing system for web services |
WO2013192086A1 (en) * | 2012-06-19 | 2013-12-27 | Ixia | Methods, systems, and computer readable media for automatically generating a fuzzer that implements functional and fuzz testing and testing a network device using the fuzzer |
CN104168288A (zh) * | 2014-08-27 | 2014-11-26 | 中国科学院软件研究所 | 一种基于协议逆向解析的自动化漏洞挖掘系统及方法 |
CN105827469A (zh) * | 2014-12-29 | 2016-08-03 | 国家电网公司 | 一种modbus tcp实现缺陷测试仪及其检测方法 |
CN106412067A (zh) * | 2016-09-30 | 2017-02-15 | 广东电网有限责任公司电力科学研究院 | 基于工控协议模糊测试的数据分层生成方法 |
CN108737417A (zh) * | 2018-05-16 | 2018-11-02 | 南京大学 | 一种面向工业控制系统的脆弱性检测方法 |
CN109032927A (zh) * | 2018-06-26 | 2018-12-18 | 腾讯科技(深圳)有限公司 | 一种漏洞挖掘方法及装置 |
CN109379329A (zh) * | 2018-09-05 | 2019-02-22 | 中国人民解放军战略支援部队信息工程大学 | 基于lstm的网络安全协议模糊测试方法及系统 |
Non-Patent Citations (1)
Title |
---|
李佳莉: "视频监控网络协议在线漏洞挖掘", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (49)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111522740A (zh) * | 2020-04-10 | 2020-08-11 | 成都安恒信息技术有限公司 | 一种基于自然数元组的web服务器超时分析系统及分析方法 |
CN111427307B (zh) * | 2020-04-22 | 2021-08-24 | 国网浙江省电力有限公司 | 一种工控异常检测方法、装置及设备 |
CN111427307A (zh) * | 2020-04-22 | 2020-07-17 | 国网浙江省电力有限公司 | 一种工控异常检测方法、装置及设备 |
CN113806202A (zh) * | 2020-06-11 | 2021-12-17 | 北京威努特技术有限公司 | 一种漏洞挖掘方法、装置及计算机设备 |
CN113806202B (zh) * | 2020-06-11 | 2024-01-26 | 北京威努特技术有限公司 | 一种漏洞挖掘方法、装置及计算机设备 |
CN111756714A (zh) * | 2020-06-15 | 2020-10-09 | 国家计算机网络与信息安全管理中心 | 一种用于工控协议的流量重放式测试方法及测试引擎 |
CN111756714B (zh) * | 2020-06-15 | 2022-05-20 | 国家计算机网络与信息安全管理中心 | 一种用于工控协议的流量重放式测试方法及测试引擎 |
CN111901200B (zh) * | 2020-07-29 | 2022-05-27 | 许继集团有限公司 | 电力控制保护工控协议安全测试方法及系统 |
CN111901200A (zh) * | 2020-07-29 | 2020-11-06 | 许继集团有限公司 | 电力控制保护工控协议安全测试方法及系统 |
CN111949542B (zh) * | 2020-08-14 | 2023-09-12 | 中国工商银行股份有限公司 | 回归测试或者压力测试的生成数据的提取方法及装置 |
CN111949542A (zh) * | 2020-08-14 | 2020-11-17 | 中国工商银行股份有限公司 | 回归测试或者压力测试的生成数据的提取方法及装置 |
CN111709016A (zh) * | 2020-08-20 | 2020-09-25 | 创智和宇信息技术股份有限公司 | 一种基层医保结算数据防护方法及系统 |
CN112019403A (zh) * | 2020-08-24 | 2020-12-01 | 杭州弈鸽科技有限责任公司 | 一种物联网消息协议状态机的跨平台自动化挖掘方法与系统 |
CN112235244A (zh) * | 2020-09-10 | 2021-01-15 | 北京威努特技术有限公司 | 异常报文的构造方法以及工控网络设备的检测方法、装置和介质 |
CN112235244B (zh) * | 2020-09-10 | 2023-03-24 | 北京威努特技术有限公司 | 异常报文的构造方法以及工控网络设备的检测方法、装置和介质 |
CN112105042A (zh) * | 2020-11-02 | 2020-12-18 | 深圳开源互联网安全技术有限公司 | 基于无线网络的模糊测试、信号连接方法及系统、设备 |
CN112181856B (zh) * | 2020-11-02 | 2022-04-22 | 浙江中控技术股份有限公司 | 一种加密工控协议测试方法及装置 |
CN112181856A (zh) * | 2020-11-02 | 2021-01-05 | 浙江中控技术股份有限公司 | 一种加密工控协议测试方法及装置 |
CN112422557B (zh) * | 2020-11-17 | 2023-06-27 | 中国信息安全测评中心 | 一种工控网络的攻击测试方法及装置 |
CN112422557A (zh) * | 2020-11-17 | 2021-02-26 | 中国信息安全测评中心 | 一种工控网络的攻击测试方法及装置 |
CN112653578A (zh) * | 2020-12-16 | 2021-04-13 | 广州鲁邦通物联网科技有限公司 | 一种通信总线的数据模拟方法和系统 |
CN112653578B (zh) * | 2020-12-16 | 2022-05-31 | 广州鲁邦通物联网科技股份有限公司 | 一种通信总线的数据模拟方法和系统 |
CN112769795A (zh) * | 2020-12-30 | 2021-05-07 | 中国兵器装备集团自动化研究所 | 一种基于数据仓库的报文通信解析系统及方法 |
CN112769795B (zh) * | 2020-12-30 | 2022-07-29 | 中国兵器装备集团自动化研究所有限公司 | 一种基于数据仓库的报文通信解析系统及方法 |
CN112835792A (zh) * | 2021-01-27 | 2021-05-25 | 湖南快乐阳光互动娱乐传媒有限公司 | 一种压力测试系统及方法 |
CN113132366A (zh) * | 2021-04-07 | 2021-07-16 | 深圳市奇虎智能科技有限公司 | 交互式协议逆向的方法、系统、存储介质及计算机设备 |
CN113934621A (zh) * | 2021-09-06 | 2022-01-14 | 中国科学院信息工程研究所 | 模糊测试方法、系统、电子设备及介质 |
CN113986712A (zh) * | 2021-09-10 | 2022-01-28 | 深圳开源互联网安全技术有限公司 | 一种基于http/2的模糊测试方法和装置 |
CN114267264A (zh) * | 2021-12-14 | 2022-04-01 | 浙江华章科技有限公司 | 一种大型led电子信息看板系统 |
CN114205340B (zh) * | 2021-12-23 | 2024-04-02 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114205340A (zh) * | 2021-12-23 | 2022-03-18 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114265360A (zh) * | 2021-12-28 | 2022-04-01 | 四川启睿克科技有限公司 | 工控系统网络安全试验箱及模糊测试方法、攻击演示方法 |
CN114553490A (zh) * | 2022-01-25 | 2022-05-27 | 浙江木链物联网科技有限公司 | 工业用被动模糊测试方法、系统和可读存储介质 |
CN114553490B (zh) * | 2022-01-25 | 2024-02-09 | 浙江木链物联网科技有限公司 | 工业用被动模糊测试方法、系统和可读存储介质 |
CN114866300A (zh) * | 2022-04-22 | 2022-08-05 | 中国人民解放军国防科技大学 | 一种基于重放分析的网络协议软件状态变量识别方法 |
CN115001829B (zh) * | 2022-06-07 | 2024-06-07 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115001829A (zh) * | 2022-06-07 | 2022-09-02 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115167261A (zh) * | 2022-06-24 | 2022-10-11 | 中国民用航空总局第二研究所 | 一种针对罗克韦尔plc的漏洞挖掘方法 |
CN115167261B (zh) * | 2022-06-24 | 2024-03-08 | 中国民用航空总局第二研究所 | 一种针对罗克韦尔plc的漏洞挖掘方法 |
CN114938400A (zh) * | 2022-07-25 | 2022-08-23 | 倍智智能数据运营有限公司 | 一种解析物联感知设备上报的数据的方法 |
CN114938400B (zh) * | 2022-07-25 | 2022-11-25 | 倍智智能数据运营有限公司 | 一种解析物联感知设备上报的数据的方法 |
CN115396347B (zh) * | 2022-08-15 | 2024-02-06 | 中国人民解放军国防科技大学 | 一种基于中间人的路由协议模糊测试方法及系统 |
CN115396347A (zh) * | 2022-08-15 | 2022-11-25 | 中国人民解放军国防科技大学 | 一种基于中间人的路由协议模糊测试方法及系统 |
CN116527303B (zh) * | 2023-02-28 | 2023-12-12 | 浙江大学 | 基于标记流量对比的工控设备信息提取方法及装置 |
CN116527303A (zh) * | 2023-02-28 | 2023-08-01 | 浙江大学 | 基于标记流量对比的工控设备信息提取方法及装置 |
CN116708001B (zh) * | 2023-07-13 | 2024-01-23 | 浙江齐安信息科技有限公司 | 工业控制系统私有协议漏洞探测方法及装置 |
CN116708001A (zh) * | 2023-07-13 | 2023-09-05 | 浙江齐安信息科技有限公司 | 工业控制系统私有协议漏洞探测方法及装置 |
CN117544960A (zh) * | 2024-01-09 | 2024-02-09 | 中国人民解放军61660部队 | 一种基于生成的自动化Wi-Fi协议模糊测试方法 |
CN117544960B (zh) * | 2024-01-09 | 2024-03-19 | 中国人民解放军61660部队 | 一种基于生成的自动化Wi-Fi协议模糊测试方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110505111B (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110505111A (zh) | 基于流量重放的工控协议模糊测试方法 | |
CN110401581B (zh) | 基于流量追溯的工控协议模糊测试用例生成方法 | |
CN111190812B (zh) | 基于嵌入式设备的自动化测试框架的系统 | |
US20090204848A1 (en) | Automatic grammar based fault detection and isolation | |
CN111756714B (zh) | 一种用于工控协议的流量重放式测试方法及测试引擎 | |
CN113542029A (zh) | 一种网络设备的业务稳定性测试方法、系统及工具 | |
Luo et al. | BLEEM: packet sequence oriented fuzzing for protocol implementations | |
CN115150377A (zh) | 一种模拟接口调用及处理方法和装置 | |
CN107707549A (zh) | 一种自动提取应用特征的装置及方法 | |
Fiterău-Broştean et al. | DTLS-Fuzzer: A DTLS protocol state fuzzer | |
CN110532162A (zh) | 一种基于协议状态机的模糊测试脚本及测试引擎 | |
CN117254964A (zh) | 基于高阶属性文法的电网智能终端协议漏洞检测方法 | |
Kamel et al. | Analysis of HTTP protocol implementation in smart card embedded web server | |
CN110266554B (zh) | 一种私有通信协议的测试方法 | |
CN111240921A (zh) | 一种dut功能验证的方法、设备及可读介质 | |
US11831671B2 (en) | Method for automatic derivation of attack paths in a network | |
CN116455798B (zh) | 协议程序测试模型自动生成方法及装置 | |
Ilgner et al. | Fuzzing ICS Protocols: Modbus Fuzzer Framework | |
CN105093154B (zh) | 用于在线监测装置质量仿真测试的数据传输方法及装置 | |
CN114666257B (zh) | 一种网络协议模糊测试方法及框架 | |
CN111385253A (zh) | 一种面向配电自动化系统网络安全的脆弱性检测系统 | |
Berriri et al. | Extended finite state machine based test generation for an OpenFlow switch | |
Linn et al. | Testing OSI protocols at the national bureau of standards | |
Pfrang et al. | Design of an Example Network Protocol for Security Tests Targeting Industrial Automation Systems. | |
CN105743992A (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 |