论文部分内容阅读
随着信息技术的发展,软件安全成为信息技术的一个研究热点。作为软件运行基础,操作系统的安全性尤为重要。其中,隐蔽通道分析和处理是高等级安全操作系统开发中不可或缺的环节。隐蔽通道的标识是隐蔽通道分析的基础和难点。因此,本文重点研究了安全操作系统中隐蔽通道标识技术:
(1)研究、总结了隐蔽通道定义、分类以及分析过程中的各个环节。重点研究了目前已有的隐蔽通道标识方法,并按照标识处理过程对这些方法进行了进行分类,总结了各种方法的优劣。
(2)分析、总结了针对源代码的隐蔽通道标识的关键技术。分析了数据流分析、别名分析以及信息流安全性分析等技术,指出了各种技术面临的难点和挑战。
(3)提出了一种针对源代码的存储隐蔽通道标识方法。它利用自动分析方法,对待标识系统进行结构划分,为后面的分析过程提供可能的并行性以及分析次序。然后利用程序分析技术对源代码进行精确的别名分析和信息流分析,最后根据信息流分析结果生成候选的隐蔽通道以及通道的信息流流动路径。其中,结构分析、别名分析和信息流分析部分可以自动化地完成,提高了隐蔽通道标识的效率。结构分析可以发现潜在的处理并行性。采用精确的静态程序分析,使分析结果更精确。
(4)基于所提出的隐蔽通道标识方法,设计实现了一个系统原型。通过对gcc的研究和改造,分离出了gcc中生成的抽象语法树和控制流程图,提供了简洁的构造源代码分析器的接口,实现了可扩展的抽象语法树遍历框架。实现的系统原型包括结构分析、别名分析、信息流分析、候选隐蔽通道生成、信息流动路径生成和总控程序。实验结果表明:可以发现多种可能的并行性,并且得到了更精确的结果。