This invention discloses an efficient security protocol message construction method. First, an algorithm is proposed to parse the function trace of the security related function in the implementation of the security protocol using the function hook technique, and the analysis of the function trace is completed. Then, the construction method of the protocol message is proposed, and the model is proposed based on the model. A message construction method based on security protocol is presented. Message construction includes the steps that need to be replaced by the location of the replacement protocol message cell, the reconfiguration of the hijacked security function, and the replacement of the protocol message cell that needs to be replaced in the original protocol message. The security protocol implementation of security protocol based on the assumption of the security protocol client implementation is consistent with the current application. This method is based on the hypothesis to construct the security protocol message, and it is also in line with the current research practice. Because the invention is to construct security protocol messages at code level, and the technical scheme is feasible and has higher accuracy and efficiency.
【技术实现步骤摘要】
一种安全协议消息构造方法
本专利技术属于信息安全
,涉及一种安全协议消息构造方法,具体涉及一种高效的安全协议消息构造方法。
技术介绍
安全协议作为网络空间安全的重要组成部分,是保障网络空间安全的关键和灵魂。所以,对运行于计算机网络、通信网络和分布式系统中的安全协议的安全性进行分析与验证,发现其逻辑错误与安全漏洞,对保障网络空间安全至关重要。从安全协议设计、安全协议抽象规范安全性的分析与验证、到安全协议实施(安全协议代码),人们主要集中在对安全协议抽象规范的安全性分析和验证方面,实用性较差。近几年来,人们对安全协议的最终表现形式:安全协议实施越来越感兴趣。因为无论任何安全协议,要想发挥作用,必须进行安全协议实施,故对其安全性进行分析对保障网络空间安全具有重要意义。安全协议实施本身不仅比其抽象规范复杂,而且在安全协议实施过程中,因程序员的专业素质层次不齐,无法保证不引入逻辑错误或者是代码错误,进而可能会造成安全协议实施与其抽象规范不一致。此外,很多实践表明,即使对形式化方法已证明安全的安全协议,在实施过程中,也可能因为人为的失误而引入了新的安全问题,变得不再安全。由此可见,仅仅在安全协议抽象模型层面对其进行安全性分析研究是远远不够的,必须对安全协议实施的安全性进行研究,以得到具有很强实用性的安全协议实施,这是保证信息网络空间安全的基础前提,更是网络空间安全的重要组成部分。安全协议实施目前主要依靠人为的理解和提取。通过程序分析理解实施代码,需要准确理解其语义特征和含义,由于先验模式的局限性,就导致了安全协议实施理解的误差。此外,有些私有协议在保证自身规范的 ...
【技术保护点】
1.一种安全协议消息构造方法,其特征在于:首先建立消息构造模型,然后基于函数迹进行协议消息构造;所述建立消息构造模型,首先设fun()函数是通过函数钩子方法监控的JavaScript函数,arg为fun()函数对应的参数,argm为修改之后的参数,Sg是fun()函数修改参数重新执行后得到的输出值,Tn为协议消息中的消息cell,M为原始协议消息,Mg为构造后得到的协议消息;则所述模型的工作流程包括以下子步骤:步骤A1:用argm替换掉fun(arg)中的参数arg得到参数修改后的函数fun(argm);步骤A2:重新执行fun(argm)得到新的函数输出Sg,Sg用来替代消息cell中对应位置的消息cell块Tn;步骤A3:在消息M中定位到需要被替换的消息cell,Tn(n=1,2,3...,n);然后得到新的消息Mg,该Mg消息就是得到的构造消息;所述基于函数迹进行协议消息构造,具体实现包括以下子步骤:步骤B1:对使用函数钩子方法得到的函数迹进行解析,得到函数名funname与函数参数arg的栈结构;步骤B2:修改相应函数参数得到新的函数输出,调用栈结构中的函数参数arg和函数名f ...
【技术特征摘要】
1.一种安全协议消息构造方法,其特征在于:首先建立消息构造模型,然后基于函数迹进行协议消息构造;所述建立消息构造模型,首先设fun()函数是通过函数钩子方法监控的JavaScript函数,arg为fun()函数对应的参数,argm为修改之后的参数,Sg是fun()函数修改参数重新执行后得到的输出值,Tn为协议消息中的消息cell,M为原始协议消息,Mg为构造后得到的协议消息;则所述模型的工作流程包括以下子步骤:步骤A1:用argm替换掉fun(arg)中的参数arg得到参数修改后的函数fun(argm);步骤A2:重新执行fun(argm)得到新的函数输出Sg,Sg用来替代消息cell中对应位置的消息cell块Tn;步骤A3:在消息M中定位到需要被替换的消息cell,Tn(n=1,2,3...,n);然后得到新的消息Mg,该Mg消息就是得到的构造消息;所述基于函数迹进行协议消息构造,具体实现包括以下子步骤:步骤B1:对使用函数钩子方法得到的函数迹进行解析,得到函数名funname与函数参数arg的栈结构;步骤B2:修改相应函数参数得到新的函数输出,调用栈结构中的函数参数arg和函数名funname,修改arg得到argm,然后重新执行funname对应的函数得到新的函数输出Sg;步骤B3:在拦截的客户端协议消息M中,定位需要被替换的消息cell-Tn,接着从M消息中删除Tn,然后把步骤B2中得到的Sg值嵌入到原Tn所在位置,便得到新的消息Mg,该消息即构造消息。2.根据权利要求1所述的安全协议消息构造方法,其特征在于,步骤B1中所述对使用函数钩子方法得到的函数迹进行解析,具体实现包括以下子步骤:步骤B1.1:将通过函数钩子方法获得的安全函数的执行迹保存在日志文件中;步骤B1.2:对该日志文件进行遍历,直到该文件的结束;把读取的函数迹按照函数名、函数输入及函数输出的形式表示成相的安全函数迹—APIi;步骤B1.3:若得到的函数函数迹不空,则将其存入到建立的栈结构中,直到把所有函数返回值不空的函数迹存入栈中。3.根据权利要求1所述的安全协议消息构造方法,其特征在于,步骤B3的具体实现包括以下子步骤:步骤B3.1:获得一条协议消息;在安全协议客户端输入特定的输入数据,客户端必将产生一条完整的协议消息;在其被发送过程中,使用中间人代理Proxy拦截该条消息,由此便获得一条完整的协议消息;步骤B3.2:对协议消息进行解析划分得到消息cell;在协议消息中,包含协议消息字符最多的一段称为协议消息段,记为集合P,消息块中最小的单元称为协议消息cell,记为集合T;协议消息段中由一个或多个协议消息cell组成的协议消息部分,且该部分所包含的协议消息字符或协议消息cell在数量上比协议消息段少,该部分消息称为协议消息块,记为集合B,且T∈B∈P,在获得协议消息后,对该消息进行cell解析划分操作,定位出协议消息中需要被替换的消息cell块Tn(n=1,2,…,n),即在协议消息中识别出消息中的结束符、分界符及连接符,以得到协议消息具体cell分块;步骤B3.3:被替换协议消息cell的定位与安全函数输出的重构;首先,定位需要被替换消息cell在协议消息中的位置,对该位置进行标记,并移除该位置的协议消息cell块;然后,从使用函数钩子方法得到的函数迹进行解析结果中调用函数及其参数,并修改其参数,重新运...
【专利技术属性】
技术研发人员:孟博,鲁金钿,王德军,朱容波,
申请(专利权)人:中南民族大学,
类型:发明
国别省市:湖北,42
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。