[发明专利]一种基于协议状态的工控协议模糊测试方法有效
申请号: | 201610094014.3 | 申请日: | 2016-02-19 |
公开(公告)号: | CN105763392B | 公开(公告)日: | 2019-03-08 |
发明(设计)人: | 洪征;吴礼发;张亚丰;田益凡;赖海光;李华波;郑成辉;黄康宇 | 申请(专利权)人: | 中国人民解放军理工大学 |
主分类号: | H04L12/26 | 分类号: | H04L12/26;H04L29/06 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 陈建和 |
地址: | 210007*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明提供一种基于协议状态的工控协议模糊测试方法,包括以下步骤:协议状态机提取、报文序列库的构建、协议状态的引导、测试用例的发送与存储、基于心跳的异常监测、以及导致异常的测试报文定位。本发明针对工控协议模糊测试盲目性较大、测试效率低下的问题,依据工控组件所处的协议状态,向工控组件发送属于该协议状态的测试用例,有效扩展模糊测试的覆盖范围,提高测试用例的针对性。本发明基于心跳的异常监测具有广泛的适用性。此外,本发明对导致异常的测试报文的定位方法,能够高效准确的定位引发工控协议异常的单个报文或者报文序列,便于安全漏洞的挖掘和分析。 | ||
搜索关键词: | 一种 基于 协议 状态 模糊 测试 方法 | ||
【主权项】:
1.一种基于协议状态的工控协议模糊测试方法,其特征在于,包括以下步骤:(1)协议状态机提取:采用协议状态机提取方法,即采用开源协议逆向分析项目Netzob的协议状态机提取方法,其基本流程是:在协议通信报文样本集的基础上,利用请求询问和应答反馈不断扩充原始通信报文样本集,判断所推断的候选协议状态机是否与真实协议状态机一致,当满足协议状态机等价条件时输出协议状态机;在获得待测工控协议的协议状态机后,将协议状态机表示为XML语言描述的脚本文件;(2)报文序列库的构建:基于协议状态机,收集并存储工控协议实体程序间的正常交互报文;确保对于一个工控协议实体程序,当其处于初始状态时,能够通过一系列的正常交互报文,将工控协议实体程序引导至协议状态机中的任意一个工控协议状态,或者说,报文序列库收集并存储了足够多的正常交互报文,能够将工控协议实体程序由初始状态引导到任意一个后续协议状态;(3)协议状态的引导:为了提高测试的深度,增加覆盖率,需要对协议状态机包含的各个协议状态进行测试,从而有效发现工控组件处于不同协议状态时存在的安全漏洞;在测试过程中,需要将工控组件通过正常的交互报文引导至需要测试的某一个工控协议状态,在该协议状态下对工控组件实施模糊测试;(4)测试用例的发送与存储:在将工控协议实体程序引导到待测状态后,基于模糊测试的报文变异知识对工控协议报文进行变异,向工控协议实体程序发送经过变异的报文实施测试;此外,为了便于后续分析,将存储所发送的测试用例;(5)基于心跳的异常监测:在发送完一个测试用例后,需要发送用于探测工控组件活跃情况的心跳报文,对被测工控组件进行监测,判断被测对象是否处于正常活跃状态,从而及时发现由于测试用例发送而导致的协议异常;(6)导致异常的测试报文定位:工控协议的处理异常会由单个报文引起,也会由报文序列导致;为了准确定位导致异常的测试报文,需要在测试端存储近期所发送的测试报文;当出现异常时,将被测工控组件重置为正常工作状态,依据所存储的报文进行回溯,确定导致异常的报文或者报文序列。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军理工大学,未经中国人民解放军理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610094014.3/,转载请声明来源钻瓜专利网。
- 上一篇:业务处理方法、装置及家庭网关
- 下一篇:故障检测方法和故障检测系统