APP下载

基于遗传算法的Modbus TCP协议模糊测试技术研究*

2020-12-02

舰船电子工程 2020年10期
关键词:实验

(海军工程大学舰船综合电力技术国防重点实验室 武汉 430033)

1 引言

随着工业互联网的不断发展,以及信息化和工业化的不断融合,传统工业控制系统[1]与互联网的联系越来越紧密。原本只设计在内网通信的工控系统逐渐接入互联网,这在增加工业控制系统的开放性、互连性和提高生产力的同时,也使得传统工控系统将面临着越来越多来自互联网的安全威胁[2]。与常规软件漏洞挖掘相比,使用模糊测试[3~5]来挖掘工控协议漏洞的困难在于工控协议是状态机,并且数据包的正确性具有很强的约束性。如果构造的异常数据包与工控协议格式不一致,工控设备很容易将其丢弃,将没有机会触发漏洞。因此,模糊测试工具应该具有一些基本的智能,而遗传算法(Genetic Algorithm,GA)[6]非常适合此任务,本文提出一种基于遗传算法的Modbus TCP协议模糊测试方法。

2 基于遗传算法的Modbus TCP协议模糊测试用例生成方法

2.1 编码

编码的目的是将问题空间的参数转换成遗传算法可以处理的形式,编码的方法会对交叉等接下来几个步骤产生直接的影响。因此,选择合适的编码方法会有效提高计算效率。常见的编码方式包括:二进制编码和格雷编码等。二进制编码是遗传算法中经常使用的编码方式。它的缺点是不适用于多维、高精度连续函数优化问题,还可能存在较大的汉明距离,也被称为汉明悬崖,因此本文选择格雷编码方式。

2.2 适应度函数

遗传算法在计算搜索最优解时,不依赖外部的信息,只依靠构造的适应度函数。……

登录APP查看全文

猜你喜欢

实验
记住“三个字”,写好小实验
记一次有趣的实验
有趣的实验
做个怪怪长实验
NO与NO2相互转化实验的改进
实践十号上的19项实验
《实验流体力学》征稿简则
我实验,我快乐