【技术实现步骤摘要】
本专利技术涉及工控协议
,具体而言涉及一种在获取工控协议协议状态机的基础上,依据协议状态,向运行工控协议实体程序的工控组件发送测试报文,挖掘工控协议实体程序存在的安全漏洞的方法。
技术介绍
工业控制系统(ICS,IndustrialControlSystem,简称“工控系统”)是由计算机设备与工业过程控制组件构成的智能控制系统,广泛应用于电力、水处理、石油与天然气、化工、交通运输、制造业等行业,它通过对机械装置、交通工具、实验装置、仪器仪表等工业设备进行自动化监测、指挥、控制和调节,保证工业设施的正常运转,是国家关键基础设施的大脑和中枢。工控系统主要包括数据采集与监控系统(SCADA,SupervisoryControlandDataAcquisition)、分布式过程控制系统(DCS,DistributedControlSystem)、可编程逻辑控制器(PLC,ProgrammableLogicController)、远程测控单元(RTU,RemoteTerminalUnit)等等。传统的工控系统由于运行环境封闭、专用性强,在系统设计上注重功能的完整性,较少关注系统的安全性,风险防护能力薄弱。随着工业革命步伐的加快,工控系统由相对封闭的运行环境加速向网络化和信息化转变,新一代的工控系统逐步兼容以太网,使之能够与ERP乃至互联网相连。工控系统的工业化和信息化的深度融合,在提高工业生产效率的同时,也使工控系统 ...
【技术保护点】
一种基于协议状态的工控协议模糊测试方法,其特征在于,包括以下步骤:(1)协议状态机提取:采用协议状态机提取方法,即采用开源协议逆向分析项目Netzob的协议状态机提取方法,其基本流程是:在协议通信报文样本集的基础上,利用请求询问和应答反馈不断扩充原始通信报文样本集,判断所推断的候选协议状态机是否与真实协议状态机一致,当满足协议状态机等价条件时输出协议状态机;在获得待测工控协议的协议状态机后,将协议状态机表示为XML语言描述的脚本文件;(2)报文序列库的构建:基于协议状态机,收集并存储工控协议实体程序间的正常交互报文;确保对于一个工控协议实体程序,当其处于初始状态时,能够通过一系列的正常交互报文,将工控协议实体程序引导至协议状态机中的任意一个工控协议状态,或者说,报文序列库收集并存储了足够多的正常交互报文,能够将协议实体由初始状态引导到任意一个后续协议状态;(3)协议状态的引导:为了提高测试的深度,增加覆盖率,需要对协议状态机包含的各个协议状态进行测试,从而有效发现工控组件处于不同协议状态时存在的安全漏洞;在测试过程中,需要将工控组件通过正常的交互报文引导至需要测试的某一个工控协议状态, ...
【技术特征摘要】
1.一种基于协议状态的工控协议模糊测试方法,其特征在于,包括以下步骤:
(1)协议状态机提取:采用协议状态机提取方法,即采用开源协议逆向分析项目Netzob的协议状态机提取方法,其基本流程是:在协议通信报文样本集的基础上,利用请求询问和应答反馈不断扩充原始通信报文样本集,判断所推断的候选协议状态机是否与真实协议状态机一致,当满足协议状态机等价条件时输出协议状态机;在获得待测工控协议的协议状态机后,将协议状态机表示为XML语言描述的脚本文件;
(2)报文序列库的构建:基于协议状态机,收集并存储工控协议实体程序间的正常交互报文;确保对于一个工控协议实体程序,当其处于初始状态时,能够通过一系列的正常交互报文,将工控协议实体程序引导至协议状态机中的任意一个工控协议状态,或者说,报文序列库收集并存储了足够多的正常交互报文,能够将协议实体由初始状态引导到任意一个后续协议状态;
(3)协议状态的引导:为了提高测试的深度,增加覆盖率,需要对协议状态机包含的各个协议状态进行测试,从而有效发现工控组件处于不同协议状态时存在的安全漏洞;在测试过程中,需要将工控组件通过正常的交互报文引导至需要测试的某一个工控协议状态,在该协议状态下对工控组件实施模糊测试;
(4)测试用例的发送与存储:在将工控协议实体程序引导到待测状态后,基于模糊测试的报文变异知识对工控协议报文进行变异,向工控协议实体程序发送经过变异的报文实施测试;此外,为了便于后续分析,将存储所发送的测试用例;
(5)基于心跳的异常监测:在发送完一个测试用例后,需要发送用于探测工控组件活跃情况的心跳报文,对被测工控组件进行监测,判断被测对象是否处于正常活跃状态,从而及时发现由于测试用例发送而导致的协议异常;
(6)导致异常的测试报文定位:工控协议的处理异常可能由单个报文引起,也可能由报文序列导致;为了准确定位导致异常的测试报文,需要在测试端存储近期所发送的测试报文;当出现异常时,将被测工控组件重置为正常工作状态,依据所存储的报文进行回溯,确定导致异常的报文或者报文序列。
2.根据权利要求1所述的基于协议状态的工控协议模糊测试方法,其特征在于,前述步骤(2)报文序列库的构建阶段的工作流程如下:基于协议状态机,采用网络监听技术进行报文信息收集;每个工控协议状态,往往需要一系列的报文交互才会到达;采用网络监听技术,捕获从工控协议初始状态开始,到达每个特定协议状态的报文交互序列,并将报文交互序列以及它们所能够到达的报文状态一并存储在报文序列库中。
3.根据权利要求1所述的基于协议状态的工控协议模糊测试方法,其特征在于,前述步骤(3)协议状态的引导阶段的工作流程如下:为了便于将工控组件设置为不同的协议状态进行模糊测试,需要进行协议状态的引导;对于选定...
【专利技术属性】
技术研发人员:洪征,吴礼发,张亚丰,田益凡,赖海光,李华波,郑成辉,黄康宇,
申请(专利权)人:中国人民解放军理工大学,
类型:发明
国别省市:江苏;32
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。