基于配对函数的设备驱动漏洞检测的研究

来源 :北京交通大学 | 被引量 : 0次 | 上传用户:AQ0305
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
Linux系统中存在的安全隐患绝大部分都由内核引发,而设备驱动程序在内核中占据重要地位,因此设备驱动程序涉及到的安全漏洞问题极有可能造成整个操作系统的瘫痪。由于驱动程序的设计逻辑和工作流程与内核中的其他程序有本质上的区别,并且设备驱动大多数的工作场景不仅涉及到与内核的交互,还有与硬件环境的交互,这在一定程度上增加了对于驱动程序进行分析的难度。设备驱动程序主要工作在内核模式中,在这种特定的工作场景下,由设备驱动引发的漏洞问题极易影响操作系统的稳定性和安全性。当前在各类设备驱动漏洞中所占比例较高的当属资源操作类漏洞,针对这种情况,本文提出了一种基于配对函数调用场景的设备驱动漏洞检测方法。本文首先对当前国内外所关注的设备驱动安全漏洞的最新趋势以及相关的研究方法做了主要概述,将声卡、网卡、USB这些被广泛应用的驱动程序作为分析对象,并对内存资源相关安全漏洞的分析方法和检测技术展开深入研究。在基于配对函数的基础上建立了相应的漏洞检测原型。首先对驱动源码做系统化的预处理,提取出函数原型信息、驱动依赖接口函数等信息,以便于进一步展开分析工作。根据配对函数及调用场景的相关概念对特定的驱动程序做配对函数的自动提取与优化,结合执行路径构建出配对函数的调用场景,在各个调用场景中进行配对检查,检测内存资源申请与释放的层级性匹配。最后在自动生成的异常结果报告中检测并验证驱动程序中涉及到内存资源的操作是否存在安全漏洞。为验证该方法的有效性,本文针对漏洞检测原型进行相关的功能测试、性能测试。实验结果表明,本文提出的方法可达到很高的源码覆盖程度,与其他研究工作相比,该方法并不依赖于驱动程序编译过后的中间结果和硬件设备,因此具有较好的可移植性、可扩展性。根据实验中的各项功能指标和性能指标,最终的结果也反映出该方法准确性较高、负载低。本方法可以作为设备驱动辅助检测方案帮助驱动开发人员更高效的维护驱动程序,排查相关的安全漏洞。
其他文献
随着移动互联网的快速发展,互联网已经渗入到人们生活工作的方方面面,随之产生了大量的用户行为数据。用户行为数据中蕴含着用户的偏好,而用户偏好预示了用户的个人倾向以及
目的:本文通过从不同角度对二陈汤类方的方证规律进行研究探讨,以期在整理归纳前人应用二陈汤类方经验的基础上,更好地继承与发展其理论与应用,掌握理解其内在的涵义,从而指
目的:探讨一针法胰肠吻合、连续板层胰肠吻合及陈氏胰肠吻合在腹腔镜胰十二指肠切除术(LPD)中的临床应用效果。方法:回顾性分析2017年9月至2019年3月在我院实施LPD的135例患
随着计算机软件系统规模的不断扩大和复杂性的逐渐增加,验证软件系统正确性和可靠性的难度也越来越大,传统的验证技术已经无法满足需求。运行时验证是一种提高软件系统正确性和可靠性的轻量级验证技术,是传统验证技术的有效补充,它通过监控软件系统的实际运行状态来验证软件系统是否正确。然而,在运行时验证中,监控软件系统的运行状态通常会产生一些额外的运行时开销,这会对软件系统的性能造成一定的影响。因此,减少运行时验
[目 的]1)了解我国狂犬病的分布概况,深入分析我国国家监测点狂犬病病例的暴露史、暴露后处置(PEP,Post-exposure Prophylactic)史、潜伏期等特征,探索我国狂犬病病例发病的
脊髓损伤(Spinal cord injury,SCI)是由炎症、感染、外伤等引起的脊髓功能丧失,临床主要表现为运动感觉功能障碍、尿便障碍、神经痛等。脊髓损伤的发生率不高,却具有高致残率
深度学习通过多层特征提取方式,可以将原始复杂数据自动表征为高级抽象特征,该方法具有很强的建模能力,在模式识别、语音识别、自动驾驶、人机对弈、计算机视觉、自然语言处
随着信息爆炸式增长,计算机需要处理的信息越来越多,但是硅芯片的技术难以支撑日益增大的计算量,导致计算机领域遇到发展瓶颈。为了解决这一问题,科学家提出了生物计算机概念。随着生物计算机研究的逐渐深入,人们发现DNA的并行计算能力,纳米分子结构,超高的存储能力等特点在突破计算机发展瓶颈上有很大的优势。生物分子逻辑运算(如DNA计算或DNA编程诊断)也因此受到了广泛关注。目前生物分子逻辑运算模型大多通过荧
春秋战国时期,百家争鸣为君主寻求济世安民之道,他们各自为营,产生了儒、法、道等政治思想学说,围绕时政展开激烈的讨论。直到战国末期,政治、制度开始趋于统一,百家在争鸣的
在现实世界的管理与工程领域,存在着诸多多目标优化问题。一个多目标优化问题通常存在多个而不是单个最优解。而基于群体的进化算法(evolutionary algorithms,EAs)在一次运行中就可以同时搜索到这多个最优解。虽然大多数已存在的多目标进化算法(MOEAs)都是基于帕累托占优的算法,近些年提出的一些基于分解的多目标进化算法表现得越来越成功和流行。尤其是一种采用锥形分解方法的锥面积进化算法