[发明专利]一种工控系统协议模糊测试的脚本管理方法在审
| 申请号: | 201811577595.1 | 申请日: | 2018-12-20 |
| 公开(公告)号: | CN109634870A | 公开(公告)日: | 2019-04-16 |
| 发明(设计)人: | 王进;吴涛;何跃鹰;摆亮;邹潇湘;郭涛;李明柱 | 申请(专利权)人: | 国家计算机网络与信息安全管理中心 |
| 主分类号: | G06F11/36 | 分类号: | G06F11/36 |
| 代理公司: | 成都明涛智创专利代理有限公司 51289 | 代理人: | 丁国勇 |
| 地址: | 100029*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 模糊测试 测试 测试脚本 分层管理 工控系统 脚本管理 畸形数据 数据集合 综合协议 脚本层 结构层 协议层 脚本 构建 字段 引擎 自动化 架构 模糊 | ||
本发明涉及一种工控系统协议模糊测试的脚本管理方法,采用如下步骤:步骤一:对模糊测试中的脚本采用分层管理的方式,形成六个层次的树式结构;上述六个层次为:行业层、协议层、脚本层、PDU层、结构层、字段层;它采用分层管理方式来架构测试脚本以及测试用例,且构建综合协议测试畸形数据体系,它能够减少测试脚本的数量,通过模糊引擎自动按照数据集合生成相应的测试用例,实现了测试的自动化,缩短测试时间,提高模糊测试效率。
技术领域
本发明涉及一种工控系统协议模糊测试的脚本管理方法。
背景技术
模糊测试是一种通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。模糊测试是一项用于验证程序中真实错误的重要工具,也是所有意识到安全性问题且着力于程序健壮性的程序员们的工具箱中所必备的工具。
各行业都有各自的工控设备和通讯协议,工控系统多种多样,随着国家对工业领域安全的重视,针对工控协议的模糊测试工具也开始受到重视,目前市场上的模糊测试产品很多,但是对于如何管理测试脚本,目前为止尚未形成整套高效的管理方法和体系。
发明内容
本发明的目的在于针对现有技术的缺陷和不足,提供一种工控系统协议模糊测试的脚本管理方法,其提出一整套完整的模糊测试脚本通用管理方法,将适用于大部分工控协议模糊测试工具,极大提高了测试效率。
为实现上述目的,本发明采用的技术方案是:
本发明所述的一种工控系统协议模糊测试的脚本管理方法,采用如下步骤:
步骤一:对模糊测试中的脚本采用分层管理的方式,形成六个层次的树式结构;上述六个层次为:行业层、协议层、脚本层、PDU层、结构层、字段层;
(1)根据不同行业进行分类管理,形成按行业层管理树式结构;
(2)针对步骤(1)行业来对该行业所涉及的协议进行管理,形成协议层;以电力行业为例,协议层包括协议MMS、协议Modbus、协议OPCUA等;
(3)针对步骤(2)中的不同协议,按功能码类型进行区分,如MMS进行read脚本、Write脚本进行管理,协议OPCUA进行OpenChannel脚本、CreatSession脚本等的管理,形成脚本层;
(4)针对步骤(3)中的read脚本实现对协议数据单元PDU-TPKT、PDU-COTP、PDU-Request管理,OpenChannel脚本实现对协议数据单元PDU-Request等管理,形成PDU层;
(5)针对步骤(4)的协议数据单元PDU-Request来构建Struct结构,形成结构层;
(6)针对步骤(5)中的Struct结构来构建Field字段、length字段,形成字段层;
步骤二:针对步骤一中的脚本层,其脚本采用XML规范定义;
步骤三:根据步骤二中的脚本层来进行脚本约束,在需要动态计算的字段或者结构中,增加约束函数,模糊测试引擎根据不同的约束函数,调用不同的约束计算方法,生成动态数据,并自动填充到相应的测试用例数据域中;
(1)采用CRC计算校验;
(2)字段长度计算,根据指定的数据域,将模糊后的数据重新统计计算
出新的字段长度,并填充;
(3)字段自增,定义变量,根据协议规范执行相应的计算,并将结果填充;
(4)自动获取时间,并填充相应字段;
(5)签名加密计算,根据协议规范指定的算法,将模糊后的数据重新计算签名值或加密值,并填充;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国家计算机网络与信息安全管理中心,未经国家计算机网络与信息安全管理中心许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811577595.1/2.html,转载请声明来源钻瓜专利网。





