CN113392402A - 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 - Google Patents
一种基于模糊测试的电力物联网协议漏洞检测系统及方法 Download PDFInfo
- Publication number
- CN113392402A CN113392402A CN202110567713.6A CN202110567713A CN113392402A CN 113392402 A CN113392402 A CN 113392402A CN 202110567713 A CN202110567713 A CN 202110567713A CN 113392402 A CN113392402 A CN 113392402A
- Authority
- CN
- China
- Prior art keywords
- protocol
- test
- sample
- data frame
- variation
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 192
- 238000001514 detection method Methods 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000012544 monitoring process Methods 0.000 claims abstract description 36
- 230000035772 mutation Effects 0.000 claims abstract description 22
- 230000008569 process Effects 0.000 claims abstract description 19
- 230000002159 abnormal effect Effects 0.000 claims description 23
- 230000006870 function Effects 0.000 claims description 21
- 230000004044 response Effects 0.000 claims description 9
- 230000007246 mechanism Effects 0.000 claims description 6
- 238000012549 training Methods 0.000 claims description 6
- 238000012038 vulnerability analysis Methods 0.000 claims description 3
- 230000006855 networking Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 abstract description 3
- 238000004891 communication Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000010998 test method Methods 0.000 description 3
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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/1433—Vulnerability analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computing Systems (AREA)
- Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Economics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Primary Health Care (AREA)
- Public Health (AREA)
- Tourism & Hospitality (AREA)
- Marketing (AREA)
- General Business, Economics & Management (AREA)
- Human Resources & Organizations (AREA)
- General Health & Medical Sciences (AREA)
- Water Supply & Treatment (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提供一种基于模糊测试的电力物联网协议漏洞检测系统及方法,该系统包括协议配置模块,用于配置被检协议以及配置被检协议下的数据帧;样本生成模块,用于在载入所述协议配置模块配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本;执行监测模块,用于将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。本发明通过被检协议管理、变异策略配置、检测详情查询三个主要模块为核心,构建了模糊测试检测流程,形成了电力物联网工控协议漏洞检测原型系统,能够方便快速有效的进行协议配置与测试。
Description
技术领域
本发明涉及物联网技术领域,具体是一种基于模糊测试的电力物联网协议漏洞检测系统及方法。
背景技术
随着物联网技术与通信能力的不断发展,基于工业控制系统的电力物联网也在不断完善和逐步发展。电力物联网发展的同时,与之相关的电力物联网网络通信的安全问题也逐渐暴露出来。而电力物联网的工控协议与传统网络通信协议有所不同,工控协议基于工业控制系统,主要用以完成工控系统间相互通信。电力物联网架构如图1所示。而要保证工控系统的通信安全稳定的运行,就需要所使用的工控协议足够健壮安全。
协议通信的漏洞可以被入侵者利用进而控制整个工控系统带来巨大威胁,所以对协议的安全性检测,保证协议的安全健壮是十分必要的。而协议的漏洞检测则能够对协议进行合理的安全性分析,检测出协议设计与使用过程中可能产生的安全隐患,并加以修复完善保证协议安全,保证通信安全。但是现有的传统测试方法不能在电力物联网工控系统中有效检测出协议漏洞。
发明内容
针对现有技术存在的上述问题,本发明提供一种基于模糊测试的电力物联网协议漏洞检测系统及方法,通过被检协议管理、变异策略配置、检测详情查询三个主要模块为核心,构建了模糊测试检测流程,形成了电力物联网工控协议漏洞检测原型系统,能够方便快速有效的进行协议配置与测试。
为了实现上述目的,本发明采用以下技术方案:
一种基于模糊测试的电力物联网协议漏洞检测系统,包括
协议配置模块,用于配置被检协议以及配置被检协议下的数据帧;
样本生成模块,用于在载入所述协议配置模块配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本;
执行监测模块,用于将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。
进一步的,所述协议配置模块配置被检协议以及配置被检协议下的数据帧具体包括:确定协议名,在创建协议名的同时添加关于协议的描述,在确定协议后根据测试需要添加需要测试的数据帧,创建的数据帧下确定功能名与帧格式。
进一步的,所述变异策略配置包括配置策略名、协议名、功能名、变异模式、起始位置、变异样本,其中策略名、协议名、功能名、帧预览等属于描述字段。
进一步的,所述变异模式的实现有单字节模式与双字节模式,根据字段语义需要,可自定义选择采用单字节模式与双字节模式。
进一步的,所述起始位置用于精确表述需要变异的位置,避免全部进行编译而带来的无意义冗余。
进一步的,所述变异样本中可选择系统样本、自定义固定值、自定义范围方式,系统样本根据单双字节模式的不同内置典型的变异值,自定义固定值与自定义范围用以针对不用语义的各类私有电力物联网工控协议,在语义分析之后制定针对性的测试变异样本内容。
进一步的,触发样本生成模块的方式包括生成测试任务与一轮测试结束后传入异常样本,具体的,在执行测试任务时,样本生成模块确定配置协议信息,之后确定采用单字节或双字节变异模式,之后确定需要在数据帧中开始变异的起始位置,选定采用预定义或自定义的样本,之后样本生成模块根据制定好的变异策略生成测试样本准备交付执行监测系统进行第一轮测试;在第一轮测试结束后,触发样本生成模块的第二种运行方式,将第一轮测试产生的测试样本传入样本生成模块中二次学习模型,同样生成测试样本准备交付执行监测系统进行第二轮测试。
进一步的,二次学习的过程采用引入Attention机制的Seq2Seq模型,Seq2Seq模型主要包括Encoder与Decoder两部分组成,在一次生成样本检测完成后,被标记出的异常样本通过Seq2Seq模型进行二次学习进而进行二次检测用以获取更多更高命中率的异常数据帧;在训练模型过程中采用平均绝对误差MAE来表示期望数据帧与生成数据帧的差异,假设用x1,x2,…,xi表示期望数据序列,用y1,y2,…,yi表示生成数据序列,则平均绝对误差MAE表示为:
更直接表现为:
在训练过程中采用随机梯度下降的方式对损失函数进行优化,其中X为上述假设的x1,x2,…,xi期望数据序列,Y为y1,y2,…,yi生成数据序列,整体表示为logMAE(X,Y)取得最小值时,变量X,Y的取值,表示如下:
argmin logMAE(X,Y)。
进一步的,执行监测模块中的链路管理是测试系统与被检设备之间的连接管理,包括链路名、类型与具体内容;测试执行负责选定测试选项从而开始测试任务,包括设定任务名、选择链路、选择变异策略,在测试执行过程中,使用状态监测随时查看目前已完成的测试内容包括选中的协议名、功能名、收发包时间、原始数据帧与变异数据帧、应答结果,对于测试结果系统进行存储,在导出的报告中标注应答结果异常的数据帧作为漏洞分析的主要依据。
一种基于模糊测试的电力物联网协议漏洞检测方法,包括如下步骤:
协议配置步骤:配置被检协议以及配置被检协议下的数据帧;具体的,确定协议名,在创建协议名的同时添加关于本协议的描述,在确定协议后根据测试需要添加需要测试的数据帧,创建的数据帧下确定功能名与帧格式,用以在样本生成模块中载入;
样本生成步骤:在载入配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本;
执行监测步骤:将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。
本发明针对传统网络协议模糊测试方式所存在的缺陷与电力物联网工控协议漏洞检测的局限性,基于传统的模糊测试漏洞检测方法,开发了基于模糊测试的电力物联网工控协议漏洞检测系统。本发明具有三个新特性:被检协议可管理、变异策略可配置与检测详情可查询,能够做到协议管理自由、样本生成灵活、内容查询方便。此外,本发明在常规漏洞检测过程后,对检测结果进行基于引入Attention机制的Seq2Seq模型的二次学习,用以产生更具有漏洞特征的数据报文,再次传入执行监测模块进行二次漏洞检测,验证得到引起异常的测试样本,此种方式可显著提高收集异常报文的能力,进而提成漏洞检测的效率。
附图说明
图1是电力物联网架构图;
图2是本发明模糊测试的基本阶段;
图3是本发明基于模糊测试的电力物联网协议漏洞检测系统其中一个实施例的结构示意图;
图4是协议配置步骤流程图;
图5是样本生成步骤流程图;
图6是Encoder框架示意图;
图7是Decoder框架示意图;
图8是Attention框架示意图;
图9是部分系统内置变异样本;
图10是执行监测步骤流程图;
图11是协议配置与数据帧配置模型;
图12是自定义测试样本模型;
图13是本发明基于模糊测试的电力物联网协议漏洞检测系统的工作流程图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
模糊测试作为一种漏洞挖掘方法,在软件测试中广泛使用,而本发明利用模糊测试的方法对协议进行安全性检测。模糊测试主要是通过一定规则生成所需要的测试样本,并自动化的将测试样本发送给测试目标引起目标异常,从而判断出可能存在的威胁。
为了使模糊测试具有被检协议可管理、变异策略可配置与检测详情可查询等特性,本发明开发了一种基于模糊测试的电力物联网工控协议漏洞检测系统,其主要框架基于传统模糊测试流程构建,能够显著提高针对电力物联网工控协议的测试能力与测试效果。模糊测试基本阶段如图2所示。
请一并参阅图3,本发明基于模糊测试的电力物联网工控协议漏洞检测系统其中一个实施例,包括:进行协议管理的协议配置模块、进行测试样本变异生成的样本生成模块、以及进行测试执行与结果查询的执行监测模块;样本生成模块通过对协议配置模块中的配置完成的协议下数据帧,进行样本变异策略定义,根据变异策略生成测试所需样本,所生成样本经由执行监测模块发往被检设备并监测响应状态,批处理后将结果存储并输出为检测报告。
所述协议配置模块,用于配置被检协议以及配置被检协议下的数据帧;具体的,所述协议配置模块,用于可供配置协议,主要包括协议名与描述。在被检协议添加后,可以在相关协议下增加数据帧,之后可在配置被检协议模块中修改与增删协议与数据帧。在协议配置模块配置好的协议可在样本生成模块中被选中,设定好的协议与数据帧会在样本生成模块中被载入,用以分析设定需要变异的起始地址、变异方式、变异内容等,协议配置与数据帧配置模型如图11所示。协议配置模块不同于传统的模糊测试内置了固有协议不能修改,本发明中的协议配置模块可供用户自由定制协议内容。
协议配置步骤流程如图4所示,协议配置中首先需要确定协议名,在创建协议名的同时需要添加关于本协议的描述方便后期使用与维护。在确定了协议后需要根据测试需要添加需要测试的数据帧,创建的数据帧下需要确定功能名与帧格式,用以在样本生成模块中载入。
所述协议配置模块主要实现被检协议可管理,对于工业控制网络多采用专有协议的现状,分析并内置了电力物联网所用较多的IEC 60870-5-101与IEC 60870-5-104规约,并提供自定义协议类型以及协议的数据帧管理。
所述样本生成模块,用于在载入所述协议配置模块配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本,所述测试样本被传入执行监测模块用以发送至测试目标进行测试。变异策略配置包括配置策略名、协议名、功能名、变异模式、起始位置、变异样本等,其中策略名、协议名、功能名、帧预览等属于描述字段。变异模式的实现有单字节模式与双字节模式,根据字段语义需要,可以自定义选择采用单字节模式与双字节模式。起始位置用于精确表述需要变异的位置,避免全部进行编译而带来的无意义冗余。变异样本中可以选择系统样本、自定义固定值、自定义范围方式。系统样本根据单双字节模式的不同,内置了典型的变异值,如无特殊自定义需求在内置的典型变异样本下可以测试到大部分异常情况。自定义固定值与自定义范围用以针对不用语义的各类私有电力物联网工控协议,在语义分析之后制定针对性的测试变异样本内容。在确定变异策略后系统将会遍历策略链表生成样本以供其他模块测试使用。
触发样本生成模块的方式包括生成测试任务与一轮测试结束后传入异常样本,两者都会生成测试样本用以执行测试。本发明提出了一种预定义与自定义相组合的变异策略,能多样化配置变异策略,提高变异样本的精度和广度。此外基于Attention机制的Seq2Seq模型进行二次学习,这种创新方式显著提高了样本的命中率。
样本生成模块在实现过程中设置了两种执行方式。首先是在执行测试任务时候,此时样本生成需要确定配置协议信息,之后确定采用单字节或双字节变异模式,之后确定需要在数据帧中开始变异的起始位置,选定采用预定义或自定义的样本,之后样本生成模块根据制定好的变异策略生成测试样本准备交付执行监测系统进行第一轮测试。在第一轮测试结束后,会触发样本生成模块的第二种运行方式,将第一轮测试产生的测试样本传入样本生成模块中二次学习模型,同样生成测试样本准备交付执行监测系统进行第二轮测试。样本生成步骤流程如图5所示。
其中变异策略配置提出了一种预定义与自定义相组合的变异策略,能多样化配置变异策略,提高变异样本的精度和广度。在常规漏洞检测过程后,对检测结果进行二次学习,生成具有漏洞特征的数据报文,再次传入执行监测模块进行二次漏洞检测,验证得到引起异常的测试样本。其中二次学习的过程采用引入Attention机制的Seq2Seq模型,Seq2Seq模型主要包括Encoder与Decoder两部分组成。编码器如图6所示,解码器如图7所示,Attention结构如图8所示。具体的,在一次生成样本检测完成后,被标记出的异常样本通过Seq2Seq模型进行二次学习进而进行二次检测用以获取更多更高命中率的异常数据帧。学习样本的字段误差会对数据帧的生成准确性产生较大的影响,在训练模型过程中采用平均绝对误差MAE(Mean Absolute Error)来表示期望数据帧与生成数据帧的差异。假设用x1,x2,…,xi表示期望数据序列,用y1,y2,…,yi表示生成数据序列,则平均绝对误差MAE可以表示为:
更直接表现为:
在训练过程中采用随机梯度下降的方式对损失函数进行优化,其中X为上述假设的x1,x2,…,xi期望数据序列,Y为y1,y2,…,yi生成数据序列,整体表示为logMAE(X,Y)取得最小值时,变量X,Y的取值,表示如下:
argmin logMAE(X,Y)
自定义测试样本模型如图12所示。
在预定义模式下,变异模式分为单字节变异和双字节变异。其中单字节变异指的是对两位16进制数的变异,格式如:1A,双字节变异指的是对4位16进制数的变异,格式如:A1 2D。系统样本由系统内置具有代表性的数据作为变异种子以提高测试效率,避免完全遍历带来的大量资源消耗,其中单字节变异样本数为112,双字节变异样本数为140。对于测试协议下的数据帧,可自定义样本的变异值或变异范围,根据自定义的变异策略生成对应的测试样本。同时在变异策略的选择上可以结合预定义变异种子与自定义规则,二者结合来进一步提高样本的精度和广度。内置变异样本类型如图9所示。
所述执行监测模块,用于将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。其中链路管理主要是测试系统与被检设备之间的连接管理,主要包括链路名、类型与具体内容。测试执行主要负责选定测试选项从而开始测试任务,主要包括设定任务名、选择链路、选择变异策略等。在测试执行过程中,可以使用状态监测随时查看目前已完成的测试内容包括选中的协议名、功能名、收发包时间、原始数据帧与变异数据帧、应答结果。对于测试结果系统将会进行存储。在导出的报告中,会额外标注应答结果异常的数据帧作为漏洞分析的主要依据。
所述执行监测模块是系统中唯一直接与被检设备交互的模块,同时也是负责任务执行与调度的模块。
具体的,所述执行监测模块的功能包括建立链路连接、执行测试任务、对测试任务测试方法的配置、测试任务的增加、删除、编辑、查看、测试进度查询、变异详情查询以及测试任务的管理,可对测试任务进行配置管理、测试任务的执行进度查看以及对已完成任务的变异详情进行查看分析(例如可疑数据包的正确记录与打印,记录信息包括目标信息、测试时间、异常行为等),能方便对检测过程和结果进行分析和异常跟踪,同时具有检测报告导出的功能。执行监测步骤流程如图10所示。
本发明的工作原理为:
系统工作流程图如图13所示:
当开启测试时,首先进入协议配置阶段,在协议配置模块中首先需要确定协议名,确定协议名的同时需要添加相关协议描述,之后根据确定的协议添加所需要的数据帧,数据帧下主要需要确定功能名与帧格式,之后确定的协议可传递给样本生成模块。
在确定协议后,第一次进入样本生成阶段,根据确定协议配置协议信息,之后选定使用的变异模式,包括单字节变异与双字节变异两种。之后确定变异点,主要为确定在数据帧中的变异样本。之后根据预定义或自定义或组合方式选定变异样本。根据上面所定的变异策略生成一轮测试样本,传递给执行监测模块以待发送使用。
收到一轮测试样本后,第一次进入执行监测阶段,依次进行链路管理,主要为用户测试系统与被检设备之间的连接管理,主要包括链路名、类型与具体内容,进而进行发送数据测试,然后进入状态监测步骤,等待被检设备回应。若被检设备正常回应则样本测试通过;若被检设备超时未响应,则判定响应状态异常,将发送测试样本数据标记被异常数据并记录。若仍有测试样本未发送则返回发送数据步骤继续发送数据,若数据已全部发送即完成一次执行阶段。判断完成二轮测试。若为完成,则将异常样本传递到样本生成模块。
二次进入样本生成阶段,将一轮测试的异常样本作为输入,传入引入Attention机制的Seq2Seq模型进行二次学习,生成更具有异常特征的二轮测试样本,传递至执行监测模块。
二次进入执行监测模块后,与第一次进入执行监测阶段一样进行执行测试、链路管理、发送数据、状态监测等。数据发送结束后判断完成一轮测试,之后判断完成二轮测试,则整个测试完成,之后可以进入系统查询完整的任务执行相关结果。
本发明实施例还提供一种基于模糊测试的电力物联网协议漏洞检测方法,包括如下步骤:
协议配置步骤:配置被检协议以及配置被检协议下的数据帧;具体的,确定协议名,在创建协议名的同时添加关于本协议的描述,在确定协议后根据测试需要添加需要测试的数据帧,创建的数据帧下确定功能名与帧格式,用以在样本生成模块中载入;
样本生成步骤:在载入配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本;触发样本生成步骤的方式包括生成测试任务与一轮测试结束后传入异常样本,两者都会生成测试样本用以执行测试。首先是在执行测试任务时候,此时样本生成需要确定配置协议信息,之后确定采用单字节或双字节变异模式,之后确定需要在数据帧中开始变异的起始位置,选定采用预定义或自定义的样本,之后样本生成模块根据制定好的变异策略生成测试样本准备交付执行监测系统进行第一轮测试。在第一轮测试结束后,触发样本生成的第二种运行方式,将一轮测试产生的测试样本传入样本生成模块中二次学习模型,同样生成测试样本准备交付执行监测系统进行第二轮测试。
执行监测步骤:将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。
本发明通过对电力物联网工控协议进行分析,在工控设备进行测试实验,对比传统模糊测试方法,能有效提高电网工控协议检测效率、挖掘工控协议的漏洞。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何属于本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (10)
1.一种基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:包括
协议配置模块,用于配置被检协议以及配置被检协议下的数据帧;
样本生成模块,用于在载入所述协议配置模块配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本;
执行监测模块,用于将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。
2.如权利要求1所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:所述协议配置模块配置被检协议以及配置被检协议下的数据帧具体包括:确定协议名,在创建协议名的同时添加关于协议的描述,在确定协议后根据测试需要添加需要测试的数据帧,创建的数据帧下确定功能名与帧格式。
3.如权利要求1所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:所述变异策略配置包括配置策略名、协议名、功能名、变异模式、起始位置、变异样本,其中策略名、协议名、功能名、帧预览等属于描述字段。
4.如权利要求3所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:所述变异模式的实现有单字节模式与双字节模式,根据字段语义需要,可自定义选择采用单字节模式与双字节模式。
5.如权利要求3所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:所述起始位置用于精确表述需要变异的位置,避免全部进行编译而带来的无意义冗余。
6.如权利要求3所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:所述变异样本中可选择系统样本、自定义固定值、自定义范围方式,系统样本根据单双字节模式的不同内置典型的变异值,自定义固定值与自定义范围用以针对不用语义的各类私有电力物联网工控协议,在语义分析之后制定针对性的测试变异样本内容。
7.如权利要求1所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:触发样本生成模块的方式包括生成测试任务与一轮测试结束后传入异常样本,具体的,在执行测试任务时,样本生成模块确定配置协议信息,之后确定采用单字节或双字节变异模式,之后确定需要在数据帧中开始变异的起始位置,选定采用预定义或自定义的样本,之后样本生成模块根据制定好的变异策略生成测试样本准备交付执行监测系统进行第一轮测试;在第一轮测试结束后,触发样本生成模块的第二种运行方式,将第一轮测试产生的测试样本传入样本生成模块中二次学习模型,同样生成测试样本准备交付执行监测系统进行第二轮测试。
8.如权利要求7所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:二次学习的过程采用引入Attention机制的Seq2Seq模型,Seq2Seq模型主要包括Encoder与Decoder两部分组成,在一次生成样本检测完成后,被标记出的异常样本通过Seq2Seq模型进行二次学习进而进行二次检测用以获取更多更高命中率的异常数据帧;在训练模型过程中采用平均绝对误差MAE来表示期望数据帧与生成数据帧的差异,假设用x1,x2,…,xi表示期望数据序列,用y1,y2,…,yi表示生成数据序列,则平均绝对误差MAE表示为:
更直接表现为:
在训练过程中采用随机梯度下降的方式对损失函数进行优化,其中X为上述假设的x1,x2,…,xi期望数据序列,Y为y1,y2,…,yi生成数据序列,整体表示为logMAE(X,Y)取得最小值时,变量X,Y的取值,表示如下:
argmin logMAE(X,Y)。
9.如权利要求1所述的基于模糊测试的电力物联网协议漏洞检测系统,其特征在于:执行监测模块中的链路管理是测试系统与被检设备之间的连接管理,包括链路名、类型与具体内容;测试执行负责选定测试选项从而开始测试任务,包括设定任务名、选择链路、选择变异策略,在测试执行过程中,使用状态监测随时查看目前已完成的测试内容包括选中的协议名、功能名、收发包时间、原始数据帧与变异数据帧、应答结果,对于测试结果系统进行存储,在导出的报告中标注应答结果异常的数据帧作为漏洞分析的主要依据。
10.一种基于模糊测试的电力物联网协议漏洞检测方法,其特征在于:包括如下步骤:
协议配置步骤:配置被检协议以及配置被检协议下的数据帧;具体的,确定协议名,在创建协议名的同时添加关于本协议的描述,在确定协议后根据测试需要添加需要测试的数据帧,创建的数据帧下确定功能名与帧格式,用以在样本生成模块中载入;
样本生成步骤:在载入配置的协议与数据帧后,根据载入的协议进行变异策略配置,并根据配置的变异策略生成测试样本;
执行监测步骤:将样本生成模块生成的测试样本传入被检设备进行测试,进行链路管理、执行测试,最后对测试结果进行存储并生成检测报告。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110567713.6A CN113392402B (zh) | 2021-05-24 | 2021-05-24 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
PCT/CN2022/094037 WO2022247738A1 (zh) | 2021-05-24 | 2022-05-20 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
US18/016,877 US20230188556A1 (en) | 2021-05-24 | 2022-05-20 | System and method for detecting vulnerability of internet of things in power systems (iotips) protocol based on fuzz testing |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110567713.6A CN113392402B (zh) | 2021-05-24 | 2021-05-24 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113392402A true CN113392402A (zh) | 2021-09-14 |
CN113392402B CN113392402B (zh) | 2022-08-05 |
Family
ID=77618882
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110567713.6A Active CN113392402B (zh) | 2021-05-24 | 2021-05-24 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20230188556A1 (zh) |
CN (1) | CN113392402B (zh) |
WO (1) | WO2022247738A1 (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114205340A (zh) * | 2021-12-23 | 2022-03-18 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114338451A (zh) * | 2021-12-31 | 2022-04-12 | 武汉思普崚技术有限公司 | 一种控制器局域网总线测试系统、方法和存储介质 |
CN114465938A (zh) * | 2022-01-05 | 2022-05-10 | 国网湖北省电力有限公司电力科学研究院 | 一种基于模糊测试的充电桩can协议的渗透测试方法、系统及存储介质 |
CN114500345A (zh) * | 2022-01-25 | 2022-05-13 | 上海安般信息科技有限公司 | 一种基于自定义协议配置的模糊测试与诊断系统 |
CN114661621A (zh) * | 2022-05-13 | 2022-06-24 | 上海交通大学宁波人工智能研究院 | 一种基于强化学习的工控协议模糊测试系统和方法 |
WO2022247738A1 (zh) * | 2021-05-24 | 2022-12-01 | 国网湖北电力有限公司电力科学研究院 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116303082B (zh) * | 2023-04-04 | 2023-12-19 | 中南大学 | 一种操作系统内核模糊测试种子调度与评估方法 |
CN116662184B (zh) * | 2023-06-05 | 2024-01-30 | 福建师范大学 | 一种基于Bert的工控协议模糊测试用例筛选方法及系统 |
CN116841243B (zh) * | 2023-06-19 | 2024-01-09 | 浙江大学 | 一种智能化plc协议格式推断方法、模糊测试方法及装置 |
CN117009974B (zh) * | 2023-06-28 | 2024-09-10 | 博智安全科技股份有限公司 | 基于贝叶斯网络的漏洞挖掘方法、系统、存储介质和终端设备 |
CN116662207B (zh) * | 2023-07-24 | 2024-07-12 | 北京银联金卡科技有限公司 | 一种针对区块链网络进行模糊测试的方法 |
CN117555814B (zh) * | 2024-01-11 | 2024-05-10 | 三六零数字安全科技集团有限公司 | 软件测试方法、装置、存储介质以及终端 |
CN117792967B (zh) * | 2024-02-26 | 2024-05-10 | 南京邮电大学 | 一种基于差异度反馈的摄像头模糊测试方法 |
CN118409951B (zh) * | 2024-03-25 | 2024-10-08 | 中国人民解放军61660部队 | 一种典型模糊测试样本生成方法 |
Citations (13)
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 |
US20180144141A1 (en) * | 2016-11-21 | 2018-05-24 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method and system for detecting the vulnerability of an onboard device |
CN108924102A (zh) * | 2018-06-21 | 2018-11-30 | 电子科技大学 | 高效的工控协议模糊测试方法 |
US20180365139A1 (en) * | 2017-06-15 | 2018-12-20 | Microsoft Technology Licensing, Llc | Machine learning for constrained mutation-based fuzz testing |
US20190109872A1 (en) * | 2017-10-05 | 2019-04-11 | Honeywell International Inc. | Intelligent automated security vulnerability detection and analysis for industrial internet of things (iiot) devices |
CN110300099A (zh) * | 2018-11-26 | 2019-10-01 | 湖北工业大学 | 一种电力工控系统静态和动态漏洞分析与挖掘技术 |
CN110365678A (zh) * | 2019-07-15 | 2019-10-22 | 北京工业大学 | 一种基于反样本的工控网络协议漏洞挖掘方法 |
CN110399724A (zh) * | 2019-01-11 | 2019-11-01 | 湖北工业大学 | 一种基于电力工控系统典型漏洞特征的动态模糊测试技术 |
CN110597734A (zh) * | 2019-09-23 | 2019-12-20 | 电子科技大学 | 一种适用于工控私有协议的模糊测试用例生成方法 |
CN111258909A (zh) * | 2020-02-07 | 2020-06-09 | 中国信息安全测评中心 | 一种测试样本生成方法及装置 |
CN111897733A (zh) * | 2020-08-07 | 2020-11-06 | 北京理工大学 | 一种基于最小集合覆盖的模糊测试方法和装置 |
CN112104525A (zh) * | 2020-09-18 | 2020-12-18 | 西安科技大学 | 基于序列生成对抗网络的dnp3协议模糊测试方法 |
CN112131115A (zh) * | 2020-09-23 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 一种智能合约模糊测试的方法、装置及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112069061B (zh) * | 2020-08-19 | 2021-08-20 | 北京科技大学 | 深度学习梯度指导变异的软件安全漏洞检测方法及系统 |
CN112055003B (zh) * | 2020-08-26 | 2022-12-23 | 上海电力大学 | 一种基于字节长度分类的私有协议模糊测试用例生成方法 |
CN113392402B (zh) * | 2021-05-24 | 2022-08-05 | 国网湖北省电力有限公司电力科学研究院 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
-
2021
- 2021-05-24 CN CN202110567713.6A patent/CN113392402B/zh active Active
-
2022
- 2022-05-20 WO PCT/CN2022/094037 patent/WO2022247738A1/zh active Application Filing
- 2022-05-20 US US18/016,877 patent/US20230188556A1/en active Pending
Patent Citations (13)
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 |
US20180144141A1 (en) * | 2016-11-21 | 2018-05-24 | Commissariat A L'energie Atomique Et Aux Energies Alternatives | Method and system for detecting the vulnerability of an onboard device |
US20180365139A1 (en) * | 2017-06-15 | 2018-12-20 | Microsoft Technology Licensing, Llc | Machine learning for constrained mutation-based fuzz testing |
US20190109872A1 (en) * | 2017-10-05 | 2019-04-11 | Honeywell International Inc. | Intelligent automated security vulnerability detection and analysis for industrial internet of things (iiot) devices |
CN108924102A (zh) * | 2018-06-21 | 2018-11-30 | 电子科技大学 | 高效的工控协议模糊测试方法 |
CN110300099A (zh) * | 2018-11-26 | 2019-10-01 | 湖北工业大学 | 一种电力工控系统静态和动态漏洞分析与挖掘技术 |
CN110399724A (zh) * | 2019-01-11 | 2019-11-01 | 湖北工业大学 | 一种基于电力工控系统典型漏洞特征的动态模糊测试技术 |
CN110365678A (zh) * | 2019-07-15 | 2019-10-22 | 北京工业大学 | 一种基于反样本的工控网络协议漏洞挖掘方法 |
CN110597734A (zh) * | 2019-09-23 | 2019-12-20 | 电子科技大学 | 一种适用于工控私有协议的模糊测试用例生成方法 |
CN111258909A (zh) * | 2020-02-07 | 2020-06-09 | 中国信息安全测评中心 | 一种测试样本生成方法及装置 |
CN111897733A (zh) * | 2020-08-07 | 2020-11-06 | 北京理工大学 | 一种基于最小集合覆盖的模糊测试方法和装置 |
CN112104525A (zh) * | 2020-09-18 | 2020-12-18 | 西安科技大学 | 基于序列生成对抗网络的dnp3协议模糊测试方法 |
CN112131115A (zh) * | 2020-09-23 | 2020-12-25 | 腾讯科技(深圳)有限公司 | 一种智能合约模糊测试的方法、装置及存储介质 |
Non-Patent Citations (3)
Title |
---|
张亚丰等: "基于状态的工控协议Fuzzing测试技术", 《计算机科学》 * |
王廷银等: "基于北斗RDSS的核辐射监测应急通讯方法", 《计算机系统应用》 * |
王海翔等: "基于逆向分析的工控协议模糊测试方法", 《电力信息与通信技术》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022247738A1 (zh) * | 2021-05-24 | 2022-12-01 | 国网湖北电力有限公司电力科学研究院 | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 |
CN114205340A (zh) * | 2021-12-23 | 2022-03-18 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114205340B (zh) * | 2021-12-23 | 2024-04-02 | 绿盟科技集团股份有限公司 | 一种基于智能电力设备的模糊测试方法及装置 |
CN114338451A (zh) * | 2021-12-31 | 2022-04-12 | 武汉思普崚技术有限公司 | 一种控制器局域网总线测试系统、方法和存储介质 |
CN114338451B (zh) * | 2021-12-31 | 2023-10-13 | 武汉思普崚技术有限公司 | 一种控制器局域网总线测试系统、方法和存储介质 |
CN114465938A (zh) * | 2022-01-05 | 2022-05-10 | 国网湖北省电力有限公司电力科学研究院 | 一种基于模糊测试的充电桩can协议的渗透测试方法、系统及存储介质 |
CN114500345A (zh) * | 2022-01-25 | 2022-05-13 | 上海安般信息科技有限公司 | 一种基于自定义协议配置的模糊测试与诊断系统 |
CN114661621A (zh) * | 2022-05-13 | 2022-06-24 | 上海交通大学宁波人工智能研究院 | 一种基于强化学习的工控协议模糊测试系统和方法 |
CN114661621B (zh) * | 2022-05-13 | 2022-08-23 | 上海交通大学宁波人工智能研究院 | 一种基于强化学习的工控协议模糊测试系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2022247738A1 (zh) | 2022-12-01 |
US20230188556A1 (en) | 2023-06-15 |
CN113392402B (zh) | 2022-08-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113392402B (zh) | 一种基于模糊测试的电力物联网协议漏洞检测系统及方法 | |
CN110334021B (zh) | 接口测试案例的生成方法、装置、设备及存储介质 | |
CN107948120B (zh) | 漏洞检测方法和装置 | |
CN111191767B (zh) | 一种基于向量化的恶意流量攻击类型的判断方法 | |
CN108183916A (zh) | 一种基于日志分析的网络攻击检测方法及装置 | |
CN114050979B (zh) | 一种工业控制协议安全测试系统及装置 | |
US11546295B2 (en) | Industrial control system firewall module | |
CN109726830A (zh) | 设备巡检方法、装置、电子设备及存储介质 | |
CN113315767A (zh) | 一种电力物联网设备安全检测系统及方法 | |
CN112671724B (zh) | 一种终端安全检测分析方法、装置、设备及可读存储介质 | |
CN112385196A (zh) | 用于报告计算机安全事故的系统和方法 | |
Wen et al. | Protocol vulnerability detection based on network traffic analysis and binary reverse engineering | |
CN112052156B (zh) | 一种模糊测试方法、装置和系统 | |
CN111625448B (zh) | 协议包生成方法、装置、设备及存储介质 | |
CN111245800B (zh) | 网络安全测试方法和装置、存储介质、电子装置 | |
CN112667512A (zh) | 数据驱动测试方法、装置、设备和计算机可读存储介质 | |
CN111585830A (zh) | 一种用户行为分析方法、装置、设备及存储介质 | |
CN114760109B (zh) | 用于安全分析的数值行为安全基线生成方法及装置 | |
CN116166536A (zh) | 一种测试方法、装置、电子设备及存储介质 | |
CN113301049B (zh) | 一种工控设备的审计方法、装置、设备及可读存储介质 | |
KR101512700B1 (ko) | 사용자 행위패턴 기반 웹 서버의 비인가 트래픽 정밀 접근제어 시스템 및 그 제어 방법 | |
CN114330363A (zh) | 一种基于漏洞语义智能解析的工控协议漏洞挖掘方法 | |
CN113535273A (zh) | 工业联网智能设备的系统级记录方法、系统及存储介质 | |
WO2014048194A1 (zh) | Android恶意应用程序检测方法、系统及设备 | |
CN116708001B (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 |