论文部分内容阅读
随着信息化的不断推进,计算机在我们的日常工作和生活中越来越重要,信息安全受到广泛关注,计算机操作系统的安全问题也日益引起人们的高度重视。实施多级安全策略模型是增强操作系统安全性的有效方法之一。然而,隐通道的存在仍然给多级安全系统带来了很大威胁。包括我国GB17859-1999标准在内的多个计算机系统安全评价标准都要求对高安全级别系统进行隐通道分析。其中,隐通道标识是隐通道分析工作中最为重要的一环。
目前己提出的隐通道标识方法主要应用于形式化和非形式化的系统顶级描述来搜索隐通道,然而系统顶级描述并没有真实体现系统实现的细节,所以总有一些隐通道不能被发现。理论上来讲,尽管有些隐通道标识方法也可以应用于系统源代码来进行隐通道搜索工作,但是由于系统源代码的复杂性,工作量相当繁重,并且缺乏完善的系统源代码级隐通道标识方案,鲜见实例分析。本文对系统源代码级的隐通道标识方案进行研究,给出Linux2.6.32内核中文件子系统中的隐通道标识实例。
本文的主要工作如下:
1、为找到合适的系统源代码级隐通道标识方案,对现有隐通道标识方法进行研究和比较,指出了隐蔽流树标识方法存在的主要问题。分析了目前常用隐通道标识方法各自的优缺点;深入研究了较为适合应用于系统源代码隐通道标识的隐蔽流树方法,剖析了该方法存在的主要问题,为后面进一步提出隐蔽流树改进办法奠定了基础。
2、为解决隐蔽流树方法存在的主要问题,提出改进的隐蔽流树构建方法。给出了语句信息流分析规则,根据规则可以获得系统源代码中函数与共享变量之间的信息流关系;定义了信息流图,并且给出了根据信息流分析结果生成信息流图的算法,该图结构用来描述函数与共享变量间的信息流向,从而为隐蔽流树的构建提供共享变量被函数引用、修改及返回的输入信息;优化了隐蔽流树的生成规则,并在此基础上给出了由信息流图生成隐蔽流树的算法,应用了优化规则的隐蔽流树生成算法可以有效缩减隐蔽流树的规模:结合一示例系统对比改进方法与原隐蔽流树方法的标识结果,说明了改进方法的有效性。
3、提出系统源代码级隐通道标识方案并以linux2.6.32内核部分源代码为实例进行隐通道标识。结合1、2两部分工作,总结了基于隐蔽流树的系统源代码级隐通道标识方案;在分析linux2.6.32内核文件子系统原理及其相关函数源代码的基础上,阐述了应用前面所提到的隐通道标识方案对Linux文件子系统进行隐通道标识的过程和结果,从而验证了方案的有效性;构造了Linux文件子系统中隐通道的应用场景,为Linux系统中的隐通道分析工作提供了依据。