摘要: 针对工业控制协议中复杂格式与字段依赖难以建模,传统模糊测试在测试用例接收率与样本多样性方面存在不足,提出一种协同表征学习与强化学习的工控协议模糊测试方法。该方法结合深度可分离卷积的高效特征提取能力与多头自注意力机制的全局依赖建模优势,构建多尺度特征提取器,捕捉局部与全局特征。引入强化学习优化策略,增强潜在空间表达能力。提出通用ICP(Industrial Control Protocols)模糊测试框架RLCAFuzzer,并在典型能源企业工业场景的攻防演练靶场上对3种常见工控协议(Modbus/TCP,Ethernet/IP,S7 comm)进行实验验证。结果表明该框架的TCAR指标显著提高,并展现出更强异常触发能力,验证了其在工控协议漏洞挖掘中的有效性与先进性。
A fuzz testing method for industrial control protocols based on representation learning and reinforcement learning
He Kan 1,2, Wang Zhi1,2,Shi Hongyan1,2,Lian Lian1,2,Sun Yifei1,2,Ning Bowei2,3,Zong Xuejun1,2
1. College of Information Engineering, Shenyang University of Chemical Technology; 2. Key Laboratory of Information Security for Petrochemical Industry in Liaoning Province; 3. School of Artificial Intelligence,Shenyang University of Technology
Abstract: Given the difficulty in modeling the complex formats and field dependencies of industrial control protocols, traditional fuzz testing suffers from shortcomings in test case acceptance rate and sample diversity. This paper proposes a fuzz testing method for industrial control protocols that combines multiscale representation learning with reinforcement learning. This method combines the efficient feature extraction capabilities of depthwise separable convolutions with the global dependency modeling advantages of a multihead selfattention mechanism to design a multiscale feature extractor that captures both local and global features. A reinforcement learning optimization strategy is introduced to enhance the latent space representation capability. A general ICP (Industrial Control Protocols) fuzz testing framework, RLCAFuzzer, is designed and validated experimentally against three common industrial control protocols (Modbus/TCP, Ethernet/IP, and S7 comm) in a typical energy enterprise attack and defense scenario. Results demonstrate a significant improvement in the TCAR metric and enhanced anomaly triggering capability, demonstrating its effectiveness and advancement in industrial control protocol vulnerability detection.
Key words : fuzz testing;industrial control protocols;vulnerability detection;variational autoencoder;Transforme
引言
工业控制系统(Industrial Control System,ICS)是由计算机设备和工业控制元件组成的自动控制系统,广泛应用于水处理、化工、制造和其他关键领域[1],通过实时监控和控制工业过程,保障了社会生产的高效与安全。然而,随着“互联网+”的提出,工业物联网(IIoT)[2]与工业控制系统紧密结合[3],催生了智能工业生态系统的发展。工业控制系统变得互联互通[4],且正逐步向智能化和网络化方向演进,传统的封闭式网络结构逐渐被开放式网络所取代[5]。工业控制协议作为信息化系统各部分之间沟通的桥梁[6],是信息安全传输的重要保障,其安全性至关重要[7]。然而工控协议在设计之初专注于功能性,追求协议的简洁性和高性能,并未充分考虑安全性问题,在使用中便频繁暴露出安全漏洞[8]。漏洞挖掘指综合应用各种技术工具,最大限度地识别软件程序、网络协议等系统中潜在安全漏洞的过程[9]。传统的漏洞挖掘方法通常依赖于静态代码分析或已知协议的逆向分析[10]。这些方法需要丰富的先验知识,并且对工控系统特有的复杂协议结构缺乏针对性。近年来模糊测试(Fuzz Testing)[11]作为一种通用的漏洞挖掘方法[12],受到了广泛关注。模糊测试的基本流程通常包括数据预处理、测试用例生成、测试执行、异常监测与漏洞分析等环节。模糊测试前需要收集目标系统的历史通信流量或已知协议数据,以构建初始测试样本并提取关键特征。随后,测试用例生成模块依据不同策略构造大量测试数据,这些数据可以通过变异已有输入(如随机修改、插入或删除字节)或基于规则从零生成[13],以最大程度覆盖潜在攻击面。然而,在模糊测试的实施过程中,通常需要依据特定的规范设计和生成测试数据,这一过程带来了诸多限制[14]。为突破这些限制,研究者们开始探索将深度学习[15]引入模糊测试,以优化测试用例生成和协议格式学习。例如,Wang等人[16]提出基于Transformer的协议相似性变异方法,通过语义建模提升测试用例接收率以增强异常触发能力,但其性能依赖训练数据质量,跨协议泛化能力不足。Wanyan等人[17]基于非关键字段变异融合信息熵的独特性来提升样本多样性,但其依赖协议先验解析,难以适应未知或私有协议。Yu等人[18]提出CovGAN方法(CGFuzzer),利用生成对抗网络提升覆盖率,但GAN模型在高维空间中易出现模式崩溃,导致生成分布集中。Lv等人[19]提出BLSTMDCNNFuzz,提高了模糊测试的自动化程度,但需大量标注样本,计算成本高,不适用于资源受限的场景。Zhao等人[20]提出的SeqFuzzer提高了测试效率和对状态协议的适应性,但生成阶段缺乏分布约束,难以兼顾覆盖率与多样性。Zhao等人[21]提出的AMSFuzz通过自适应调度优化变异算子选择,提高路径探索能力,但仍受传统变异策略框架限制,对高维输入泛化不足,且依赖初始种子质量,难以实现真正的自主生成与多样性控制。综上,本文提出一种协同多尺度表征学习与强化学习的工控协议模糊测试方法。利用深度可分离卷积高效提取协议报文的多层次特征,并通过多头注意力机制融合局部字段与全局依赖信息;引入潜在空间优化策略,动态调整潜在空间的结构与分布,显著提升测试用例的多样性。在典型能源企业工业场景的攻防演练靶场上进行实验以验证模型的有效性。实验结果表明,本文方法具备较强的异常触发能力,能够生成多样性且符合标准的测试用例,具备更强的漏洞挖掘能力。