未知协议的逆向分析与自动化测试
发布时间:2021-09-07 19:36
在工业控制、军事通信、金融信息等创新型网络中,大量未知(私有或半私有)协议被广泛采用.对通信协议及其实现进行严格的测试是确保网络系统安全性的重要手段,现有测试手段与方法大多只能针对已知协议进行,未知协议的广泛采用对协议测试提出了挑战.本文提出了针对未知协议的逆向分析与自动化测试方法,其基本思想是基于对协议流量的逆向分析,识别出协议特征,动态生成多维测试数据,自动监控被测系统的运行状态,获得准确的测试结果,为系统安全可靠运行提供依据.具体贡献包括:(1)自动化模糊测试框架;(2)基于协议特征库的逆向分析方法;(3)基于多维变异的测试数据生成方法;(4)基于主动探测的测试执行与异常定位方法 .本文设计实现了自动化测试工具UPAFuzz,试验结果表明,UPAFuzz能够基于网络流量实现协议特征的自动识别,并自动生成海量模糊测试数据,对被测系统进行测试;在生成的测试数据量达到千万级时,UPAFuzz的内存占用率为现有模糊测试工具Boofuzz的50%,且其耗时仅为Boofuzz的10%,大大提升了测试执行效率.
【文章来源】:计算机学报. 2020,43(04)北大核心EICSCD
【文章页数】:15 页
【部分图文】:
现有的模糊测试框架图
如图2所示,在知识层面,鉴于现有框架中人工或借助网络嗅探器等工具无法获得未知协议的相关知识,本文提出使用自动化的方法对协议流量进行逆向分析,自动学习出协议的结构和语义特征;在数据层面,考虑到单字段随机填充的测试数据生成方式限制了数据的命中率以及漏洞挖掘能力,本框架根据逆向得到的协议特征动态生成多维变异的测试数据,提高测试数据的命中率和漏洞挖掘能力.在执行层面,为了克服私密的网络设备无法附加监测代理程序的问题,框架采用主动探测的方式,对被测设备进行自动监测.本文使用一个有限状态机来描述整个框架,状态机如图3所示:
本文使用一个有限状态机来描述整个框架,状态机如图3所示:首先,模糊测试的执行需要以足够详细的协议知识为基础,即使用本文提出的基于协议特征库的逆向分析方法,基于协议流量自动学习出协议的特征,构建协议的模型.与传统方法相比,我们不仅进一步完善了协议特征的推断方法,而且创建了已知协议特征库,为协议特征定义统一的描述规则,使用本文提出的比对算法BDTW,提升被测协议特征的推断精度.
本文编号:3390131
【文章来源】:计算机学报. 2020,43(04)北大核心EICSCD
【文章页数】:15 页
【部分图文】:
现有的模糊测试框架图
如图2所示,在知识层面,鉴于现有框架中人工或借助网络嗅探器等工具无法获得未知协议的相关知识,本文提出使用自动化的方法对协议流量进行逆向分析,自动学习出协议的结构和语义特征;在数据层面,考虑到单字段随机填充的测试数据生成方式限制了数据的命中率以及漏洞挖掘能力,本框架根据逆向得到的协议特征动态生成多维变异的测试数据,提高测试数据的命中率和漏洞挖掘能力.在执行层面,为了克服私密的网络设备无法附加监测代理程序的问题,框架采用主动探测的方式,对被测设备进行自动监测.本文使用一个有限状态机来描述整个框架,状态机如图3所示:
本文使用一个有限状态机来描述整个框架,状态机如图3所示:首先,模糊测试的执行需要以足够详细的协议知识为基础,即使用本文提出的基于协议特征库的逆向分析方法,基于协议流量自动学习出协议的特征,构建协议的模型.与传统方法相比,我们不仅进一步完善了协议特征的推断方法,而且创建了已知协议特征库,为协议特征定义统一的描述规则,使用本文提出的比对算法BDTW,提升被测协议特征的推断精度.
本文编号:3390131
本文链接:https://www.wllwen.com/guanlilunwen/ydhl/3390131.html