在全球信息化时代,工业互联网正在从根本上重塑传统产业。通过将现代信息技术与现有的制造过程深度融合,工业互联网正在推动工业领域向更高的智能化、效率和环境可持续性发展。然而,这种转型也增加了工业网络应用的复杂性。两个典型的挑战说明了这种复杂性:协议转换和入侵检测。对于工业设备监控,实时数据收集必须适应来自不同设备供应商的多种协议。在工业网络安全方面,入侵检测系统必须分析包含多种协议类型的大量网络流量。
工业通信领域明显缺乏通用语言,因为许多专有协议在不同系统之间仍然不兼容。因此,在系统集成过程中不可避免地需要进行协议转换。通常,技术人员必须手动配置协议参数、执行数据映射并调整转换规则。或者,工程师根据通信规范开发专用的协议转换程序,以确保异构系统之间的数据传输和解释的准确性。这些方法本质上效率低下且泛化能力差。工业协议逆向工程技术提供了一种创新解决方案:无需依赖协议文档,它可以通过监控和分析网络输入/输出、系统行为以及协议实体的命令执行流程来提取语法结构、语义信息和同步机制。这项技术不仅能够解析和破译工业通信协议,还为设备互操作性提供自动化支持。通过逆向工程分析,开发人员还可以进一步识别潜在的安全漏洞,从而优化系统设计。
协议逆向工程技术主要可以分为两类:基于程序的方法和基于网络追踪的方法。前者研究网络通信实体的指令序列,而后者研究捕获的网络流量。我们仅关注基于网络追踪的方法,因为在大多数情况下,控制系统程序是不可用的。
协议逆向分析中的一个关键任务是协议消息状态标注。消息状态标注的核心研究目的是重建和理解协议的状态逻辑,提高协议逆向工程的准确性和自动化程度,并为后续的协议分析、安全测试和仿真奠定基础。Maxim等人[1]首次研究了状态机注释,并引入了用于状态标注的聚类技术。图1展示了一个简化的OPC UA客户端的状态机,描绘了从建立连接、处理请求到最终断开连接的完整状态转换序列。
与传统的IT文本格式协议相比,工业控制协议大多是二进制格式的序列。由于大多数工业协议由TCP协议封装,一些消息同时包含二进制和文本。文本格式协议的功能可以通过关键字(例如GET、POST)推断出来,而二进制字段则需要对其编码方案进行推测,这通常取决于供应商特定的白皮书,并且在不同协议之间存在显著差异。此外,文本格式协议的字段边界可以通过分隔符清晰确定,而二进制格式协议在字段和协议层之间的划分则较为模糊。因此,传统的逆向工程方法在应用于工业控制协议时效果有限。
我们认为,解决工业协议数据固有挑战的关键在于开发专门针对其独特特性的建模方法。从根本上说,工业协议通信可以表示为离散消息实体的时间相关网络,其中单个消息被抽象为节点,时间依赖边基于时间戳间隔阈值构建(例如会话连续性、命令-响应关系)。这种基于图的建模方法与图神经网络(GNN)的时空建模优势天然契合。利用消息传递机制,GNN不仅可以聚合相邻消息节点的语法特征,还可以沿时间边传播协议状态信息,从而在统一框架内捕捉消息内容和交互时机的共同演化。因此,采用GNN能够有效地对复杂的协议序列进行建模,并支持协议逆向工程中的高级任务,如协议消息状态标注。
然而,传统的GNN网络结构在建模工业协议序列时也存在挑战。在工业生产环境中,时钟抖动和网络延迟等因素会导致消息时间间隔的动态变化。时间差异较小的两个消息更有可能属于同一事务链,而时间上接近的消息更可能反映相同的状态上下文(例如连续的温度传感器读数变化很小)。传统的基于硬阈值的方法[2]、[3]难以量化时间相关性的强度差异。为了解决这个问题,我们建议在GNN中引入模糊隶属函数,建立从“完全相关”到“可能相关”和“不相关”的渐进式隶属关系。这使得GNN在消息传播过程中优先聚合时空相邻的消息特征,使特征表示更符合设备的实际操作规则。为了减轻动态工业环境中的噪声干扰(例如突然的警报)并区分时间上相邻的消息中的不同流(例如控制流和监控流),我们使用注意力得分来评估消息的语义一致性。这种注意力得分与时间得分结合形成复合权重系数,有效减少了由单一维度权重确定引起的误判。
总之,我们提出了一种基于模糊逻辑的图聚合方法——模糊图注意力网络(FGAT),专门用于标注工业协议状态。我们的方法有效地建模了工业协议消息之间的复杂关系,并能够高效地标注它们的各种状态。通过将工业协议消息数据映射到基于时间阈值的图结构中,我们更准确地捕捉了消息内容和交互时机的共同演化。在邻域信息聚合过程中,我们利用注意力机制和模糊隶属函数为相邻节点分配自适应权重,进一步增强了消息间相关性的表示。我们的主要贡献如下:
- •
我们将工业协议通信分解为包含离散消息实体和时间依赖边的图结构。这种架构使得协议状态信息能够沿时间边传播,从而在统一框架内建模消息内容和交互时机的共同演化。此外,我们根据数据集的结构特征实现序列截断,这在优化计算复杂性的同时很大程度上保持了算法的准确性。
- •
为了解决工业环境中常见的动态时间间隔变化,我们设计了一个高斯时间加权模糊隶属函数,在GNN邻域聚合过程中优先考虑时空相邻的消息。该机制通过集成Transformer衍生的注意力得分得到进一步增强,有效减轻了噪声干扰并区分了语义流。
- •
通过对多种工业流协议数据集的全面测试,我们的方法已被验证能够在工业网络流量上进行有效的状态标注。与其他聚类模型和协议消息状态标注方法的比较实验表明了我们提出方法的优越性。
本文的其余部分组织如下。第2节回顾相关工作。第3节介绍初步内容。第4节详细描述FGAT方法。第5节讨论评估方法和实验结果。最后,第6节总结本文,讨论FGAT的局限性,并概述未来工作的方向。