CN113542299A - 一种基于模糊测试的工业互联网漏洞挖掘方法及系统 - Google Patents
一种基于模糊测试的工业互联网漏洞挖掘方法及系统 Download PDFInfo
- Publication number
- CN113542299A CN113542299A CN202110864291.9A CN202110864291A CN113542299A CN 113542299 A CN113542299 A CN 113542299A CN 202110864291 A CN202110864291 A CN 202110864291A CN 113542299 A CN113542299 A CN 113542299A
- Authority
- CN
- China
- Prior art keywords
- protocol
- data packet
- test
- test case
- fuzzy
- 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.)
- Pending
Links
Images
Classifications
-
- 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
- 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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明涉及一种基于模糊测试的工业互联网漏洞挖掘方法及系统。该方法包括捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;根据所述应用层协议数据包生成规则文件;根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;将封装后的模糊测试的测试用例传送至目标设备进行异常检测。本发明实现了降低输入规模、增大漏洞挖掘命中率的目的,使得模糊测试效率大幅度提升。
Description
技术领域
本发明涉及计算机技术领域,特别是涉及一种基于模糊测试的工业互联网漏洞挖掘方法及系统。
背景技术
随着工业网络和互联网技术的发展,工业网络与传统IP网络的联系越来越紧密。在很多工业网络当中,存在着传统工业网络和IP网络的混合组网方式。传统工业网络和IP网络联系不断紧密的同时,其给工业网络所带来的安全威胁也越来越突出,近年来专门针对工业网络的病毒和木马层出不穷,并且有着愈演愈烈的趋势。因此,利用模糊测试对工业网络进行漏洞挖掘,提高工业网络安全的安全防护水平,有着极为重要的意义。
工控网络运行环境封闭、源代码获取困难,且受计算资源因素影响,无法安装调试器,难以满足代码审计、逆向工程等常见的漏洞挖掘技术的基本要求,而模糊测试技术作为目前最常见的黑盒测试技术,不依赖源代码和调试器,具有自动化程度高、误报率低等优点,可针对多种工控网络协议开展漏洞挖掘。目前,基于模糊测试的漏洞挖掘技术可有效地针对公有协议进行漏洞挖掘包括但不限于固件层面协议漏洞挖掘,但针对运行私有协议的工控网络尚未有较好的解决方案,存在着协议知识获取难、协议描述建模难等问题。
发明内容
本发明的目的是提供一种基于模糊测试的工业互联网漏洞挖掘方法及系统,提高异常服务捕获及检测能力,进一步实现降低输入规模、增大漏洞挖掘命中率的目的,使得模糊测试效率大幅度提升。
为实现上述目的,本发明提供了如下方案:
一种基于模糊测试的工业互联网漏洞挖掘方法,包括:
捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;
对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;
根据所述应用层协议数据包生成规则文件;
根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;
将封装后的模糊测试的测试用例传送至目标设备进行异常检测。
可选地,所述捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包,之前还包括:
判断所述网络数据包是否达到数量阈值;
若达到,则进行解析;
若未达到,则继续捕获网络数据包。
可选地,所述捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包,之后还包括:
对所述已知协议的数据包采用有限状态机的方式进行识别,进而根据识别后的已知协议的数据包生成规则文件。
可选地,所述根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装,具体包括:
采用测试用例变异规则将所述规则文件生成所述模糊测试的测试用例。
可选地,所述将封装后的模糊测试的测试用例传送至目标设备进行异常检测,具体包括:
通过中间人或者重放攻击的方式与目标设备中的目标程序建立会话,将所述模糊测试的测试用例传输至所述目标程序中;
采用心跳和一致性检测检测算法检测所述目标设备中目标程序是否出现异常;
将引发异常的模糊测试的测试用例保存到日志文件中。
一种基于模糊测试的工业互联网漏洞挖掘系统,包括:
网络数据包解析模块,用于捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;
应用层协议数据包提取模块,用于对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;
规则文件生成模块,用于根据所述应用层协议数据包生成规则文件;
模糊测试的测试用例生成模块,用于根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;
异常检测模块,用于将封装后的模糊测试的测试用例传送至目标设备进行异常检测。
可选地,还包括:
判断模块,用于判断所述网络数据包是否达到数量阈值;
若达到,则进行解析;
若未达到,则继续捕获网络数据包。
可选地,还包括:
已知协议的数据包的规则文件生成模块,用于对所述已知协议的数据包采用有限状态机的方式进行识别,进而根据识别后的已知协议的数据包生成规则文件。
可选地,所述异常检测模块具体包括:
通信单元,用于通过中间人或者重放攻击的方式与目标设备中的目标程序建立会话,将所述模糊测试的测试用例传输至所述目标程序中;
异常检测单元,用于采用心跳和一致性检测检测算法检测所述目标设备中目标程序是否出现异常;
保存单元,用于将引发异常的模糊测试的测试用例保存到日志文件中。
一种用于实现所述的一种基于模糊测试的工业互联网漏洞挖掘方法的工控网络协议模糊测试系统,包括:
数据通信模块,用于与目标设备进行网络通信;
工控协议解析模块,用于抽象出不同功能码的应用数据单元中相同的协议特征;
测试用例生成模块,用于依据变异因子和协议特征生成协议特征值,将协议特征值拼接为测试用例;
服务异常监测模块,获取请求队列和响应队列中的数据对象,使用请求响应比对特征或协议的请求与响应协议特征对应关系,对比协议特征值;若协议特征值不一致,则认为目标设备的数据异常。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘方法及系统,对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包根据所述应用层协议数据包生成规则文件;根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;将封装后的模糊测试的测试用例传送至目标设备进行异常检测。提高了模糊测试的测试用例的生成效率,进而提高了监控手段。能够对工业网络中的业务子网络和控制子网络进行有效的漏洞挖掘。能够兼容多种不同类型设备。提高异常服务捕获及检测能力,进一步实现降低输入规模、增大漏洞挖掘命中率的目的,使得模糊测试效率大幅度提升。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘方法流程示意图;
图2为本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘方法整体流程示意图;
图3为本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘系统结构示意图;
图4为本发明所提供的工控网络协议模糊测试系统结构示意图;
图5为本发明所提供的数据通信模块工作原理图;
图6为本发明所提供的工控协议解析模块工作原理图;
图7为本发明所提供的测试用例生成模块工作原理图;
图8为本发明所提供的服务异常监测模块工作原理图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的目的是提供一种基于模糊测试的工业互联网漏洞挖掘方法及系统,提高异常服务捕获及检测能力,进一步实现降低输入规模、增大漏洞挖掘命中率的目的,使得模糊测试效率大幅度提升。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘方法流程示意图,如图1所示,本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘方法,包括:
S101,捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;已知协议包括但不限于协议类型包括Ethernet、ARP、IP、ICMP、IGMP、UDP、TCP、LLDP、ModbusTCP、ModbusRTU、IEC104、IEC61850、MMS、GOOSE、SV、PROFINET、S7或Ethernet/IP。
S101之前还包括:
判断所述网络数据包是否达到数量阈值;
若达到,则进行解析;
若未达到,则继续捕获网络数据包。
S101之后还包括:
对所述已知协议的数据包采用有限状态机的方式进行识别,进而根据识别后的已知协议的数据包生成规则文件。
S102,对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;
S103,根据所述应用层协议数据包生成规则文件;
S104,根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;
S104具体包括:
采用测试用例变异规则将所述规则文件生成所述模糊测试的测试用例。
S105,将封装后的模糊测试的测试用例传送至目标设备进行异常检测。
S105具体包括:
通过中间人或者重放攻击的方式与目标设备中的目标程序建立会话,将所述模糊测试的测试用例传输至所述目标程序中;
采用心跳和一致性检测检测算法检测所述目标设备中目标程序是否出现异常;
将引发异常的模糊测试的测试用例保存到日志文件中。
图2为本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘方法整体流程示意图,如图2所示,本发明所提供的方法的具体过程为:
捕获网络数据包并解析;
判断是否为已知协议;
若是,则通过有限状态机的方式识别已知协议,对已知的协议直接生成规则文件。
若否,则判断已捕获的网络数据包数量是否满足对未知的协议进行解析的要求;
若否,则再次捕获网络数据包;
若是,则进行协议分析,对未知的协议进行已知层面的解析,提取其下一层协议的载荷,将下一层协议的载荷根据上一层协议的报文格式进行解析,得到只含有应用层部分的协议数据包。所述只含有应用层部分的协议数据包,包括:需要解析的未知协议的包头和载荷。
生成相应的规则文件;
使用系统知识库中现有的测试用例变异规则根据得到的规则文件生成模糊测试的测试用例,并封装;
异常检测:
通过中间人或者重放攻击的方式与目标程序建立会话,在将目标程序引至数据传输阶段后,所述测试用例作为网络数据包发送给目标程序;
使用心跳和一致性检测检测算法检测目标设备是否出现异常,若出现异常,则将异常信息以及引发异常的测试用例保存到日志文件中,进行异常记录。若否则向再次执行通过中间人或者重放攻击的方式与目标程序建立会话,在将目标程序引至数据传输阶段后,使用其他测试用例作为网络数据包发送给目标程序,依次执行后续步骤。
在协议分析部分中,针对现有的基于模糊测试的漏洞挖掘技术无法自动获取协议知识等问题,结合隐马尔可夫模型和统计计算的方法,提出了一种基于模式发现方法的协议结构分析方法,该方法使用优化的因果分割重构算法重构私有协议的ε机模型,可提取数据包中的常量部分,生成协议的基本结构描述模型,克服了漏洞挖掘测试的盲目性;本方法解决了传统工控模糊测试框架的协议解析部分无法解析工控网络协议的协议特征的问题,较传统模糊测试方法多了协议特征的解析,使得模糊测试效率大幅度提升。
在用例生成部分中,结合协议分析部分生成的协议描述模型,提出了多字段组合关联的模糊策略和基于动态抽样的样本生成方法,本方案通过减小测试用例的数量,增加异常字段的抽样率,可进一步实现降低输入规模、增大漏洞挖掘命中率的目的;
在监控代理部分中,为解决工控网络漏洞挖掘过程中难以对工控设备进行异常检测和定位问题,提出基于心跳检测的存活检测方案和基于Simhash的一致性检测方案,可正确识别被测系统是否进入异常状态。传统模糊测试方法对于异常捕获部分能力较为薄弱,利用本方法提供的异常捕获检测方案可以提高异常服务捕获及检测能力。
图3为本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘系统结构示意图,如图3所示,本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘系统,包括:
网络数据包解析模块,用于捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;
应用层协议数据包提取模块,用于对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;
规则文件生成模块,用于根据所述应用层协议数据包生成规则文件;
模糊测试的测试用例生成模块,用于根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;
异常检测模块,用于将封装后的模糊测试的测试用例传送至目标设备进行异常检测。
本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘系统,还包括:
判断模块,用于判断所述网络数据包是否达到数量阈值;
若达到,则进行解析;
若未达到,则继续捕获网络数据包。
本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘系统,还包括:
已知协议的数据包的规则文件生成模块,用于对所述已知协议的数据包采用有限状态机的方式进行识别,进而根据识别后的已知协议的数据包生成规则文件。
本发明所提供的一种基于模糊测试的工业互联网漏洞挖掘系统,所述异常检测模块具体包括:
通信单元,用于通过中间人或者重放攻击的方式与目标设备中的目标程序建立会话,将所述模糊测试的测试用例传输至所述目标程序中;
异常检测单元,用于采用心跳和一致性检测检测算法检测所述目标设备中目标程序是否出现异常;
保存单元,用于将引发异常的模糊测试的测试用例保存到日志文件中。
图4为本发明所提供的工控网络协议模糊测试系统结构示意图,如图4所示,本发明所提供的一种用于所述的一种基于模糊测试的工业互联网漏洞挖掘方法的工控网络协议模糊测试系统,包括:
数据通信模块,用于与目标设备(被测设备)进行网络通信;
工控协议解析模块,用于抽象出不同功能码的应用数据单元中相同的协议特征;
测试用例生成模块,用于依据变异因子和协议特征生成协议特征值,将协议特征值拼接为测试用例;
服务异常监测模块,获取请求队列和响应队列中的数据对象,使用请求响应比对特征或协议的请求与响应协议特征对应关系,对比协议特征值;若协议特征值不一致,则认为目标设备的数据异常。
每个系统模块负责各自的业务逻辑,可独立运行,并且系统模块之间具有功能的交互,以下概述各个系统模块之间的关系。
数据通信模块是唯一与被测对象进行直接交互的系统模块。数据通信模块主要负责获取测试数据,将数据封装成网络报文,与被测对象建立网络连接,向被测对象发送测试用例和用于旁路监听的网络报文。
工控协议解析模块中包括常见协议特征数据结构和协议特征解析模块,协议模型从数据通信模块中获取协议的网络报文,通过协议特征解析模块提取报文中的协议特征,以报文为单位,将协议特征存储为协议特征数据结构的内存对象。
测试用例生成模块负责从工控协议解析模块中获取工控网络协议的协议特征,结合测试用例生成策略的执行流程构造测试用例,将已构造的测试用例传递给数据通信模块。
服务异常监控模块负责从数据通信模块中获取被测对象的响应数据,以及从测试用例生成模块中获取已发送的测试用例,通过这两种数据,以工控TCP服务异常监控方法对请求报文和响应报文中的协议特征进行比对检测。在被测对象无响应时,调用测试用例生成模块中的功能,构造正常的工控TCP测试用例,用于判断被测对象是否发生异常。在模糊测试的过程中,服务异常监控模块通过向被测对象发送ICMP报文、ARP请求和正常的工控网络报文进行旁路监听操作。还可以包括用于对私有协议的自动识别的,基于信息熵理论及无监督机器学习技术,对未知协议实现自动化的逆向分析健壮性测试的工控私有协议数据分类模块和工控私有协议特征学习模块。
具体表现为:
数据通信模块用于和被测对象进行网络通信,以网络报文的形式向被测对象发送测试用例以及接收被测对象的响应报文。由于工控网络协议是严格的请求与响应模式的通信协议,并且在服务异常监控模块中需要实时对发送和接收的每一对数据进行比对监控,因此,使用两个线性存储结构分别存储请求与响应报文中的数据。
如图5所示,数据通信模块工作原理:
(1)启动数据通信模块。
(2)建立Socket对象。数据通信模块获取被测对象的IP地址和TCP端口,实例化TCP的Socket对象。
(3)建立TCP连接。调用Socket对象的异步Connect函数,与被测对象建立TCP连接。
(4)数据交互。
(5)停止数据通信模块。
工控协议解析模块可根据软件工程中类与类之间的继承关系,可以抽象出不同功能码的应用数据单元中相同的协议特征。依赖继承关系,使用面向对象技术的多态性可以优化负责调用应用数据单元对象的程序代码。
如图6所示,工控协议解析模块工作原理
(1)启动协议解析模块。
(2)获取一个对应协议的应用数据单元。
(3)获取协议对应的功能码。
(4)实例化请求数据的对象。
(5)实例化响应数据的对象。
(6)填充属性值。
(7)结束协议解析模块。
测试用例生成模块负责依据变异因子和协议特征生成协议特征值,将协议特征值拼接为测试用例。无论生成工控公有协议的测试用例还是私有协议的测试用例,均需要首先生成协议头部中的协议特征值,然后生成Data域,最后拼接协议头部和Data域,生成一个工控网络协议测试用例。
如图7所示,测试用例生成模块工作原理
(1)启动测试用例生成模块。
(2)获取协议头部的协议特征序列。
(3)生成协议头部的数据。
(4)确定数据域的长度。
(5)生成测试用例。
(6)停止测试用例生成模块。
服务异常监控模块主要通过获取请求队列和响应队列中的数据对象,使用请求响应比对特征或协议的请求与响应协议特征对应关系,对比协议特征值,如果数据不符合比对特征或协议特征对应关系,则认为服务端响应的数据异常。
如图8示,服务异常监测模块工作原理:
(1)启动服务异常监控模块。
(2)获取一对请求响应数据。获取数据通信模块中的响应队列和请求队列,通过两个队列中字典元素的Key值,即一对请求与响应数据的唯一标识,匹配一对请求响应数据。
(3)监控工控TCP服务。判断工控协议是否正常,如果FC不相等,则检测响应数据是否为该FC对应的异常功能码,如果是对应的异常功能码,则认为响应数据正常,反之,响应数据异常。
(4)停止服务异常监控模块。
本系统方法支持协议漏洞挖掘,同时也支持通过协议进行固件的漏洞挖掘。由于固件通过服务端接收指令固件与服务端通信所使用的的协议为工控协议。因此,本方法可以通过协议对固件进行漏洞挖掘。本方法协议覆盖面较广,支持已知通用工控协议的漏洞挖掘。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种基于模糊测试的工业互联网漏洞挖掘方法,其特征在于,包括:
捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;
对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;
根据所述应用层协议数据包生成规则文件;
根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;
将封装后的模糊测试的测试用例传送至目标设备进行异常检测。
2.根据权利要求1所述的一种基于模糊测试的工业互联网漏洞挖掘方法,其特征在于,所述捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包,之前还包括:
判断所述网络数据包是否达到数量阈值;
若达到,则进行解析;
若未达到,则继续捕获网络数据包。
3.根据权利要求1所述的一种基于模糊测试的工业互联网漏洞挖掘方法,其特征在于,所述捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包,之后还包括:
对所述已知协议的数据包采用有限状态机的方式进行识别,进而根据识别后的已知协议的数据包生成规则文件。
4.根据权利要求1所述的一种基于模糊测试的工业互联网漏洞挖掘方法,其特征在于,所述根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装,具体包括:
采用测试用例变异规则将所述规则文件生成所述模糊测试的测试用例。
5.根据权利要求1所述的一种基于模糊测试的工业互联网漏洞挖掘方法,其特征在于,所述将封装后的模糊测试的测试用例传送至目标设备进行异常检测,具体包括:
通过中间人或者重放攻击的方式与目标设备中的目标程序建立会话,将所述模糊测试的测试用例传输至所述目标程序中;
采用心跳和一致性检测检测算法检测所述目标设备中目标程序是否出现异常;
将引发异常的模糊测试的测试用例保存到日志文件中。
6.一种基于模糊测试的工业互联网漏洞挖掘系统,其特征在于,包括:
网络数据包解析模块,用于捕获网络数据包,并是对所述网络数据包进行解析,确定已知协议的数据包和未知协议的数据包;
应用层协议数据包提取模块,用于对所述未知协议的数据包进行通信层和链路层的层面解析,获取通信五元组以及pyload数据,进而提取应用层协议数据包;所述应用层协议数据包包括:未知协议的包头和载荷;
规则文件生成模块,用于根据所述应用层协议数据包生成规则文件;
模糊测试的测试用例生成模块,用于根据所述规则文件生成模糊测试的测试用例,并将所述模糊测试的测试用例进行封装;
异常检测模块,用于将封装后的模糊测试的测试用例传送至目标设备进行异常检测。
7.根据权利要求6所述的一种基于模糊测试的工业互联网漏洞挖掘系统,其特征在于,还包括:
判断模块,用于判断所述网络数据包是否达到数量阈值;
若达到,则进行解析;
若未达到,则继续捕获网络数据包。
8.根据权利要求6所述的一种基于模糊测试的工业互联网漏洞挖掘系统,其特征在于,还包括:
已知协议的数据包的规则文件生成模块,用于对所述已知协议的数据包采用有限状态机的方式进行识别,进而根据识别后的已知协议的数据包生成规则文件。
9.根据权利要求6所述的一种基于模糊测试的工业互联网漏洞挖掘系统,其特征在于,所述异常检测模块具体包括:
通信单元,用于通过中间人或者重放攻击的方式与目标设备中的目标程序建立会话,将所述模糊测试的测试用例传输至所述目标程序中;
异常检测单元,用于采用心跳和一致性检测检测算法检测所述目标设备中目标程序是否出现异常;
保存单元,用于将引发异常的模糊测试的测试用例保存到日志文件中。
10.一种用于实现权利要求1所述的一种基于模糊测试的工业互联网漏洞挖掘方法的工控网络协议模糊测试系统,其特征在于,包括:
数据通信模块,用于与目标设备进行网络通信;
工控协议解析模块,用于抽象出不同功能码的应用数据单元中相同的协议特征;
测试用例生成模块,用于依据变异因子和协议特征生成协议特征值,将协议特征值拼接为测试用例;
服务异常监测模块,获取请求队列和响应队列中的数据对象,使用请求响应比对特征或协议的请求与响应协议特征对应关系,对比协议特征值;若协议特征值不一致,则认为目标设备的数据异常。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110864291.9A CN113542299A (zh) | 2021-07-29 | 2021-07-29 | 一种基于模糊测试的工业互联网漏洞挖掘方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110864291.9A CN113542299A (zh) | 2021-07-29 | 2021-07-29 | 一种基于模糊测试的工业互联网漏洞挖掘方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113542299A true CN113542299A (zh) | 2021-10-22 |
Family
ID=78089603
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110864291.9A Pending CN113542299A (zh) | 2021-07-29 | 2021-07-29 | 一种基于模糊测试的工业互联网漏洞挖掘方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113542299A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114189382A (zh) * | 2021-12-10 | 2022-03-15 | 中国电子科技集团公司第十五研究所 | 一种基于模糊测试的网络协议自动化分析漏洞挖掘装置 |
CN114189395A (zh) * | 2022-02-15 | 2022-03-15 | 北京安帝科技有限公司 | Plc受攻击停止的风险检测包获取方法及装置 |
CN114205340A (zh) * | 2021-12-23 | 2022-03-18 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114553490A (zh) * | 2022-01-25 | 2022-05-27 | 浙江木链物联网科技有限公司 | 工业用被动模糊测试方法、系统和可读存储介质 |
CN114978592A (zh) * | 2022-04-15 | 2022-08-30 | 广西电网有限责任公司电力科学研究院 | 基于优化的多元组分包机制Modbus漏洞挖掘方法 |
CN115001829A (zh) * | 2022-06-07 | 2022-09-02 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115604037A (zh) * | 2022-12-13 | 2023-01-13 | 广州市盛通建设工程质量检测有限公司(Cn) | 一种故障监测系统的通信安全测试方法 |
CN115801643A (zh) * | 2022-10-28 | 2023-03-14 | 北京六方云信息技术有限公司 | 协议解析功能的测试方法、装置、终端设备及存储介质 |
WO2023155699A1 (zh) * | 2022-02-15 | 2023-08-24 | 中兴通讯股份有限公司 | 空口协议安全漏洞的挖掘方法、装置、移动终端 |
CN117411955A (zh) * | 2023-10-13 | 2024-01-16 | 中科驭数(北京)科技有限公司 | 健壮性测试方法、装置、电子设备及介质 |
CN117435506A (zh) * | 2023-12-15 | 2024-01-23 | 中兴通讯股份有限公司 | 模糊测试方法、电子设备及计算机可读存储介质 |
CN117667749A (zh) * | 2024-01-31 | 2024-03-08 | 中兴通讯股份有限公司 | 一种模糊测试用例优化方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130340083A1 (en) * | 2012-06-19 | 2013-12-19 | Lucian Petrica | 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 |
CN105245403A (zh) * | 2015-10-27 | 2016-01-13 | 国网智能电网研究院 | 一种基于模糊测试的电网工控协议漏洞挖掘系统和方法 |
-
2021
- 2021-07-29 CN CN202110864291.9A patent/CN113542299A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130340083A1 (en) * | 2012-06-19 | 2013-12-19 | Lucian Petrica | 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 |
CN105245403A (zh) * | 2015-10-27 | 2016-01-13 | 国网智能电网研究院 | 一种基于模糊测试的电网工控协议漏洞挖掘系统和方法 |
Non-Patent Citations (2)
Title |
---|
杨凯翔: "基于模糊测试的工控网络协议漏洞挖掘方法研究", 《中国优秀博硕士学位论文全文数据库(硕士)》 * |
邹颀伟: "基于Fuzzing测试的工控网络协议漏洞挖掘技术研究", 《中国优秀博硕士学位论文全文数据库(硕士)》 * |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114189382A (zh) * | 2021-12-10 | 2022-03-15 | 中国电子科技集团公司第十五研究所 | 一种基于模糊测试的网络协议自动化分析漏洞挖掘装置 |
CN114189382B (zh) * | 2021-12-10 | 2023-03-07 | 中国电子科技集团公司第十五研究所 | 一种基于模糊测试的网络协议自动化分析漏洞挖掘装置 |
CN114205340A (zh) * | 2021-12-23 | 2022-03-18 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114205340B (zh) * | 2021-12-23 | 2024-04-02 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114553490A (zh) * | 2022-01-25 | 2022-05-27 | 浙江木链物联网科技有限公司 | 工业用被动模糊测试方法、系统和可读存储介质 |
CN114553490B (zh) * | 2022-01-25 | 2024-02-09 | 浙江木链物联网科技有限公司 | 工业用被动模糊测试方法、系统和可读存储介质 |
WO2023155699A1 (zh) * | 2022-02-15 | 2023-08-24 | 中兴通讯股份有限公司 | 空口协议安全漏洞的挖掘方法、装置、移动终端 |
CN114189395A (zh) * | 2022-02-15 | 2022-03-15 | 北京安帝科技有限公司 | Plc受攻击停止的风险检测包获取方法及装置 |
CN114189395B (zh) * | 2022-02-15 | 2022-06-28 | 北京安帝科技有限公司 | Plc受攻击停止的风险检测包获取方法及装置 |
CN114978592A (zh) * | 2022-04-15 | 2022-08-30 | 广西电网有限责任公司电力科学研究院 | 基于优化的多元组分包机制Modbus漏洞挖掘方法 |
CN114978592B (zh) * | 2022-04-15 | 2024-02-23 | 广西电网有限责任公司电力科学研究院 | 基于优化的多元组分包机制Modbus漏洞挖掘方法 |
CN115001829A (zh) * | 2022-06-07 | 2022-09-02 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115001829B (zh) * | 2022-06-07 | 2024-06-07 | 中国软件评测中心(工业和信息化部软件与集成电路促进中心) | 协议漏洞挖掘方法、装置、设备及存储介质 |
CN115801643A (zh) * | 2022-10-28 | 2023-03-14 | 北京六方云信息技术有限公司 | 协议解析功能的测试方法、装置、终端设备及存储介质 |
CN115801643B (zh) * | 2022-10-28 | 2023-09-22 | 北京六方云信息技术有限公司 | 协议解析功能的测试方法、装置、终端设备及存储介质 |
CN115604037B (zh) * | 2022-12-13 | 2023-05-30 | 广州市盛通建设工程质量检测有限公司 | 一种故障监测系统的通信安全测试方法 |
CN115604037A (zh) * | 2022-12-13 | 2023-01-13 | 广州市盛通建设工程质量检测有限公司(Cn) | 一种故障监测系统的通信安全测试方法 |
CN117411955A (zh) * | 2023-10-13 | 2024-01-16 | 中科驭数(北京)科技有限公司 | 健壮性测试方法、装置、电子设备及介质 |
CN117435506A (zh) * | 2023-12-15 | 2024-01-23 | 中兴通讯股份有限公司 | 模糊测试方法、电子设备及计算机可读存储介质 |
CN117435506B (zh) * | 2023-12-15 | 2024-04-16 | 中兴通讯股份有限公司 | 模糊测试方法、电子设备及计算机可读存储介质 |
CN117667749A (zh) * | 2024-01-31 | 2024-03-08 | 中兴通讯股份有限公司 | 一种模糊测试用例优化方法及系统 |
CN117667749B (zh) * | 2024-01-31 | 2024-06-07 | 中兴通讯股份有限公司 | 一种模糊测试用例优化方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113542299A (zh) | 一种基于模糊测试的工业互联网漏洞挖掘方法及系统 | |
CN107135093B (zh) | 一种基于有限自动机的物联网入侵检测方法及检测系统 | |
US8006136B2 (en) | Automatic grammar based fault detection and isolation | |
CN114050979B (zh) | 一种工业控制协议安全测试系统及装置 | |
US20070174917A1 (en) | Platform for analyzing the security of communication protocols and channels | |
CN105763392A (zh) | 一种基于协议状态的工控协议模糊测试方法 | |
CN113507436B (zh) | 一种针对goose协议的电网嵌入式终端模糊测试方法 | |
Simoes et al. | On the use of honeypots for detecting cyber attacks on industrial control networks | |
WO2019148714A1 (zh) | DDoS攻击检测方法、装置、计算机设备和存储介质 | |
Luo et al. | Bleem: Packet sequence oriented fuzzing for protocol implementations | |
US11831671B2 (en) | Method for automatic derivation of attack paths in a network | |
Gad et al. | Employing the CEP paradigm for network analysis and surveillance | |
Banik et al. | Implementing man-in-the-middle attack to investigate network vulnerabilities in smart grid test-bed | |
Pearson et al. | FUME: Fuzzing message queuing telemetry transport brokers | |
Lima et al. | BP-IDS: Using business process specification to leverage intrusion detection in critical infrastructures | |
Havlena et al. | Accurate Automata-Based Detection of Cyber Threats in Smart Grid Communication | |
Abdelkhalek et al. | Ml-based anomaly detection system for der dnp3 communication in smart grid | |
La et al. | A novel monitoring solution for 6LoWPAN-based Wireless Sensor Networks | |
CN116743447A (zh) | 基于模糊测试的电力物联网设备漏洞挖掘方法及系统 | |
Lee et al. | AI-based network security enhancement for 5G industrial Internet of things environments | |
Li et al. | Spider: A practical fuzzing framework to uncover stateful performance issues in sdn controllers | |
CN117254964A (zh) | 基于高阶属性文法的电网智能终端协议漏洞检测方法 | |
CN112235300A (zh) | 云虚拟网络漏洞检测方法、系统、装置及电子设备 | |
Wang et al. | Feature selection for precise anomaly detection in substation automation systems | |
CN114553490B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20211022 |
|
RJ01 | Rejection of invention patent application after publication |