System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及网络信息安全,涉及一种基于有限轨迹上线性时态逻辑(ltlf)引导的黑盒模糊测试方法和系统,用于检测安全协议实现中的异常逻辑行为和潜在的逻辑漏洞。
技术介绍
1、随着信息技术的迅猛发展,社会已经进入了万物互联的时代。基于密码学的安全协议在加密通信、身份认证和隐私保护方面发挥着重要作用,以确保提供安全可靠的通信服务。因此,安全协议本身的安全性对于维护网络安全而言就显得至关重要。其安全性包括两个方面,一方面是理论设计的安全性,另一方面是基于协议理论转化而来的实际可用的软硬件系统(也即本专利技术中提到的协议实现)的安全性。通过形式化分析等方法,可对安全协议的理论设计进行全面的分析和验证,以尽可能消除理论层面存在的安全问题。然而,安全协议往往具有极其复杂的逻辑结构,这意味着在将协议规范转化为实际的软硬件实现过程中可能会受到多种不利因素的影响,例如编程错误、对规范的误解以及为了性能优化而导致的安全妥协等,导致安全协议实现更易出现漏洞。
2、安全协议实现中的漏洞大致可以分为内存类漏洞和逻辑类漏洞两类。内存相关的漏洞通常会导致程序崩溃或内存损坏等显式行为,而逻辑类漏洞则是指迫使协议偏离基本安全性(机密性、完整性、可用性等)和隐私保证的问题,这些逻辑类漏洞通常不会产生外部可识别的影响,使得从安全协议实现中查找此类错误更加困难。
3、目前分析安全协议实现中逻辑漏洞的主流方法有模型学习,模型检测和模糊测试等技术。模型学习技术是指在模型学习算法的驱动下生成测试序列,通过与被测系统进行交互,观察输入输出行为以推断出能
4、模糊测试则是软硬件漏洞分析领域应用最为广泛的技术手段之一,传统的模糊测试技术主要关注内存类漏洞,对于安全协议逻辑漏洞挖掘的研究尚处于起步阶段。这方面常用的方法是差分测试,通过比较多个协议实现在相同输入条件下产生的响应是否存在差异来检测异常行为,该方法实现简单无需预定义安全规则,但效果也受到限制,例如会产生大量的假阳性案例。此外,有研究者将线性时态逻辑映射到具体的代码实现上,从而通过模糊测试实现对安全属性的验证;也有研究者基于dy模型引导模糊测试,通过提取dy声明验证dy属性以检测逻辑漏洞,但这些方法受限于设计思路而难以应用于黑盒场景。为此本申请提出一种在黑盒条件下检测安全协议实现中异常逻辑行为和潜在逻辑漏洞的技术方案。
技术实现思路
1、本专利技术针对上述问题,提出一种基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法和系统,为在黑盒场景下检测安全协议实现中潜在的逻辑漏洞提供一种行之有效的技术方案。
2、为了实现上述目的,本专利技术采用以下技术方案:
3、本专利技术一方面提出一种基于有限轨迹上线性时态逻辑(ltlf)引导的黑盒模糊测试方法,用于检测安全协议实现中可能存在的逻辑漏洞。具体来说本方法的整体设计思路如下:考虑到是黑盒测试场景,本方法通过检查与被测系统的消息交互路径来筛选其异常行为,考虑到现实中的协议消息交互是有限的行为,引入有限轨迹上线性时序逻辑(ltlf)来表达被测系统的安全属性,同时通过轻量级的运行时验证查找偏离安全属性的反例。
4、具体来说该方法包括以下关键步骤:
5、步骤1:基于ltlf公式表达预期安全属性。根据安全协议标准文档或专家经验定义安全协议实现应当满足的安全属性,并将其转化为对应的ltlf公式,公式中的原子命题被表示为抽象的协议输入输出消息。
6、步骤2:基于确定有限自动机(dfa)引导模糊测试进程。将ltlf公式的否定形式自动转化为等价的dfa,基于当前dfa的状态信息驱动模糊测试测试序列的生成。
7、步骤3:基于轻量级运行时验证查找偏离安全属性的反例。记录与被测系统的消息交互路径并据此更新dfa状态,根据dfa是否转移到接受状态来判断是否出现违背相应ltlf属性的行为,如果是则将该路径作为反例输出。
8、进一步地,所述基于确定有限自动机dfa引导模糊测试进程具体包括:
9、模糊测试引擎根据状态检查器中维护的状态信息选择一个抽象输入,并将其发送给映射器,映射器将抽象输入实例化为具体协议消息并执行细粒度的变异操作,随后通过网络接口与被测系统进行交互,映射器还负责将接受到的系统响应解析为抽象输出符号回传给模糊测试引擎,模糊测试引擎将每个抽象输入输出对反馈给状态检查器,状态检查器根据输入输出使每个dfa进行状态转移,并将感兴趣的输入输出序列保存下来作为种子用于之后的模糊测试过程。
10、进一步地,该方法还包括:
11、通过在指定时间内不断重复步骤2和步骤3,得出多个违反特定安全属性的反例,并在测试结束后,对反例进行重放,以复现测试对象异常行为并对其成因进行分析,从而确定其是否构成逻辑漏洞。
12、本专利技术另一方面提出一种基于有限轨迹上线性时态逻辑引导的黑盒模糊测试系统,该系统用于:
13、通过检查与被测系统的消息交互路径来筛选其异常行为,引入有限轨迹上线性时序逻辑来表达被测系统的安全属性,同时通过轻量级的运行时验证查找偏离安全属性的反例。
14、进一步地,该系统具体用于执行以下步骤:
15、步骤1:基于有限轨迹上线性时态逻辑ltlf公式表达预期安全属性:根据安全协议标准文档或专家经验定义安全协议实现应当满足的安全属性,并将其转化为对应的ltlf公式,ltlf公式中的原子命题被表示为抽象的协议输入输出消息;
16、步骤2:基于确定有限自动机dfa引导模糊测试进程:将ltlf公式的否定形式自动转化为等价的dfa,基于当前dfa的状态信息驱动模糊测试测试序列的生成;
17、步骤3:基于轻量级运行时验证查找偏离安全属性的反例:记录与被测系统的消息交互路径并据此更新dfa状态,根据dfa是否转移到接受状态来判断是否出现违背相应ltlf属性的行为,如果是则将该路径作为反例输出。
18、进一步地,所述基于确定有限自动机dfa引导模糊测试进程具体包括:
19、模糊测试引擎根据状态检查器中维护的状态信息选择一个抽象输入,并将其发送给映射器,映射器将抽象输入实例化为具体协议消息并执行细粒度的变异操作,随后通过网络接口与被测系统进行交互,映射器还负责将接受到的系统响应解析为抽象输出符号回传给模糊测试引擎,模糊测试引擎将每个抽象输入输出本文档来自技高网...
【技术保护点】
1.一种基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,包括:
2.根据权利要求1所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,该方法具体包括:
3.根据权利要求2所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,所述基于确定有限自动机DFA引导模糊测试进程具体包括:
4.根据权利要求2所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,该方法还包括:
5.一种基于有限轨迹上线性时态逻辑引导的黑盒模糊测试系统,其特征在于,该系统用于:
6.根据权利要求5所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试系统,其特征在于,该系统具体用于执行以下步骤:
7.根据权利要求6所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试系统,其特征在于,所述基于确定有限自动机DFA引导模糊测试进程具体包括:
8.根据权利要求6所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试系统,其特征在于,该系统还用于:
【技术特征摘要】
1.一种基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,包括:
2.根据权利要求1所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,该方法具体包括:
3.根据权利要求2所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,所述基于确定有限自动机dfa引导模糊测试进程具体包括:
4.根据权利要求2所述的基于有限轨迹上线性时态逻辑引导的黑盒模糊测试方法,其特征在于,该方法还包括:
5...
【专利技术属性】
技术研发人员:顾纯祥,赵栋梁,郑永辉,张协力,郭家兴,
申请(专利权)人:中国人民解放军战略支援部队信息工程大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。