论文部分内容阅读
掌握网络协议的行为关乎网络空间安全的基础,是实施安全防护和攻防对抗的重要技术前提。随着网络应用的不断深入发展,网络协议的行为日益复杂多变,特别是各式各样的异常行为混迹于协议的正常行为之中,善恶难辨,使得传统的协议逆向工程和安全防护手段难以应对。协议行为分析是一种通过分析协议消息(报文)的数据特征及协议程序的指令序列特征来掌握协议行为规律的逆向分析技术。由于协议异常行为种类繁多,隐蔽性强且潜伏期长,往往不对目标主机或网络进行明显地破坏,只在短时间内秘密窃取重要信息,或完成攻击任务后立即恢复正常行为。目前对协议行为的认识和研究不足,对正常行为和异常行为之间的界限还难以划清,对隐匿、隐藏和隐形攻击等异常行为难以感知、识别和挖掘,协议的异常行为对网络空间安全造成的威胁更加严峻。因此,研究网络协议异常行为分析技术显得尤为重要而迫切。针对传统逆向分析技术的不足,本文围绕协议异常行为分析展开,对协议的隐匿、隐藏和隐形攻击等典型异常行为进行了分析,致力于研究新的协议异常行为感知和挖掘方法,评估协议的运行安全性,取得的主要研究成果如下:1.针对协议异常行为难以区分的问题,研究了协议的不同行为在指令级的特征,提出了基因指令的概念和指令标记问题。所有的协议程序指令,无论平台和指令集如何,大致都可划分为3类基因指令,即函数调用相关指令,可标记为F指令;数据处理相关指令,记为D指令;条件跳转相关指令,记为C指令。协议的不同行为表现在相应的指令序列上也各不相同,即所有的协议行为都可以表示成3类基因指令的排列组合。对标记后的行为指令序列实施指令聚类分析,即可将协议的异常行为指令序列暴露出来,从而自动挖掘出协议潜在的异常行为。该方法能以较高的准确度挖掘未知协议的异常行为,具有广泛的应用场景。2.针对协议的隐匿行为潜伏期长且难以暴露等问题,提出了动态污点分析和指令聚类分析相结合的方案,先通过动态污点分析捕获协议的公开行为指令序列,并推断出协议消息的大致结构;再利用自主设计的指令聚类算法感知并挖掘出潜在的隐匿行为指令序列,同时挖掘出能触发隐匿行为的条件;根据挖掘出的隐匿行为触发条件,结合已经推断出的协议消息的大致结构,利用自主设计的敏感消息生成算法自动生成能触发协议隐匿行为的新消息;最后,利用敏感消息触发隐匿行为的执行,观察、取证和分析隐匿行为的具体内容。该方法既能将隐匿行为快速区分出来,又能准确掌握隐匿行为指令序列,分析其具体功能,这就为有针对性的防御和反制准备了第一手充足的资料。3.基于以上两个研究工作,自主研发了协议行为自动分析平台HiddenDisc原型系统。HiddenDisc构建在TEMU虚拟平台之上,设计了用户自定义扩展接口,能够根据应用场景的需要,编程扩展功能。目前已经实现了动态污点分析和指令记录、指令序列聚类挖掘以及敏感消息自动生成三个功能。利用该工具对1297个协议样本进行了分析,实验结果和比较研究表明,无论在效率还是准确性方面,该分析平台对未知协议的隐匿、隐藏以及隐形攻击等异常行为的分析效果都比较理想。4.根据协议行为在指令级的特点,提出了行为距离的概念。根据协议行为指令序列中3类基因指令的分布、频率和数量特征计算出未知行为和已知行为之间的特征距离,也即未知行为相对于已知行为的偏离程度,据此判断异常行为及其特性。针对协议的运行安全难以衡量的问题,提出了协议运行安全性评估准则。本文研究发现协议包含的异常行为越多,异常行为偏离正常行为的距离越大,则潜在的安全威胁和危害越大,即使一次运行并不表现出来,但协议的运行安全已经受到严重威胁。本文将异常行为与公开行为之间的特征距离作为协议运行安全性的一个评估准则。异常行为与公开行为的距离越近,则认为协议运行越安全;相反,异常行为与公开行为之间偏离越大,则协议的运行越不安全。大量实例研究和比较研究表明,协议的异常行为在基因指令的分布上和公开行为有显著的区别,根据行为距离来评估协议的运行安全性是可信和可靠的。