[发明专利]基于执行轨迹的语义级协议格式推断方法有效
申请号: | 201310146876.2 | 申请日: | 2013-04-24 |
公开(公告)号: | CN103200203A | 公开(公告)日: | 2013-07-10 |
发明(设计)人: | 洪征;吴礼发;潘璠;周振吉;赖海光;郑成辉 | 申请(专利权)人: | 中国人民解放军理工大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L12/70 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 陈建和 |
地址: | 210007 *** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 执行 轨迹 语义 协议 格式 推断 方法 | ||
技术领域
本发明涉及网络技术,尤其涉及一种依据报文解析产生的二进制指令执行轨迹,推断协议报文格式的方法。
背景技术
在通信网络中,协议定义了在两个或多个通信实体之间交换的报文格式和次序,以及在报文传输或其它事件方面所采取的动作。协议被看作通信网络的核心要素,其质量直接关系到网络及系统的稳定性、可靠性、安全性以及互操作性。入侵检测、模糊测试、协议重用、协议脆弱性分析等大量网络安全技术都以协议的详细描述信息为基础。
目前,针对已知协议的分析和识别技术已较为成熟。但在计算机网络中还存在大量私有协议。很多软件厂商出于安全、经济利益等因素的考虑,没有公开软件的通信协议细节。此外,恶意软件也使用自己的私有协议实现感染节点间的相互通信。为此,研究人员越来越多地采用协议逆向手段获取私有协议的规范信息。
协议逆向是指在不依赖于协议描述的情况下,通过监控和分析协议实体的网络输入输出、系统行为和指令执行流程,提取协议文法、语法和语义的过程。协议逆向对于入侵检测、模糊测试、协议重用等安全应用具有重要意义。Samba、Rdesktop等针对非公开协议的逆向应用取得了较为理想的效果,但存在过度依赖人工分析以及过程冗长耗时等共性问题。
协议自动逆向可以显著减少人工分析,提高私有协议的分析效率。根据分析对象的不同,现有的协议自动逆向主要划分为基于网络流量的分析方法(Network Trace based Analysis)和基于执行轨迹的分析方法(Execution Trace based Analysis)两类。基于网络流量的分析方法以截获的网络数据流为分析对象,依据协议域的取值变化频率和特征推断协议规范。基于执行轨迹的分析方法以报文解析过程中的二进制指令执行轨迹为分析对象,依据协议实体对协议域的处理和使用方式,提取协议规范。
协议规范的提取包括协议格式提取和协议状态机推断两部分。协议格式提取主要关注的是通信报文中各协议域的组成结构;协议状态机推断关注的是协议状态的迁移情况。对于未知协议而言,协议格式是状态标注不可缺少的依据,因此协议格式提取是协议状态机推断的前提,也是目前协议逆向领域的主要研究内容。
基于执行轨迹的协议格式分析方法,其准确度不依赖于样本集的完备,而且获取的协议格式信息丰富细致,正日益成为协议格式逆向分析的主要方法。目前,该类分析方法主要存在两方面问题:(1)现有基于执行轨迹的协议逆向研究采取的通用方法是将二 进制代码转换为汇编代码,在汇编代码的基础上提取协议规范。汇编指令集中的指令语义灵活复杂,存在寄存器别名、指令副作用等诸多问题,逆向分析的难度很大。(2)现有协议格式逆向方法主要在语法级别分析协议实体的解析过程,将指令处理的连续字节序列识别为协议域。但由于内存拷贝、校验和计算等操作,在语法级别的协议解析过程中,指令可能以不同粒度对同一位置的输入数据重复访问。现有的判定方法会导致判定的协议域边界存在冗余和不一致。
发明内容
发明目的:本发明提供一种基于执行轨迹的语义级协议格式推断方法,着眼于协议实体对输入报文的语义级解析过程,高效准确的识别报文中的各个协议域,获取报文的协议格式,为入侵检测、模糊测试、协议重用、协议脆弱性分析等依赖于协议详细描述信息的网络安全应用提供技术支撑。本发明针对的两个主要问题是:现有逆向分析通常将二进制代码转换为汇编代码,汇编指令的分析难度大,难保证分析策略的完备;在语法级别进行逆向分析,协议格式判定的准确度不高。
技术方案:为达到上述目的,基于执行轨迹的语义级协议格式推断方法,对报文解析过程中的指令执行轨迹进行分析,从而推断报文由哪些协议域组成。采用此方法需要获得协议的实体程序,并在协议实体程序运行时捕获并存储程序在解析协议报文时的指令执行轨迹,以此作为协议格式推断的基础。
基于执行轨迹的语义级协议格式推断方法,包括以下步骤:
首先是中间语言转换,将协议实体程序解析通信报文的指令执行轨迹转换为中间语言的形式,降低后续分析的难度;
其次是细粒度动态污点分析,以中间语言形式的指令执行轨迹为基础,采用细粒度的动态污点分析技术,分析协议实体程序解析报文的过程,掌握作为输入的每一个报文字节随程序指令的执行在系统中的传播和影响;
最后是语义级的协议格式推断,基于语义级协议解析阶段的特征,将作为解析指令参数的连续污点数据映射为报文协议域,进而获取完整的协议报文格式。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国人民解放军理工大学,未经中国人民解放军理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310146876.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于可信计算的网络访问控制方法及系统
- 下一篇:通信装置和无线通信方法