浅谈工控软硬件的指纹挖掘与测试技术

246 阅读3分钟

0x00 引言

随着工业控制系统的广泛应用,其安全性和稳定性变得至关重要。工控软硬件的指纹挖掘与测试技术作为保障系统安全的关键手段,受到了业界的广泛关注。本文旨在探讨工控软硬件指纹挖掘与测试技术的原理、方法及应用,以期为相关领域的研究和实践提供参考。

0x01 必要性

资产识别模块的核心是对工控软硬件网络通信特征收集而形成的指纹库。资产识别模块在进行扫描任务时,根据传入的IP和端口,可以自动调取相应的工控软硬件扫描插件进行深度识别验证,不同的插件可以对某一系列的全部设备进行探测与发现,并解析出设备对应的模块信息、固件信息、版本等数据。

对基于私有协议的工业控制系统软硬件网络指纹的识别是一个公认的技术难点。工业控制系统协议栈的代码量短则几万行,多则数十万行,而用于识别工业控制系统的网络指纹代码量也就短短数十行,因此在私有协议中发现工业控制系统的网络指纹无异于“大海捞针”。在没有工控厂商的配合下,一般很难找到可以详细识别设备特征的报文。电子一所创新性通过基于神经网络与模糊学习的自学习算法,结合工业控制系统仿真测试环境,通过大量、快速的测试包不断摸索基于私有协议的工业控制系统软硬件的报文结构,智能定位其可能存在的报文特征,最终发现其网络指纹。

0x02 解决方案

工业控制系统软硬件网络指纹挖掘与测试技术方案如下图所示:

图片 1.png 图 1 工业控制系统软硬件网络指纹测试技术方案

对于采用公开协议通讯的工业控制系统软硬件设备(工业控制器、仪器仪表、SCADA组态软件、工业数据库),本项目直接通过研究工控厂商提供的协议栈及相关使用手册,分析协议中的各功能字节,研究可以识别出该设备的通信报文,并基于该报文构造网络指纹特征。最后,在建设的工业控制系统仿真测试环境的真实设备上测试验证网络指纹特征的有效性。

而大部分工业控制系统软硬件采用私有协议进行网络通信。对于此类设备,本项目通过工业控制系统仿真测试环境,直接在真实的工业控制设备上采集其通信报文,分析各种操作指令下的报文模式,并通过模糊测试、神经网络等自学习手段,智能逆向找出其独有的通信报文,并基于该报文构造网络指纹特征。

0x03 总结

本文介绍了工控软硬件的指纹挖掘与测试技术,并探讨了其原理、方法及应用。随着工业控制系统的不断发展,指纹挖掘与测试技术将在保障系统安全方面发挥越来越重要的作用。未来,我们将继续深入研究该技术,探索更先进的算法和模型,以提高指纹信息的准确性和测试结果的可靠性。同时,我们也将关注新技术的发展和应用,如人工智能、大数据等,为工控软硬件的安全保障提供更加有力的支持。