【技术实现步骤摘要】
一种开发中软件定义网络应用安全属性测试方法
本专利技术属于网络协议测试
,具体地说,尤其涉及一种开发中软件定义网络应用安全属性测试方法。
技术介绍
协议测试技术是保证网络通信协议能够正确实现,以及不同的网络设备之间实现正确互连的重要手段。一致性测试是基本的协议测试方法,其主要用于检测协议的实现是否与协议的规范相一致。安全属性测试是基于一致性测试的扩展测试方法,其主要用于检测协议的实现中是否存在安全漏洞。基于模型检测的测试是这一领域中的重要问题,其主要是基于模型检测来发现协议规范中存在的错误,生成用于测试协议实现的测试集(或测试脚本)。在大多数已提出的基于模型检测的测试技术中,其基本思想是根据协议规范建立形式化模型,使用模型检测工具查找模型中存在的错误,进而生成对应的测试集并针对协议实现进行测试。现有技术中基于模型检测的测试方法仅考虑已发布版本的协议实现,对于开发中的协议实现进行测试并没有涉及。而软件定义网络应用是一种新型的网络协议,大多数软件定义网络应用都采用开源项目的方式进行开发,开发周期透明 ...
【技术保护点】
1.一种开发中软件定义网络应用安全属性测试方法,包括:/n根据开发中软件定义网络应用的功能说明提取安全属性,构建与功能说明相适应的形式化模型以及与安全属性相适应的安全约束。/n利用模型检测工具探索所述形式化模型的状态空间,如果存在对所述安全约束的违反,则由模型检测工具生成并输出与所述违反对应的反例;如果不存在对所述安全约束的违反,则所述功能说明为最终版本的功能说明,所述安全属性为最终版本的安全属性。/n如果有所述反例输出,则对所述反例进行解析,根据反例中的进程列表与消息序列生成测试脚本。/n使用已有的所有所述测试脚本对开发中软件定义网络应用的原型实现进行测试,如测试结果中存 ...
【技术特征摘要】
1.一种开发中软件定义网络应用安全属性测试方法,包括:
根据开发中软件定义网络应用的功能说明提取安全属性,构建与功能说明相适应的形式化模型以及与安全属性相适应的安全约束。
利用模型检测工具探索所述形式化模型的状态空间,如果存在对所述安全约束的违反,则由模型检测工具生成并输出与所述违反对应的反例;如果不存在对所述安全约束的违反,则所述功能说明为最终版本的功能说明,所述安全属性为最终版本的安全属性。
如果有所述反例输出,则对所述反例进行解析,根据反例中的进程列表与消息序列生成测试脚本。
使用已有的所有所述测试脚本对开发中软件定义网络应用的原型实现进行测试,如测试结果中存在一个或多个通过的测试判决,则对应修改所述功能说明和所述原型实现,形成新版本的功能说明和新版本的原型实现;如测试结果中不存在通过的测试判决,则所述原型实现为最终版本的原型实现,测试终止。
重复前述步骤,直至产生所述最终版本的功能说明、所述最终版本的安全属性和所述最终版本的原型实现。
2.根据权利要求1所述的测试方法,其特征在于,所述开发中软件定义网络应用是正在开发过程中、尚未正式发布的、运行于软件定义网络控制器平台上的软件应用,包括功能说明和原型实现,所述功能说明是用于描述所述开发中软件定义网络应用所具备的功能的文档,所述原型实现是具备所述开发中软件定义网络应用功能的可执行程序。
3.根据权利要求1或2所述的测试方法,其特征在于,所述安全属性包括所述开发中软件定义网络应用应遵循的网络安全规则和具备的网络安全功能;所述形式化模型包括描述软件定义网络应用实体的进程,描述软件定义网络通信链路的信道,以及描述软件定义网络应用数据的数据结构;所述安全约束包含所述形式化模型遵循所述安全属性,必须满足的条件。
4.根据权利要求3所述的测试方法,其特征在于,所述对所述反例进行解析,根据反例中的进程列表与消息序列生成测试脚本,包括:
将所述进程列表中除与被测所述原型实现对应的进程以外的每个进程,分别初始化为一个测试端口;
遍历所述消息序列中的每个消息,以确定各测试端口发送输入消息和接收输出消息的内容及顺序,并组合为测试脚本;
在测试脚本中设置测试判决,如果测试过程中被测所述原型实现的每一个所述输入消息或所述输出消息的内容及顺序均与所述反例中的所述消息序列一致,则为通过,否则为不通过。
5.根据权利要求4所述的测试方法,其特征在于,所述使用已有的所有所述测试脚本对开发中软件定义网络应用的...
【专利技术属性】
技术研发人员:姚姜源,钟力,王隆娟,王敏锐,杨伟萍,
申请(专利权)人:海南大学,
类型:发明
国别省市:海南;46
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。